Top level functions inside module should be invoked using package$src class

This commit is contained in:
Natalia.Ukhorskaya
2013-03-04 18:59:27 +04:00
parent 4d51572482
commit 02c8989b2f
23 changed files with 273 additions and 32 deletions
@@ -0,0 +1,8 @@
fun Int.test1() {}
fun test2() {
1.test1()
}
// 2 INVOKESTATIC _DefaultPackage\$src\$1\$[\-]*[0-9]*\.test1 \(I\)V
// 1 INVOKESTATIC _DefaultPackage\$src\$1\$[\-]*[0-9]*\.test2 \(\)V
@@ -0,0 +1,6 @@
package a
fun test1() {}
// 2 INVOKESTATIC a/APackage\$src\$1\$[\-]*[0-9]*\.test1 \(\)V
// 1 INVOKESTATIC b/BPackage\$src\$2\$[\-]*[0-9]*\.test2 \(\)V
@@ -0,0 +1,7 @@
package b
import a.test1
fun test2() {
test1()
}
@@ -0,0 +1,4 @@
fun test1() {}
// 2 INVOKESTATIC _DefaultPackage\$src\$1\$[\-]*[0-9]*\.test1 \(\)V
// 1 INVOKESTATIC _DefaultPackage\$src\$2\$[\-]*[0-9]*\.test2 \(\)V
@@ -0,0 +1,3 @@
fun test2() {
test1()
}
@@ -0,0 +1,8 @@
fun test1() {}
fun test2() {
test1()
}
// 2 INVOKESTATIC _DefaultPackage\$src\$1\$[\-]*[0-9]*\.test1 \(\)V
// 1 INVOKESTATIC _DefaultPackage\$src\$1\$[\-]*[0-9]*\.test2 \(\)V
@@ -0,0 +1,6 @@
package a
val prop = 1
// 2 INVOKESTATIC a/APackage\$src\$1\$[\-]*[0-9]*\.getProp \(\)I
// 1 GETSTATIC a/APackage\$src\$1\$[\-]*[0-9]*\.prop \: I
@@ -0,0 +1,7 @@
package b
import a.prop
fun test() {
prop
}
@@ -0,0 +1,9 @@
package a
val prop: Int = 0
get() {
return $prop + 1
}
// 2 INVOKESTATIC a/APackage\$src\$1\$[\-]*[0-9]*\.getProp \(\)I
// 1 GETSTATIC a/APackage\$src\$1\$[\-]*[0-9]*\.prop \: I
@@ -0,0 +1,7 @@
package b
import a.prop
fun test() {
prop
}
@@ -0,0 +1,12 @@
package b
import a.test1
import a.prop
fun test2() {
test1()
prop
}
// 1 a/APackage\.test1 \(\)V
// 1 a/APackage\.getProp \(\)I