| class C<T : Any?> { |
| constructor() /* primary */ { |
| super/*Any*/() |
| /* <init>() */ |
| |
| } |
| |
| } |
| |
| object Delegate { |
| private constructor() /* primary */ { |
| super/*Any*/() |
| /* <init>() */ |
| |
| } |
| |
| operator fun getValue(thisRef: Any?, kProp: Any?): Int { |
| return 42 |
| } |
| |
| operator fun setValue(thisRef: Any?, kProp: Any?, newValue: Int) { |
| } |
| |
| } |
| |
| var <T : Any?> C<T>.genericDelegatedProperty: Int /* by */ |
| field = Delegate |
| get(): Int { |
| return #genericDelegatedProperty$delegate.getValue(thisRef = <this>, kProp = ::genericDelegatedProperty/*<T>()*/) |
| } |
| set(<set-?>: Int) { |
| return #genericDelegatedProperty$delegate.setValue(thisRef = <this>, kProp = ::genericDelegatedProperty/*<T>()*/, newValue = <set-?>) |
| } |