e89047d2cc
Such references require proper scope so that local symbols are bound.
Example:
```
fun <T> outer() {
abstract class ALocal<S : T> {
abstract fun bar()
}
class Local<S : T> : ALocal<S>() {
override fun bar() {}
}
}
```
Here local classes have type parameters with upper bounds depending on
function type parameters, and members overriding members in other local
classes.
13 lines
266 B
Kotlin
Vendored
13 lines
266 B
Kotlin
Vendored
fun outer() {
|
|
abstract class ALocal {
|
|
abstract fun afun()
|
|
abstract val aval: Int
|
|
abstract var avar: Int
|
|
}
|
|
|
|
class Local : ALocal() {
|
|
override fun afun() {}
|
|
override val aval = 1
|
|
override var avar = 2
|
|
}
|
|
} |