Properly handle the case of backing field access qualified with 'this' reference
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
== Bar ==
|
||||
abstract class Bar {
|
||||
abstract var bar : String
|
||||
fun foo() = "foo" + this.$bar
|
||||
}
|
||||
---------------------
|
||||
L0:
|
||||
<START>
|
||||
v(abstract var bar : String)
|
||||
L1:
|
||||
<END> NEXT:[<SINK>]
|
||||
error:
|
||||
<ERROR> PREV:[]
|
||||
sink:
|
||||
<SINK> PREV:[<ERROR>, <END>]
|
||||
=====================
|
||||
== foo ==
|
||||
fun foo() = "foo" + this.$bar
|
||||
---------------------
|
||||
L0:
|
||||
<START>
|
||||
mark("foo" + this.$bar)
|
||||
mark("foo")
|
||||
r("foo")
|
||||
mark(this.$bar)
|
||||
r(this)
|
||||
r($bar)
|
||||
call(+, plus)
|
||||
L1:
|
||||
<END> NEXT:[<SINK>]
|
||||
error:
|
||||
<ERROR> PREV:[]
|
||||
sink:
|
||||
<SINK> PREV:[<ERROR>, <END>]
|
||||
=====================
|
||||
@@ -0,0 +1,4 @@
|
||||
abstract class Bar {
|
||||
abstract var bar : String
|
||||
fun foo() = "foo" + this.$bar
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
abstract class Bar {
|
||||
abstract var bar : String
|
||||
fun foo() = "foo" + this.<!NO_BACKING_FIELD_ABSTRACT_PROPERTY!>$bar<!>
|
||||
}
|
||||
Reference in New Issue
Block a user