Basic detection for bytecode of inline functions in incremental compilation.

Basic rule is: bytecode of inline function changed -> recompile everything.
This commit is contained in:
Evgeny Gerashchenko
2014-07-01 15:59:48 +04:00
parent 6501066274
commit 6c8a9ba378
22 changed files with 269 additions and 5 deletions
@@ -0,0 +1,13 @@
Cleaning output files:
out/production/module/inline/Klass.class
End of files
Compiling files:
src/inline.kt
End of files
Cleaning output files:
out/production/module/usage/UsagePackage-usage-*.class
out/production/module/usage/UsagePackage.class
End of files
Compiling files:
src/usage.kt
End of files
@@ -0,0 +1,8 @@
package inline
class Klass {
inline fun f(body: () -> Unit) {
println("i'm inline function")
body()
}
}
@@ -0,0 +1,8 @@
package inline
class Klass {
inline fun f(body: () -> Unit) {
body()
println("i'm inline function")
}
}
@@ -0,0 +1,5 @@
package usage
fun main(args: Array<String>) {
inline.Klass().f { println("to be inlined") }
}