class NoC
class NoC1 : NoC
class WithC0() : NoC()
class WithC1() : NoC
class NoC2 : WithC1
class NoC3 : WithC1()
class WithC2() : WithC1
class NoPC {
this() {}
}
class WithPC0() {
this(a : Int) : this() {}
}
class WithPC1(a : Int) {
this() {}
this(b : Long) : this("") {}
this(s : String) : this(1) {}
this(b : Char) : this("", 2) {}
this(b : Byte) : this(""), this(1) {}
}
class Foo() : WithPC0, this() {
}
class WithCPI_Dup(x : Int) {
var x : Int
}
class WithCPI(x : Int) {
val a = 1
val b : Int = $a
val xy : Int = x
}
class NoCPI {
val a = 1
var ab = 1
get() = 1
set(v) {}
}