Parse annotations on lambda-argument

This commit is contained in:
Denis Zharkov
2015-05-04 15:43:36 +03:00
parent c5af4b42b4
commit b72a3de86e
14 changed files with 869 additions and 55 deletions
@@ -0,0 +1,16 @@
annotation class Ann(val x: Int = 1)
inline fun bar(block: () -> Int): Int = block()
fun foo() {
bar() [Ann(1)] @Ann(2) { 101 }
bar() @Ann(3) { 102 }
bar @Ann l1@ {
return@l1 103
}
bar @Ann(<!TYPE_MISMATCH!>""<!>) {
104
}
}
@@ -0,0 +1,12 @@
package
kotlin.inline() internal fun bar(/*0*/ block: () -> kotlin.Int): kotlin.Int
internal fun foo(): kotlin.Unit
internal final annotation class Ann : kotlin.Annotation {
public constructor Ann(/*0*/ x: kotlin.Int = ...)
internal final val x: kotlin.Int
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}