FIR checker: skip error named reference if receiver is unresolved
Currently, FIR reports errors caused by previous resolution failure. For example with unresolved `a` and `b` in code `a.b`, both `a` and `b` are highlighted. FE1.0 only highlights `a` since it's the root cause. This change applies this heuristics when reporting FirDiagnostics.
This commit is contained in:
committed by
Dmitriy Novozhilov
parent
d6907222cd
commit
fb14b03824
@@ -6,8 +6,8 @@ fun test(c : Char) {
|
||||
<!UNRESOLVED_REFERENCE!>test<!>(<!ILLEGAL_CONST_EXPRESSION!>'<!>
|
||||
<!UNRESOLVED_REFERENCE!>test<!>(0<!ILLEGAL_CONST_EXPRESSION!><!SYNTAX!><!>'<!>
|
||||
<!UNRESOLVED_REFERENCE!>test<!>('\n')
|
||||
<!UNRESOLVED_REFERENCE!>test<!>('\\')
|
||||
<!UNRESOLVED_REFERENCE!>test<!>(<!ILLEGAL_CONST_EXPRESSION!>''<!><!ILLEGAL_CONST_EXPRESSION!><!SYNTAX!><!>''<!>)
|
||||
test('\\')
|
||||
test(<!ILLEGAL_CONST_EXPRESSION!>''<!><!ILLEGAL_CONST_EXPRESSION!><!SYNTAX!><!>''<!>)
|
||||
test('\'')
|
||||
test('\"')
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// !WITH_NEW_INFERENCE
|
||||
fun test() {
|
||||
if (<!UNRESOLVED_REFERENCE!>x<!> <!UNRESOLVED_REFERENCE!>><!> 0) {
|
||||
if (<!UNRESOLVED_REFERENCE!>x<!> > 0) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// NI_EXPECTED_FILE
|
||||
|
||||
interface T {
|
||||
val a = <!PROPERTY_INITIALIZER_IN_INTERFACE!><!UNRESOLVED_REFERENCE!>Foo<!>.<!UNRESOLVED_REFERENCE!>bar<!>()<!>
|
||||
}
|
||||
val a = <!PROPERTY_INITIALIZER_IN_INTERFACE!><!UNRESOLVED_REFERENCE!>Foo<!>.bar()<!>
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ package foobar.a
|
||||
|
||||
// FILE: d.kt
|
||||
package foobar
|
||||
val x1 = <!UNRESOLVED_REFERENCE!>a<!>.<!UNRESOLVED_REFERENCE!>a<!>
|
||||
val x1 = <!UNRESOLVED_REFERENCE!>a<!>.a
|
||||
val x2 = foobar.a.a
|
||||
|
||||
val y1 = foobar.a.b
|
||||
|
||||
+2
-2
@@ -22,11 +22,11 @@ fun testUnresolved() {
|
||||
is String -> <!UNRESOLVED_REFERENCE!>a<!>
|
||||
}
|
||||
|
||||
<!UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE!>for (j in <!UNRESOLVED_REFERENCE!>collection<!>) {
|
||||
<!UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE!>for (j in <!UNRESOLVED_REFERENCE!>collection<!>) {
|
||||
var i: Int = j
|
||||
i += 1
|
||||
foo1(j)
|
||||
}<!>
|
||||
}
|
||||
|
||||
fun foo1(i: Int) {}
|
||||
fun foo1(i: Int) {}
|
||||
|
||||
+1
-1
@@ -34,7 +34,7 @@ annotation class Ann8(val p1: Array<String>,
|
||||
val p4: Array<Ann1>)
|
||||
|
||||
annotation class Ann9(
|
||||
val error: <!UNRESOLVED_REFERENCE!>Unresolved<!> = <!UNRESOLVED_REFERENCE!>Unresolved<!>.<!UNRESOLVED_REFERENCE!>VALUE<!>
|
||||
val error: <!UNRESOLVED_REFERENCE!>Unresolved<!> = <!UNRESOLVED_REFERENCE!>Unresolved<!>.VALUE
|
||||
)
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ abstract class My(@Field arg: Int, @Field val w: Int) {
|
||||
fun foo() {}
|
||||
|
||||
@Field
|
||||
val v: Int by <!UNRESOLVED_REFERENCE!>Delegates<!>.<!UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE!>lazy<!> { 42 }
|
||||
val v: Int by <!UNRESOLVED_REFERENCE!>Delegates<!>.lazy { 42 }
|
||||
}
|
||||
|
||||
enum class Your {
|
||||
|
||||
Vendored
+1
-1
@@ -1 +1 @@
|
||||
fun test() = ("").<!UNRESOLVED_REFERENCE!>hashCode<!>::<!UNRESOLVED_REFERENCE!>hashCode<!>
|
||||
fun test() = ("").<!UNRESOLVED_REFERENCE!>hashCode<!>::hashCode
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
class Foo {
|
||||
fun bar() {}
|
||||
fun f() = <!UNRESOLVED_REFERENCE!>Unresolved<!>()::<!UNRESOLVED_REFERENCE!>bar<!>
|
||||
fun f() = <!UNRESOLVED_REFERENCE!>Unresolved<!>()::bar
|
||||
}
|
||||
|
||||
val f: () -> Unit = <!UNRESOLVED_REFERENCE!>Unresolved<!>()::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val f: () -> Unit = <!UNRESOLVED_REFERENCE!>Unresolved<!>()::foo
|
||||
|
||||
+4
-4
@@ -10,15 +10,15 @@ fun test1() {
|
||||
|
||||
A::<!UNRESOLVED_REFERENCE!>bar<!>
|
||||
|
||||
<!UNRESOLVED_REFERENCE!>B<!>::<!UNRESOLVED_REFERENCE!>bar<!>
|
||||
<!UNRESOLVED_REFERENCE!>B<!>::bar
|
||||
}
|
||||
|
||||
fun test2() {
|
||||
fun foo(x: Any) {}
|
||||
fun foo() {}
|
||||
|
||||
<!UNRESOLVED_REFERENCE!>Unresolved<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
<!INAPPLICABLE_CANDIDATE!>foo<!>(<!UNRESOLVED_REFERENCE!>Unresolved<!>::<!UNRESOLVED_REFERENCE!>foo<!>)
|
||||
<!INAPPLICABLE_CANDIDATE!>foo<!>(<!UNRESOLVED_REFERENCE!>Unresolved<!>::<!UNRESOLVED_REFERENCE!>unresolved<!>)
|
||||
<!UNRESOLVED_REFERENCE!>Unresolved<!>::foo
|
||||
<!INAPPLICABLE_CANDIDATE!>foo<!>(<!UNRESOLVED_REFERENCE!>Unresolved<!>::foo)
|
||||
<!INAPPLICABLE_CANDIDATE!>foo<!>(<!UNRESOLVED_REFERENCE!>Unresolved<!>::unresolved)
|
||||
::<!UNRESOLVED_REFERENCE!>unresolved<!>
|
||||
}
|
||||
|
||||
+7
-7
@@ -4,22 +4,22 @@
|
||||
fun foo() {}
|
||||
|
||||
fun main() {
|
||||
val x1 = <!UNRESOLVED_REFERENCE!>logger<!>::<!UNRESOLVED_REFERENCE!>info<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x2 = <!UNRESOLVED_REFERENCE!>logger<!>?::<!UNRESOLVED_REFERENCE!>info<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x3 = <!UNRESOLVED_REFERENCE!>logger<!>?::<!UNRESOLVED_REFERENCE!>info<!>::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x4 = <!UNRESOLVED_REFERENCE!>logger<!>?::<!UNRESOLVED_REFERENCE!>info<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x5 = <!UNRESOLVED_REFERENCE!>logger<!>::<!UNRESOLVED_REFERENCE!>info<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x1 = <!UNRESOLVED_REFERENCE!>logger<!>::info?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x2 = <!UNRESOLVED_REFERENCE!>logger<!>?::info?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x3 = <!UNRESOLVED_REFERENCE!>logger<!>?::info::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x4 = <!UNRESOLVED_REFERENCE!>logger<!>?::info?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x5 = <!UNRESOLVED_REFERENCE!>logger<!>::info?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x6 = <!UNRESOLVED_REFERENCE!>logger<!>!!::<!UNRESOLVED_REFERENCE!>info<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x7 = <!UNRESOLVED_REFERENCE!>logger<!>::info!!::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x8 = <!UNRESOLVED_REFERENCE!>logger<!>?::info!!::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x9 = <!UNRESOLVED_REFERENCE!>logger<!>!!::<!UNRESOLVED_REFERENCE!>info<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x10 = <!UNRESOLVED_REFERENCE!>logger<!>::<!UNRESOLVED_REFERENCE!>info<!>?::print!!::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x10 = <!UNRESOLVED_REFERENCE!>logger<!>::info?::print!!::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x11 = <!UNRESOLVED_REFERENCE!>logger<!>!!::info!!::print!!::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x12 = <!UNRESOLVED_REFERENCE!>logger<!>?::info!!::print!!::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x13 = 42?::<!UNRESOLVED_REFERENCE!>unresolved<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
|
||||
val x14 = <!UNRESOLVED_REFERENCE!>logger<!><!SYNTAX!>?!!::info?::print?::print<!>
|
||||
val x15 = <!UNRESOLVED_REFERENCE!>logger<!>::<!UNRESOLVED_REFERENCE!>info<!><!SYNTAX!>?!!::print?::print<!>
|
||||
val x15 = <!UNRESOLVED_REFERENCE!>logger<!>::info<!SYNTAX!>?!!::print?::print<!>
|
||||
val x16 = <!UNRESOLVED_REFERENCE!>logger<!>!!?::<!UNRESOLVED_REFERENCE!>info<!>?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
val x17 = <!UNRESOLVED_REFERENCE!>logger<!>::info!!?::<!UNRESOLVED_REFERENCE!>print<!>?::<!UNRESOLVED_REFERENCE!>print<!>
|
||||
|
||||
|
||||
+1
-1
@@ -43,7 +43,7 @@ fun f() {
|
||||
A.Obj
|
||||
A.Companion.Obj2
|
||||
A.<!UNRESOLVED_REFERENCE!>Obj2<!>
|
||||
A.<!UNRESOLVED_REFERENCE!>Obj2<!>.<!UNRESOLVED_REFERENCE!>c<!>
|
||||
A.<!UNRESOLVED_REFERENCE!>Obj2<!>.c
|
||||
A.<!UNRESOLVED_REFERENCE!>Nested2<!>
|
||||
|
||||
O.O
|
||||
|
||||
+1
-1
@@ -38,7 +38,7 @@ fun f() {
|
||||
C.E2.B()
|
||||
|
||||
C.E2.<!UNRESOLVED_REFERENCE!>O<!>
|
||||
C.E3.<!UNRESOLVED_REFERENCE!>O<!>.<!UNRESOLVED_REFERENCE!>InO<!>
|
||||
C.E3.<!UNRESOLVED_REFERENCE!>O<!>.InO
|
||||
|
||||
C.O
|
||||
C.O.InO
|
||||
|
||||
+1
-1
@@ -38,7 +38,7 @@ fun f() {
|
||||
C.E2.B()
|
||||
|
||||
C.E2.<!UNRESOLVED_REFERENCE!>O<!>
|
||||
C.E3.<!UNRESOLVED_REFERENCE!>O<!>.<!UNRESOLVED_REFERENCE!>InO<!>
|
||||
C.E3.<!UNRESOLVED_REFERENCE!>O<!>.InO
|
||||
|
||||
C.O
|
||||
C.O.InO
|
||||
|
||||
Vendored
+6
-6
@@ -24,24 +24,24 @@ fun bar(aInstance: A, bInstance: B) {
|
||||
|
||||
foo(bInstance) {
|
||||
(a, b): A, (c, d) ->
|
||||
<!UNRESOLVED_REFERENCE!>a<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>b<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
<!UNRESOLVED_REFERENCE!>a<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>b<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
c checkType { _<Double>() }
|
||||
d checkType { _<Short>() }
|
||||
}
|
||||
|
||||
foo(bInstance) {
|
||||
(a, b), (c, d) ->
|
||||
<!UNRESOLVED_REFERENCE!>a<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>b<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
<!UNRESOLVED_REFERENCE!>a<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>b<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
c checkType { _<Double>() }
|
||||
d checkType { _<Short>() }
|
||||
}
|
||||
|
||||
foo<A, B>(bInstance) {
|
||||
(a, b), (c, d) ->
|
||||
<!UNRESOLVED_REFERENCE!>a<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>b<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
<!UNRESOLVED_REFERENCE!>a<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>b<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
c checkType { _<Double>() }
|
||||
d checkType { _<Short>() }
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -23,7 +23,7 @@ fun bar() {
|
||||
}
|
||||
|
||||
foo { (a, b), (c, b) ->
|
||||
<!UNRESOLVED_REFERENCE!>a<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>a<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
b checkType { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
c checkType { <!INAPPLICABLE_CANDIDATE!>_<!><B>() }
|
||||
}
|
||||
|
||||
+2
-2
@@ -36,8 +36,8 @@ fun bar() {
|
||||
}
|
||||
|
||||
foobar { (a, b), (c, d) ->
|
||||
<!UNRESOLVED_REFERENCE!>a<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>b<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
<!UNRESOLVED_REFERENCE!>a<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>b<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
c checkType { _<Double>() }
|
||||
d checkType { _<Short>() }
|
||||
}
|
||||
|
||||
Vendored
+9
-9
@@ -8,35 +8,35 @@ fun foo(block: (A) -> Unit) { }
|
||||
|
||||
fun bar() {
|
||||
foo { (_, b) ->
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.<!UNRESOLVED_REFERENCE!>hashCode<!>()
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.hashCode()
|
||||
b checkType { _<String>() }
|
||||
}
|
||||
|
||||
foo { (a, _) ->
|
||||
a checkType { _<Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.<!UNRESOLVED_REFERENCE!>hashCode<!>()
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.hashCode()
|
||||
}
|
||||
|
||||
foo { (_, _) ->
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.<!UNRESOLVED_REFERENCE!>hashCode<!>()
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.hashCode()
|
||||
}
|
||||
|
||||
foo { (_: Int, b: String) ->
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.<!UNRESOLVED_REFERENCE!>hashCode<!>()
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.hashCode()
|
||||
b checkType { _<String>() }
|
||||
}
|
||||
|
||||
foo { (a: Int, _: String) ->
|
||||
a checkType { _<Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.<!UNRESOLVED_REFERENCE!>hashCode<!>()
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.hashCode()
|
||||
}
|
||||
|
||||
foo { (_: Int, _: String) ->
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.<!UNRESOLVED_REFERENCE!>hashCode<!>()
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.hashCode()
|
||||
}
|
||||
|
||||
foo { (_, _): A ->
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.<!UNRESOLVED_REFERENCE!>hashCode<!>()
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.hashCode()
|
||||
}
|
||||
|
||||
foo { (`_`, _) ->
|
||||
@@ -52,12 +52,12 @@ fun bar() {
|
||||
}
|
||||
|
||||
foo { (_: String, b) ->
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.<!UNRESOLVED_REFERENCE!>hashCode<!>()
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.hashCode()
|
||||
b checkType { _<String>() }
|
||||
}
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>foo<!> { (_, b): B ->
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.<!UNRESOLVED_REFERENCE!>hashCode<!>()
|
||||
<!UNRESOLVED_REFERENCE!>_<!>.hashCode()
|
||||
b checkType { _<Short>() }
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+2
-2
@@ -32,12 +32,12 @@ fun bar() {
|
||||
}
|
||||
|
||||
foobar { (a, b), (c, d) ->
|
||||
<!UNRESOLVED_REFERENCE!>a<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
<!UNRESOLVED_REFERENCE!>a<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
d checkType { _<Short>() }
|
||||
}
|
||||
|
||||
foobar { (a, b), (c, d) ->
|
||||
<!UNRESOLVED_REFERENCE!>b<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
<!UNRESOLVED_REFERENCE!>b<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
c checkType { _<Double>() }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,6 +71,6 @@ fun test(b: B) {
|
||||
val b_3 = B()
|
||||
b_3.m2()
|
||||
|
||||
val b_4 = <!UNRESOLVED_REFERENCE!>a<!>.<!UNRESOLVED_REFERENCE!>B<!>()
|
||||
val b_4 = <!UNRESOLVED_REFERENCE!>a<!>.B()
|
||||
b_4.<!UNRESOLVED_REFERENCE!>m2<!>()
|
||||
}
|
||||
|
||||
+4
-4
@@ -3,18 +3,18 @@
|
||||
fun test1() {
|
||||
if (<!UNRESOLVED_REFERENCE!>rr<!>) {
|
||||
if (<!UNRESOLVED_REFERENCE!>l<!>) {
|
||||
<!UNRESOLVED_REFERENCE!>a<!>.<!UNRESOLVED_REFERENCE!>q<!>()
|
||||
<!UNRESOLVED_REFERENCE!>a<!>.q()
|
||||
}
|
||||
else {
|
||||
<!UNRESOLVED_REFERENCE!>a<!>.<!UNRESOLVED_REFERENCE!>w<!>()
|
||||
<!UNRESOLVED_REFERENCE!>a<!>.w()
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (<!UNRESOLVED_REFERENCE!>n<!>) {
|
||||
<!UNRESOLVED_REFERENCE!>a<!>.<!UNRESOLVED_REFERENCE!>t<!>()
|
||||
<!UNRESOLVED_REFERENCE!>a<!>.t()
|
||||
}
|
||||
else {
|
||||
<!UNRESOLVED_REFERENCE!>a<!>.<!UNRESOLVED_REFERENCE!>u<!>()
|
||||
<!UNRESOLVED_REFERENCE!>a<!>.u()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -4,5 +4,5 @@ package bar
|
||||
fun main() {
|
||||
class Some
|
||||
|
||||
Some[<!SYNTAX!><!>] <!UNRESOLVED_REFERENCE!>names<!> <!SYNTAX!>=<!> <!NO_GET_METHOD!>["ads"]<!>
|
||||
Some[<!SYNTAX!><!>] names <!SYNTAX!>=<!> <!NO_GET_METHOD!>["ads"]<!>
|
||||
}
|
||||
|
||||
-50
@@ -1,50 +0,0 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_VARIABLE
|
||||
|
||||
fun println(x: String) {
|
||||
}
|
||||
|
||||
fun run(block: () -> Unit) {}
|
||||
|
||||
val propertyNameOnTheNextLine = 1
|
||||
|
||||
fun foo() {
|
||||
val<!SYNTAX!><!>
|
||||
println("abc")
|
||||
|
||||
val<!SYNTAX!><!>
|
||||
run {
|
||||
println("abc")
|
||||
}
|
||||
|
||||
val<!SYNTAX!><!>
|
||||
if (1 == 1) {
|
||||
|
||||
}
|
||||
|
||||
val<!SYNTAX!><!>
|
||||
(1 + 2)
|
||||
|
||||
// `propertyNameOnTheNextLine` parsed as simple name expression
|
||||
val<!SYNTAX!><!>
|
||||
propertyNameOnTheNextLine
|
||||
|
||||
val<!SYNTAX!><!>
|
||||
// comment
|
||||
propertyNameOnTheNextLine
|
||||
|
||||
val<!SYNTAX!><!> /* comment */
|
||||
propertyNameOnTheNextLine
|
||||
|
||||
// Correct properties
|
||||
val
|
||||
property1 = 1
|
||||
|
||||
val
|
||||
propertyWithBy by <!UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE!>lazy<!> { 1 }
|
||||
|
||||
val
|
||||
propertyWithType: Int
|
||||
|
||||
val
|
||||
(a, b) = <!COMPONENT_FUNCTION_MISSING, COMPONENT_FUNCTION_MISSING!>1<!>
|
||||
}
|
||||
compiler/testData/diagnostics/tests/incompleteCode/diagnosticWithSyntaxError/valWithNoNameInBlock.kt
Vendored
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_VARIABLE
|
||||
|
||||
fun println(x: String) {
|
||||
|
||||
Vendored
+1
-1
@@ -1,7 +1,7 @@
|
||||
package b
|
||||
|
||||
fun foo() {
|
||||
<!UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE!>for (i in <!UNRESOLVED_REFERENCE!>collection<!>) {
|
||||
<!UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE!>for (i in <!UNRESOLVED_REFERENCE!>collection<!>) {
|
||||
{
|
||||
break
|
||||
}
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
fun foo(a: Int) {
|
||||
<!UNRESOLVED_REFERENCE!>!<!><!UNRESOLVED_REFERENCE!>bbb<!>
|
||||
!<!UNRESOLVED_REFERENCE!>bbb<!>
|
||||
<!UNRESOLVED_REFERENCE!>bbb<!> + a
|
||||
}
|
||||
}
|
||||
|
||||
@@ -89,17 +89,17 @@ fun f13(a : A?) {
|
||||
}
|
||||
else {
|
||||
a?.foo()
|
||||
<!UNRESOLVED_REFERENCE!>c<!>.<!UNRESOLVED_REFERENCE!>bar<!>()
|
||||
<!UNRESOLVED_REFERENCE!>c<!>.bar()
|
||||
}
|
||||
|
||||
a?.foo()
|
||||
if (!(a is B)) {
|
||||
a?.foo()
|
||||
<!UNRESOLVED_REFERENCE!>c<!>.<!UNRESOLVED_REFERENCE!>bar<!>()
|
||||
<!UNRESOLVED_REFERENCE!>c<!>.bar()
|
||||
}
|
||||
else {
|
||||
a.foo()
|
||||
<!UNRESOLVED_REFERENCE!>c<!>.<!UNRESOLVED_REFERENCE!>bar<!>()
|
||||
<!UNRESOLVED_REFERENCE!>c<!>.bar()
|
||||
}
|
||||
|
||||
a?.foo()
|
||||
@@ -109,7 +109,7 @@ fun f13(a : A?) {
|
||||
}
|
||||
else {
|
||||
a?.foo()
|
||||
<!UNRESOLVED_REFERENCE!>c<!>.<!UNRESOLVED_REFERENCE!>bar<!>()
|
||||
<!UNRESOLVED_REFERENCE!>c<!>.bar()
|
||||
}
|
||||
|
||||
if (!(a is B) || !(a is C)) {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
inline fun foo() {
|
||||
<!UNRESOLVED_REFERENCE!>unresolved<!>().<!UNRESOLVED_REFERENCE!>another<!>
|
||||
<!UNRESOLVED_REFERENCE!>unresolved<!>().<!UNRESOLVED_REFERENCE!>another<!>()
|
||||
<!UNRESOLVED_REFERENCE!>unresolved<!>().another
|
||||
<!UNRESOLVED_REFERENCE!>unresolved<!>().another()
|
||||
}
|
||||
|
||||
fun main() {
|
||||
|
||||
+9
-9
@@ -27,27 +27,27 @@ fun test(with: WithClassObject, without: WithoutClassObject, obj: Obj) {
|
||||
with.<!UNRESOLVED_REFERENCE!>Nested<!>()
|
||||
with.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>
|
||||
with.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>()
|
||||
with.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
with.<!UNRESOLVED_REFERENCE!>NestedEnum<!>.<!UNRESOLVED_REFERENCE!>A<!>
|
||||
with.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>.foo()
|
||||
with.<!UNRESOLVED_REFERENCE!>NestedEnum<!>.A
|
||||
with.<!UNRESOLVED_REFERENCE!>NestedObj<!>
|
||||
with.<!UNRESOLVED_REFERENCE!>NestedObj<!>()
|
||||
with.<!UNRESOLVED_REFERENCE!>NestedObj<!>.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
with.<!UNRESOLVED_REFERENCE!>NestedObj<!>.foo()
|
||||
|
||||
without.<!UNRESOLVED_REFERENCE!>Nested<!>()
|
||||
without.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>
|
||||
without.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>()
|
||||
without.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
without.<!UNRESOLVED_REFERENCE!>NestedEnum<!>.<!UNRESOLVED_REFERENCE!>A<!>
|
||||
without.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>.foo()
|
||||
without.<!UNRESOLVED_REFERENCE!>NestedEnum<!>.A
|
||||
without.<!UNRESOLVED_REFERENCE!>NestedObj<!>
|
||||
without.<!UNRESOLVED_REFERENCE!>NestedObj<!>()
|
||||
without.<!UNRESOLVED_REFERENCE!>NestedObj<!>.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
without.<!UNRESOLVED_REFERENCE!>NestedObj<!>.foo()
|
||||
|
||||
obj.<!UNRESOLVED_REFERENCE!>Nested<!>()
|
||||
obj.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>
|
||||
obj.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>()
|
||||
obj.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
obj.<!UNRESOLVED_REFERENCE!>NestedEnum<!>.<!UNRESOLVED_REFERENCE!>A<!>
|
||||
obj.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>.foo()
|
||||
obj.<!UNRESOLVED_REFERENCE!>NestedEnum<!>.A
|
||||
obj.<!UNRESOLVED_REFERENCE!>NestedObj<!>
|
||||
obj.<!UNRESOLVED_REFERENCE!>NestedObj<!>()
|
||||
obj.<!UNRESOLVED_REFERENCE!>NestedObj<!>.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
obj.<!UNRESOLVED_REFERENCE!>NestedObj<!>.foo()
|
||||
}
|
||||
|
||||
@@ -22,5 +22,5 @@ fun main(x: A) {
|
||||
x.b().<!UNRESOLVED_REFERENCE!>bar<!>()
|
||||
x.f().<!UNRESOLVED_REFERENCE!>foobaz<!>()
|
||||
|
||||
<!UNRESOLVED_REFERENCE!>D<!>().<!UNRESOLVED_REFERENCE!>baz<!>()
|
||||
<!UNRESOLVED_REFERENCE!>D<!>().baz()
|
||||
}
|
||||
|
||||
+2
-2
@@ -22,6 +22,6 @@ fun test() {
|
||||
bar(1, z = "", y = 2)
|
||||
<!INAPPLICABLE_CANDIDATE!>bar<!>(z = "", 1)
|
||||
<!INAPPLICABLE_CANDIDATE!>bar<!>(1, zz = "",
|
||||
<!UNRESOLVED_REFERENCE!>zz<!>.<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
<!UNRESOLVED_REFERENCE!>zz<!>.foo
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,4 +22,4 @@ fun test() {
|
||||
B.foo()
|
||||
}
|
||||
|
||||
val bb = <!UNRESOLVED_REFERENCE!>B<!>.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
val bb = <!UNRESOLVED_REFERENCE!>B<!>.foo()
|
||||
|
||||
@@ -26,4 +26,4 @@ val a = A
|
||||
val b = B
|
||||
val c = A.B
|
||||
val d = A.B.A
|
||||
val e = B.<!UNRESOLVED_REFERENCE!>A<!>.<!UNRESOLVED_REFERENCE!>B<!>
|
||||
val e = B.<!UNRESOLVED_REFERENCE!>A<!>.B
|
||||
|
||||
+14
-14
@@ -115,28 +115,28 @@ class C : O.B() {
|
||||
val n = FromCompanionC::foo
|
||||
|
||||
// INVISIBLE: direct superclasses themselves.
|
||||
val a = <!UNRESOLVED_REFERENCE!>A<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val b = <!UNRESOLVED_REFERENCE!>A<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val a = <!UNRESOLVED_REFERENCE!>A<!>::foo
|
||||
val b = <!UNRESOLVED_REFERENCE!>A<!>::foo
|
||||
|
||||
// DEPRECATED: Classifiers from companions of direct superclasses
|
||||
val e = <!UNRESOLVED_REFERENCE!>FromCompanionA<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val f = <!UNRESOLVED_REFERENCE!>FromCompanionB<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val e = <!UNRESOLVED_REFERENCE!>FromCompanionA<!>::foo
|
||||
val f = <!UNRESOLVED_REFERENCE!>FromCompanionB<!>::foo
|
||||
|
||||
// INVISIBLE: "cousin" supertypes themselves
|
||||
val g = <!UNRESOLVED_REFERENCE!>Alpha<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val h = <!UNRESOLVED_REFERENCE!>Beta<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val i = <!UNRESOLVED_REFERENCE!>Gamma<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val g = <!UNRESOLVED_REFERENCE!>Alpha<!>::foo
|
||||
val h = <!UNRESOLVED_REFERENCE!>Beta<!>::foo
|
||||
val i = <!UNRESOLVED_REFERENCE!>Gamma<!>::foo
|
||||
|
||||
// DEPRECATED: classifiers from "cousin" superclasses
|
||||
val k = <!UNRESOLVED_REFERENCE!>FromAlpha<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val l = <!UNRESOLVED_REFERENCE!>FromBeta<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val m = <!UNRESOLVED_REFERENCE!>FromGamma<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val k = <!UNRESOLVED_REFERENCE!>FromAlpha<!>::foo
|
||||
val l = <!UNRESOLVED_REFERENCE!>FromBeta<!>::foo
|
||||
val m = <!UNRESOLVED_REFERENCE!>FromGamma<!>::foo
|
||||
|
||||
// INVISIBLE: We don't see classifiers from companions of "cousin" superclasses
|
||||
val o = <!UNRESOLVED_REFERENCE!>FromCompanionAlpha<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val p = <!UNRESOLVED_REFERENCE!>FromCompanionBeta<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val q = <!UNRESOLVED_REFERENCE!>FromCompanionGamma<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val o = <!UNRESOLVED_REFERENCE!>FromCompanionAlpha<!>::foo
|
||||
val p = <!UNRESOLVED_REFERENCE!>FromCompanionBeta<!>::foo
|
||||
val q = <!UNRESOLVED_REFERENCE!>FromCompanionGamma<!>::foo
|
||||
|
||||
// DEPRECATED: Classifiers from supertypes of our own companion
|
||||
val r = <!UNRESOLVED_REFERENCE!>FromDelta<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val r = <!UNRESOLVED_REFERENCE!>FromDelta<!>::foo
|
||||
}
|
||||
|
||||
+14
-14
@@ -115,28 +115,28 @@ class C : O.B() {
|
||||
val n = FromCompanionC::foo
|
||||
|
||||
// INVISIBLE: direct superclasses themselves.
|
||||
val a = <!UNRESOLVED_REFERENCE!>A<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val b = <!UNRESOLVED_REFERENCE!>A<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val a = <!UNRESOLVED_REFERENCE!>A<!>::foo
|
||||
val b = <!UNRESOLVED_REFERENCE!>A<!>::foo
|
||||
|
||||
// DEPRECATED: Classifiers from companions of direct superclasses
|
||||
val e = <!UNRESOLVED_REFERENCE!>FromCompanionA<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val f = <!UNRESOLVED_REFERENCE!>FromCompanionB<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val e = <!UNRESOLVED_REFERENCE!>FromCompanionA<!>::foo
|
||||
val f = <!UNRESOLVED_REFERENCE!>FromCompanionB<!>::foo
|
||||
|
||||
// INVISIBLE: "cousin" supertypes themselves
|
||||
val g = <!UNRESOLVED_REFERENCE!>Alpha<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val h = <!UNRESOLVED_REFERENCE!>Beta<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val i = <!UNRESOLVED_REFERENCE!>Gamma<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val g = <!UNRESOLVED_REFERENCE!>Alpha<!>::foo
|
||||
val h = <!UNRESOLVED_REFERENCE!>Beta<!>::foo
|
||||
val i = <!UNRESOLVED_REFERENCE!>Gamma<!>::foo
|
||||
|
||||
// DEPRECATED: classifiers from "cousin" superclasses
|
||||
val k = <!UNRESOLVED_REFERENCE!>FromAlpha<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val l = <!UNRESOLVED_REFERENCE!>FromBeta<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val m = <!UNRESOLVED_REFERENCE!>FromGamma<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val k = <!UNRESOLVED_REFERENCE!>FromAlpha<!>::foo
|
||||
val l = <!UNRESOLVED_REFERENCE!>FromBeta<!>::foo
|
||||
val m = <!UNRESOLVED_REFERENCE!>FromGamma<!>::foo
|
||||
|
||||
// INVISIBLE: We don't see classifiers from companions of "cousin" superclasses
|
||||
val o = <!UNRESOLVED_REFERENCE!>FromCompanionAlpha<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val p = <!UNRESOLVED_REFERENCE!>FromCompanionBeta<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val q = <!UNRESOLVED_REFERENCE!>FromCompanionGamma<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val o = <!UNRESOLVED_REFERENCE!>FromCompanionAlpha<!>::foo
|
||||
val p = <!UNRESOLVED_REFERENCE!>FromCompanionBeta<!>::foo
|
||||
val q = <!UNRESOLVED_REFERENCE!>FromCompanionGamma<!>::foo
|
||||
|
||||
// DEPRECATED: Classifiers from supertypes of our own companion
|
||||
val r = <!UNRESOLVED_REFERENCE!>FromDelta<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val r = <!UNRESOLVED_REFERENCE!>FromDelta<!>::foo
|
||||
}
|
||||
|
||||
Vendored
+4
-4
@@ -12,7 +12,7 @@ object A {
|
||||
}
|
||||
|
||||
class Derived : Base() {
|
||||
val a = <!UNRESOLVED_REFERENCE!>FromBaseCompanion<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val a = <!UNRESOLVED_REFERENCE!>FromBaseCompanion<!>::foo
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ object B {
|
||||
}
|
||||
|
||||
class Derived : Base() {
|
||||
val a = <!UNRESOLVED_REFERENCE!>FromBaseCompanion<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val a = <!UNRESOLVED_REFERENCE!>FromBaseCompanion<!>::foo
|
||||
}
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ object C {
|
||||
}
|
||||
|
||||
class Derived : Base() {
|
||||
val a = <!UNRESOLVED_REFERENCE!>FromBaseCompanion<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val a = <!UNRESOLVED_REFERENCE!>FromBaseCompanion<!>::foo
|
||||
}
|
||||
}
|
||||
|
||||
@@ -64,6 +64,6 @@ object D {
|
||||
}
|
||||
|
||||
class Derived : Base() {
|
||||
val a = <!UNRESOLVED_REFERENCE!>FromBaseCompanion<!>::<!UNRESOLVED_REFERENCE!>foo<!>
|
||||
val a = <!UNRESOLVED_REFERENCE!>FromBaseCompanion<!>::foo
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -61,7 +61,7 @@ fun test() {
|
||||
takeNotNull(J.getNAny() ?: J())
|
||||
|
||||
val x = <!UNRESOLVED_REFERENCE!>unresolved<!> ?: null
|
||||
val y = <!UNRESOLVED_REFERENCE!>unresolved<!>.<!UNRESOLVED_REFERENCE!>foo<!> ?: return
|
||||
val y = <!UNRESOLVED_REFERENCE!>unresolved<!>.foo ?: return
|
||||
}
|
||||
|
||||
fun takeNotNull(s: J) {}
|
||||
|
||||
+2
-2
@@ -19,5 +19,5 @@ class C(p: Any, val v: Any) {
|
||||
|
||||
var test5
|
||||
get() { return <!UNRESOLVED_REFERENCE!>p<!> }
|
||||
set(nv) { <!UNRESOLVED_REFERENCE!>p<!>.<!INAPPLICABLE_CANDIDATE!>let<!> {} }
|
||||
}
|
||||
set(nv) { <!UNRESOLVED_REFERENCE!>p<!>.let {} }
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -1,2 +1,2 @@
|
||||
// !WITH_NEW_INFERENCE
|
||||
val unwrapped = <!UNRESOLVED_REFERENCE!>some<!><!UNRESOLVED_REFERENCE!><<!><!UNRESOLVED_REFERENCE!><!UNRESOLVED_REFERENCE!><!UNRESOLVED_REFERENCE!>sdf<!>()<!>()<!><out Any>::<!UNRESOLVED_REFERENCE!>unwrap<!>
|
||||
val unwrapped = <!UNRESOLVED_REFERENCE!>some<!><<!UNRESOLVED_REFERENCE!>sdf<!>()()<out Any>::unwrap
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// !WITH_NEW_INFERENCE
|
||||
fun import() {
|
||||
<!UNRESOLVED_REFERENCE!>import<!> <!UNRESOLVED_REFERENCE!>a<!><!SYNTAX!>.<!><!UNRESOLVED_REFERENCE!>*<!><!SYNTAX!><!>
|
||||
<!UNRESOLVED_REFERENCE!>import<!> a<!SYNTAX!>.<!><!UNRESOLVED_REFERENCE!>*<!><!SYNTAX!><!>
|
||||
}
|
||||
|
||||
fun composite() {
|
||||
@@ -8,9 +8,9 @@ fun composite() {
|
||||
}
|
||||
|
||||
fun html() {
|
||||
<!SYNTAX!><<!><!UNRESOLVED_REFERENCE!>html<!><!UNRESOLVED_REFERENCE!>><!><!SYNTAX!><<!><!UNRESOLVED_REFERENCE!>/<!><!UNRESOLVED_REFERENCE!>html<!>><!SYNTAX!><!>
|
||||
<!SYNTAX!><<!><!UNRESOLVED_REFERENCE!>html<!>><!SYNTAX!><<!><!UNRESOLVED_REFERENCE!>/<!><!UNRESOLVED_REFERENCE!>html<!>><!SYNTAX!><!>
|
||||
}
|
||||
|
||||
fun html1() {
|
||||
<!SYNTAX!><<!><!UNRESOLVED_REFERENCE!>html<!><!UNRESOLVED_REFERENCE!>><!><!SYNTAX!><<!><!UNRESOLVED_REFERENCE!>/<!><!UNRESOLVED_REFERENCE!>html<!>><!UNRESOLVED_REFERENCE!>html<!>
|
||||
<!SYNTAX!><<!><!UNRESOLVED_REFERENCE!>html<!>><!SYNTAX!><<!><!UNRESOLVED_REFERENCE!>/<!><!UNRESOLVED_REFERENCE!>html<!>><!UNRESOLVED_REFERENCE!>html<!>
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@
|
||||
|
||||
fun foo() {
|
||||
val text: List<Any> = null!!
|
||||
text.<!UNRESOLVED_REFERENCE!>map<!> <!UNRESOLVED_REFERENCE!>Any<!><!SYNTAX!>?<!>::<!UNRESOLVED_REFERENCE!>toString<!>
|
||||
text.<!UNRESOLVED_REFERENCE!>map<!> Any<!SYNTAX!>?<!>::<!UNRESOLVED_REFERENCE!>toString<!>
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -59,7 +59,7 @@ fun test(a: A, b: B) {
|
||||
|
||||
b.(foo)()
|
||||
|
||||
(<!UNRESOLVED_REFERENCE!>b.<!UNRESOLVED_REFERENCE!>foo<!><!>)()
|
||||
(b.<!UNRESOLVED_REFERENCE!>foo<!>)()
|
||||
|
||||
foo(b)
|
||||
(foo)(b)
|
||||
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
fun foo() {
|
||||
<!UNRESOLVED_REFERENCE!>x<!>.<!UNRESOLVED_REFERENCE!>yyy<!><<!UNRESOLVED_REFERENCE!>XXX<!>>()
|
||||
<!UNRESOLVED_REFERENCE!>x<!>.<!UNRESOLVED_REFERENCE!>yyy<!><Int>()
|
||||
}
|
||||
<!UNRESOLVED_REFERENCE!>x<!>.yyy<<!UNRESOLVED_REFERENCE!>XXX<!>>()
|
||||
<!UNRESOLVED_REFERENCE!>x<!>.yyy<Int>()
|
||||
}
|
||||
|
||||
@@ -22,9 +22,9 @@ public interface J {
|
||||
|
||||
// FILE: 1.kt
|
||||
fun test(j: J) {
|
||||
j.<!AMBIGUITY!>foo<!>({ <!UNRESOLVED_REFERENCE!>it<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Any>() }; "" }, "") <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
j.<!AMBIGUITY!>foo<!>({ <!UNRESOLVED_REFERENCE!>it<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Any>() }; "" }, "") <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
|
||||
j.<!AMBIGUITY!>bas<!>({ <!UNRESOLVED_REFERENCE!>it<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Any>() }; "" }, "") <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
j.<!AMBIGUITY!>bas<!>({ <!UNRESOLVED_REFERENCE!>it<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Any>() }; "" }, "") <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
|
||||
// NI: TODO
|
||||
j.bar { it checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Any>() }; "" } checkType { _<Int>() }
|
||||
|
||||
+2
-2
@@ -21,9 +21,9 @@ interface K {
|
||||
}
|
||||
|
||||
fun test(k: K) {
|
||||
k.<!AMBIGUITY!>foo<!> { <!UNRESOLVED_REFERENCE!>it<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Any>() }; "" } <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
k.<!AMBIGUITY!>foo<!> { <!UNRESOLVED_REFERENCE!>it<!> checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Any>() }; "" } <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
|
||||
k.<!AMBIGUITY!>bas<!> { <!UNRESOLVED_REFERENCE!>it<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { _<Any?>() }; "" } <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
k.<!AMBIGUITY!>bas<!> { <!UNRESOLVED_REFERENCE!>it<!> checkType { _<Any?>() }; "" } <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><Int>() }
|
||||
|
||||
// NI: TODO
|
||||
k.bar { it checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Any>() }; "" } checkType { _<Int>() }
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ open class A {
|
||||
class Simple: A() {
|
||||
init {
|
||||
Y().A_Y()
|
||||
<!UNRESOLVED_REFERENCE!>Z<!>().<!UNRESOLVED_REFERENCE!>A_C_Z<!>()
|
||||
<!UNRESOLVED_REFERENCE!>Z<!>().A_C_Z()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Vendored
+1
-1
@@ -42,6 +42,6 @@ class Y: C() {
|
||||
init {
|
||||
Y().A_Y()
|
||||
|
||||
<!UNRESOLVED_REFERENCE!>Z<!>().<!UNRESOLVED_REFERENCE!>A_C_Z<!>()
|
||||
<!UNRESOLVED_REFERENCE!>Z<!>().A_C_Z()
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -5,11 +5,11 @@ package a
|
||||
|
||||
fun foo() {
|
||||
val b : <!UNRESOLVED_REFERENCE!>B<!> = <!UNRESOLVED_REFERENCE!>B<!>() //only B() is unresolved, but in ": B" and "B.foo()" B should also be unresolved
|
||||
<!UNRESOLVED_REFERENCE!>B<!>.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
<!UNRESOLVED_REFERENCE!>B<!>.foo()
|
||||
|
||||
<!UNRESOLVED_REFERENCE!>P<!>.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
<!UNRESOLVED_REFERENCE!>P<!>.foo()
|
||||
|
||||
<!UNRESOLVED_REFERENCE!>M<!>.<!UNRESOLVED_REFERENCE!>bar<!>()
|
||||
<!UNRESOLVED_REFERENCE!>M<!>.bar()
|
||||
}
|
||||
|
||||
class A() {
|
||||
|
||||
+2
-2
@@ -6,6 +6,6 @@ class Outer {
|
||||
}
|
||||
|
||||
constructor(x: Int)
|
||||
constructor(x: Int, y: Int, z: Int = x + Inner().prop <!AMBIGUITY!>+<!> <!INSTANCE_ACCESS_BEFORE_SUPER_CALL!>this<!>.<!UNRESOLVED_REFERENCE!>Inner<!>().<!UNRESOLVED_REFERENCE!>prop<!>) :
|
||||
this(x + Inner().prop <!AMBIGUITY!>+<!> <!INSTANCE_ACCESS_BEFORE_SUPER_CALL!>this<!>.<!UNRESOLVED_REFERENCE!>Inner<!>().<!UNRESOLVED_REFERENCE!>prop<!>)
|
||||
constructor(x: Int, y: Int, z: Int = x + Inner().prop <!AMBIGUITY!>+<!> <!INSTANCE_ACCESS_BEFORE_SUPER_CALL!>this<!>.<!UNRESOLVED_REFERENCE!>Inner<!>().prop) :
|
||||
this(x + Inner().prop <!AMBIGUITY!>+<!> <!INSTANCE_ACCESS_BEFORE_SUPER_CALL!>this<!>.<!UNRESOLVED_REFERENCE!>Inner<!>().prop)
|
||||
}
|
||||
|
||||
+1
-1
@@ -33,6 +33,6 @@ fun test() {
|
||||
x.baz(1).checkType { _<Unit>() }
|
||||
x.<!INAPPLICABLE_CANDIDATE!>baz<!>(1, 2)
|
||||
|
||||
x.<!UNRESOLVED_REFERENCE!>foobar<!>().<!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
x.<!UNRESOLVED_REFERENCE!>foobar<!>().checkType { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -12,4 +12,4 @@ typealias CA = C
|
||||
val test1 = CA
|
||||
val test2 = CA.<!UNRESOLVED_REFERENCE!>Companion<!>
|
||||
val test3 = CA.x
|
||||
val test4 = CA.<!UNRESOLVED_REFERENCE!>Companion<!>.<!UNRESOLVED_REFERENCE!>x<!>
|
||||
val test4 = CA.<!UNRESOLVED_REFERENCE!>Companion<!>.x
|
||||
|
||||
+1
-1
@@ -7,5 +7,5 @@ val <T : Any> KClass<T>.java: Class<T> get() = null!!
|
||||
|
||||
val <T : Any> KClass<T>.javaObjectType: Class<T>
|
||||
get() {
|
||||
return java.<!UNRESOLVED_REFERENCE!>lang<!>.<!UNRESOLVED_REFERENCE!>Class<!>::class.<!INAPPLICABLE_CANDIDATE!>java<!> as Class<T>
|
||||
return java.<!UNRESOLVED_REFERENCE!>lang<!>.Class::class.<!INAPPLICABLE_CANDIDATE!>java<!> as Class<T>
|
||||
}
|
||||
|
||||
+1
-1
@@ -6,5 +6,5 @@ val <T : Any> KClass<T>.java: Class<T> get() = null!!
|
||||
|
||||
val <T : Any> KClass<T>.foo: Any?
|
||||
get() {
|
||||
return java.<!UNRESOLVED_REFERENCE!>lang<!>.<!UNRESOLVED_REFERENCE!>Integer<!>::<!UNRESOLVED_REFERENCE!>hashCode<!>
|
||||
return java.<!UNRESOLVED_REFERENCE!>lang<!>.Integer::hashCode
|
||||
}
|
||||
|
||||
+1
-1
@@ -7,7 +7,7 @@ interface A : MutableCollection<String> {
|
||||
}
|
||||
|
||||
fun foo(x: MutableCollection<Int>, y: Collection<String>, z: A) {
|
||||
x.<!UNRESOLVED_REFERENCE!>nonExistingMethod<!>(1).<!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
x.<!UNRESOLVED_REFERENCE!>nonExistingMethod<!>(1).checkType { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
|
||||
y.<!UNRESOLVED_REFERENCE!>nonExistingMethod<!>("")
|
||||
z.nonExistingMethod("")
|
||||
}
|
||||
|
||||
@@ -13,9 +13,9 @@ class C {
|
||||
}
|
||||
}
|
||||
|
||||
val c = C.<!UNRESOLVED_REFERENCE!>Self<!>.<!UNRESOLVED_REFERENCE!>Self<!>()
|
||||
val n = C.<!UNRESOLVED_REFERENCE!>Self<!>.<!UNRESOLVED_REFERENCE!>Nested<!>()
|
||||
val x = C.<!UNRESOLVED_REFERENCE!>Self<!>.<!UNRESOLVED_REFERENCE!>X<!>
|
||||
val n2 = C.Nested.<!UNRESOLVED_REFERENCE!>Root<!>.<!UNRESOLVED_REFERENCE!>Nested<!>.<!UNRESOLVED_REFERENCE!>N2<!>()
|
||||
val ic = C.<!UNRESOLVED_REFERENCE!>Self<!>.<!UNRESOLVED_REFERENCE!>InCompanion<!>()
|
||||
val ok = C.<!UNRESOLVED_REFERENCE!>Self<!>.<!UNRESOLVED_REFERENCE!>ok<!>
|
||||
val c = C.<!UNRESOLVED_REFERENCE!>Self<!>.Self()
|
||||
val n = C.<!UNRESOLVED_REFERENCE!>Self<!>.Nested()
|
||||
val x = C.<!UNRESOLVED_REFERENCE!>Self<!>.X
|
||||
val n2 = C.Nested.<!UNRESOLVED_REFERENCE!>Root<!>.Nested.N2()
|
||||
val ic = C.<!UNRESOLVED_REFERENCE!>Self<!>.InCompanion()
|
||||
val ok = C.<!UNRESOLVED_REFERENCE!>Self<!>.ok
|
||||
|
||||
+3
-3
@@ -53,7 +53,7 @@ fun foo(
|
||||
test.ClassAlias::func
|
||||
|
||||
test.ClassSample.Nested::func
|
||||
test.ClassAlias.<!UNRESOLVED_REFERENCE!>Nested<!>::<!UNRESOLVED_REFERENCE!>func<!>
|
||||
test.ClassAlias.<!UNRESOLVED_REFERENCE!>Nested<!>::func
|
||||
|
||||
test.ObjectSample::Nested
|
||||
test.ObjectAlias::Nested
|
||||
@@ -62,7 +62,7 @@ fun foo(
|
||||
test.ObjectAlias::func
|
||||
|
||||
test.ObjectSample.Nested::func
|
||||
test.ObjectAlias.<!UNRESOLVED_REFERENCE!>Nested<!>::<!UNRESOLVED_REFERENCE!>func<!>
|
||||
test.ObjectAlias.<!UNRESOLVED_REFERENCE!>Nested<!>::func
|
||||
|
||||
test.EnumSample::Nested
|
||||
test.EnumAlias::Nested
|
||||
@@ -71,5 +71,5 @@ fun foo(
|
||||
test.EnumAlias::func
|
||||
|
||||
test.EnumSample.Nested::func
|
||||
test.EnumAlias.<!UNRESOLVED_REFERENCE!>Nested<!>::<!UNRESOLVED_REFERENCE!>func<!>
|
||||
test.EnumAlias.<!UNRESOLVED_REFERENCE!>Nested<!>::func
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user