IR: fix offsets in irTemporary
The variable generated by IrStatementBuilder.irTemporary doesn't inherit startOffset and endOffset from the builder. In particular, as a result, temporary variables generated for elvis operator left operand have UNDEFINED_OFFSET. Additionally, ProvisionalFunctionExpressionLowering copies the offsets of a variable to lowered lambda in the variable initializer. With the problem described above, this causes invalid debug information in Kotlin/Native, see KT-49360. Fix irTemporary by using builder's offsets for the variable. ^KT-49360 Fixed
This commit is contained in:
committed by
Space
parent
fb859c0270
commit
2f5706597a
@@ -3180,6 +3180,10 @@ standaloneTest("lambda14") {
|
||||
flags = ['-tr']
|
||||
}
|
||||
|
||||
task lambda_kt49360(type: KonanLocalTest) {
|
||||
source = "codegen/lambda/lambda_kt49360.kt"
|
||||
}
|
||||
|
||||
task funInterface_implIsNotFunction(type: KonanLocalTest) {
|
||||
source = "codegen/funInterface/implIsNotFunction.kt"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user