Forbid callable references to members and extensions with empty LHS

This syntax is reserved to be likely used in the future as a shorthand for
"this::foo" where the resulting expression doesn't take the receiver as a
parameter but has "this" already bound to it
This commit is contained in:
Alexander Udalov
2015-10-02 21:56:15 +03:00
parent f310d4c10e
commit 661f4efc68
48 changed files with 114 additions and 378 deletions
@@ -1,3 +1,4 @@
import kotlin.reflect.*
import kotlin.reflect.jvm.*
class K<in T : String> {
@@ -6,10 +7,10 @@ class K<in T : String> {
set(value) {}
fun run(): String {
val p = ::t
val p = K::class.memberProperties.single() as KMutableProperty1<K<String>, String>
p.isAccessible = true
p.set(this, "" as T)
return p.get(this)
p.set(this as K<String>, "")
return p.get(this) as String
}
}