[NI-MIGRATE] Update diagnostic messages

This commit is contained in:
Mikhail Zarechenskiy
2020-02-10 01:17:03 +03:00
parent cd0012c527
commit 319a38bd5c
38 changed files with 123 additions and 52 deletions
@@ -48,7 +48,8 @@ class JavaSyntheticScopes(
init { init {
val samConversionPerArgumentIsEnabled = val samConversionPerArgumentIsEnabled =
languageVersionSettings.supportsFeature(LanguageFeature.SamConversionPerArgument) languageVersionSettings.supportsFeature(LanguageFeature.SamConversionPerArgument) &&
languageVersionSettings.supportsFeature(LanguageFeature.NewInference)
val javaSyntheticPropertiesScope = JavaSyntheticPropertiesScope(storageManager, lookupTracker) val javaSyntheticPropertiesScope = JavaSyntheticPropertiesScope(storageManager, lookupTracker)
val scopesFromExtensions = SyntheticScopeProviderExtension val scopesFromExtensions = SyntheticScopeProviderExtension
@@ -13,6 +13,6 @@ fun bar2(body: (String, Int) -> String): String {
} }
fun test() { fun test() {
bar1(<!NI;UNSUPPORTED_FEATURE, OI;TYPE_MISMATCH!>::foo<!>) bar1(<!OI;TYPE_MISMATCH!>::foo<!>)
bar2(::foo) bar2(::foo)
} }
@@ -13,5 +13,5 @@ public class J {
package test package test
fun test() { fun test() {
J("", <!NAMED_ARGUMENTS_NOT_ALLOWED!>r<!> = <!NI;TYPE_MISMATCH!>{ }<!>, <!NAMED_ARGUMENTS_NOT_ALLOWED!>z<!> = false) J("", <!NAMED_ARGUMENTS_NOT_ALLOWED!>r<!> = { }, <!NAMED_ARGUMENTS_NOT_ALLOWED!>z<!> = false)
} }
@@ -13,5 +13,5 @@ public class J {
package test package test
fun test() { fun test() {
J.foo("", <!NAMED_ARGUMENTS_NOT_ALLOWED!>r<!> = <!NI;TYPE_MISMATCH!>{ }<!>, <!NAMED_ARGUMENTS_NOT_ALLOWED!>z<!> = false) J.foo("", <!NAMED_ARGUMENTS_NOT_ALLOWED!>r<!> = { }, <!NAMED_ARGUMENTS_NOT_ALLOWED!>z<!> = false)
} }
@@ -21,7 +21,7 @@ class B {
fun main() { fun main() {
fun println() {} fun println() {}
// All parameters in SAM adapter of `foo` have functional types // All parameters in SAM adapter of `foo` have functional types
B().foo(<!TYPE_MISMATCH!>{ println() }<!>, B.bar()) B().foo(<!OI;TYPE_MISMATCH!>{ println() }<!>, B.bar())
// So you should use SAM constructors when you want to use mix lambdas and Java objects // So you should use SAM constructors when you want to use mix lambdas and Java objects
B().foo(Runnable { println() }, B.bar()) B().foo(Runnable { println() }, B.bar())
B().foo({ println() }, { it: Any? -> it == null } ) B().foo({ println() }, { it: Any? -> it == null } )
@@ -1,4 +1,4 @@
// !LANGUAGE: +NewInference // !LANGUAGE: +NewInference -SamConversionForKotlinFunctions
// FILE: Runnable.java // FILE: Runnable.java
public interface Runnable { public interface Runnable {
void run(); void run();
@@ -1,4 +1,4 @@
// !LANGUAGE: +NewInference // !LANGUAGE: +NewInference -SamConversionForKotlinFunctions
// FILE: Runnable.java // FILE: Runnable.java
public interface Runnable { public interface Runnable {
void run(); void run();
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE // !DIAGNOSTICS: -UNUSED_VARIABLE
// !LANGUAGE: +NewInference +SamConversionForKotlinFunctions -ProhibitVarargAsArrayAfterSamArgument // !LANGUAGE: +NewInference +SamConversionForKotlinFunctions -ProhibitVarargAsArrayAfterSamArgument -SamConversionPerArgument
// IGNORE_BACKEND: JS, JS_IR // IGNORE_BACKEND: JS, JS_IR
// SKIP_TXT // SKIP_TXT
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE // !DIAGNOSTICS: -UNUSED_VARIABLE
// !LANGUAGE: +NewInference +SamConversionForKotlinFunctions -ProhibitVarargAsArrayAfterSamArgument // !LANGUAGE: +NewInference +SamConversionForKotlinFunctions -ProhibitVarargAsArrayAfterSamArgument -SamConversionPerArgument
// IGNORE_BACKEND: JS, JS_IR // IGNORE_BACKEND: JS, JS_IR
// SKIP_TXT // SKIP_TXT
@@ -1,4 +1,4 @@
// !LANGUAGE: +NewInference // !LANGUAGE: +NewInference -SamConversionForKotlinFunctions
// FILE: Runnable.java // FILE: Runnable.java
public interface Runnable { public interface Runnable {
void run(); void run();
@@ -1,4 +1,4 @@
// !LANGUAGE: +NewInference // !LANGUAGE: +NewInference -SamConversionForKotlinFunctions
// FILE: Runnable.java // FILE: Runnable.java
public interface Runnable { public interface Runnable {
void run(); void run();
@@ -25,7 +25,7 @@ fun test3(a: () -> Unit) {
fun test4(a: () -> Unit, b: () -> Unit) { fun test4(a: () -> Unit, b: () -> Unit) {
if (a is Runnable) { if (a is Runnable) {
J().run2(a, b) J().run2(<!DEBUG_INFO_SMARTCAST!>a<!>, b)
} }
} }
@@ -21,7 +21,7 @@ class B : A() {
} }
if (d.x is B) { if (d.x is B) {
<!SMARTCAST_IMPOSSIBLE!>d.x<!>.<!NI;INVISIBLE_MEMBER!>foo<!> {} <!OI;SMARTCAST_IMPOSSIBLE!>d.x<!>.<!NI;INVISIBLE_MEMBER!>foo<!> {}
} }
} }
} }
@@ -2,7 +2,7 @@
// FILE: KotlinFile.kt // FILE: KotlinFile.kt
fun foo(javaClass: JavaClass<Int>): Int { fun foo(javaClass: JavaClass<Int>): Int {
val inner = javaClass.createInner<String>() val inner = javaClass.createInner<String>()
return <!TYPE_MISMATCH!>inner.<!NI;TYPE_MISMATCH!>doSomething(<!CONSTANT_EXPECTED_TYPE_MISMATCH!>1<!>, "") <!TYPE_MISMATCH!>{ }<!><!><!> return <!TYPE_MISMATCH!>inner.doSomething(<!CONSTANT_EXPECTED_TYPE_MISMATCH!>1<!>, "") <!OI;TYPE_MISMATCH!>{ }<!><!>
} }
// FILE: JavaClass.java // FILE: JavaClass.java
@@ -1,9 +1,9 @@
// !WITH_NEW_INFERENCE // !WITH_NEW_INFERENCE
// FILE: KotlinFile.kt // FILE: KotlinFile.kt
fun foo(javaClass: JavaClass) { fun foo(javaClass: JavaClass) {
javaClass.doSomething(<!NAMED_ARGUMENTS_NOT_ALLOWED!>p<!> = 1) <!NI;TYPE_MISMATCH!>{ javaClass.doSomething(<!NAMED_ARGUMENTS_NOT_ALLOWED!>p<!> = 1) {
bar() bar()
}<!> }
} }
fun bar(){} fun bar(){}
@@ -1,7 +1,7 @@
// !WITH_NEW_INFERENCE // !WITH_NEW_INFERENCE
// FILE: KotlinFile.kt // FILE: KotlinFile.kt
fun foo(javaClass: JavaClass) { fun foo(javaClass: JavaClass) {
javaClass.<!INVISIBLE_MEMBER!>doSomething<!> <!TYPE_MISMATCH!>{ }<!> javaClass.<!INVISIBLE_MEMBER!>doSomething<!> <!OI;TYPE_MISMATCH!>{ }<!>
} }
// FILE: JavaClass.java // FILE: JavaClass.java
@@ -12,9 +12,9 @@ fun foo(javaClass: JavaClass, kotlinClass: KotlinClass) {
bar() bar()
} }
kotlinClass.doSomething <!TYPE_MISMATCH!>{ kotlinClass.doSomething {
bar() bar()
}<!> }
javaClass.doSomething2 <!TYPE_MISMATCH!>{ javaClass.doSomething2 <!TYPE_MISMATCH!>{
bar() bar()
@@ -1,4 +1,6 @@
public final fun provideDelegate(/*0*/ p0: dynamic, /*1*/ p1: dynamic): dynamic
public final fun getValue(/*0*/ p0: dynamic, /*1*/ p1: dynamic): dynamic public final fun getValue(/*0*/ p0: dynamic, /*1*/ p1: dynamic): dynamic
public final fun setValue(/*0*/ p0: dynamic, /*1*/ p1: dynamic, /*2*/ p2: dynamic): dynamic public final fun setValue(/*0*/ p0: dynamic, /*1*/ p1: dynamic, /*2*/ p2: dynamic): dynamic
public final fun provideDelegate(/*0*/ p0: dynamic, /*1*/ p1: dynamic): dynamic
public final fun getValue(/*0*/ p0: dynamic, /*1*/ p1: dynamic): dynamic public final fun getValue(/*0*/ p0: dynamic, /*1*/ p1: dynamic): dynamic
public final fun getValue(/*0*/ p0: dynamic, /*1*/ p1: dynamic): dynamic public final fun getValue(/*0*/ p0: dynamic, /*1*/ p1: dynamic): dynamic
@@ -1,5 +1,5 @@
fun test(m: Map<String, Int>, mm: MutableMap<Int, String>) { fun test(m: Map<String, Int>, mm: MutableMap<Int, String>) {
m.<!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>getOrDefault<!>("2", 1) m.<!DEBUG_INFO_UNRESOLVED_WITH_TARGET, UNRESOLVED_REFERENCE_WRONG_RECEIVER!>getOrDefault<!>("2", 1)
mm.<!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>getOrDefault<!>(1, "2") mm.<!DEBUG_INFO_UNRESOLVED_WITH_TARGET, UNRESOLVED_REFERENCE_WRONG_RECEIVER!>getOrDefault<!>(1, "2")
mm.remove(1, <!TOO_MANY_ARGUMENTS!>"2"<!>) mm.remove(1, <!TOO_MANY_ARGUMENTS!>"2"<!>)
} }
@@ -1,3 +1,6 @@
// !WITH_NEW_INFERENCE
// NI_EXPECTED_FILE
// FILE: A.java // FILE: A.java
public @interface A { public @interface A {
String[] value(); String[] value();
@@ -1,3 +1,6 @@
// !WITH_NEW_INFERENCE
// NI_EXPECTED_FILE
// FILE: A.java // FILE: A.java
public @interface A { public @interface A {
String[] value(); String[] value();
@@ -23,5 +26,5 @@ public @interface A {
@A fun test8() {} @A fun test8() {}
@A(x = Any::class, <!MIXING_NAMED_AND_POSITIONED_ARGUMENTS!>*arrayOf("5", "6")<!>, <!MIXING_NAMED_AND_POSITIONED_ARGUMENTS!>"7"<!>, y = 3) fun test9() {} @A(x = Any::class, <!MIXING_NAMED_AND_POSITIONED_ARGUMENTS!>*arrayOf("5", "6")<!>, <!MIXING_NAMED_AND_POSITIONED_ARGUMENTS!>"7"<!>, y = 3) fun test9() {}
@A(x = Any::class, value = ["5", "6"], <!MIXING_NAMED_AND_POSITIONED_ARGUMENTS!>"7"<!>, y = 3) fun test10() {} @A(x = Any::class, value = ["5", "6"], <!NI;POSITIONED_VALUE_ARGUMENT_FOR_JAVA_ANNOTATION, NI;TYPE_MISMATCH, OI;MIXING_NAMED_AND_POSITIONED_ARGUMENTS!>"7"<!>, y = 3) fun test10() {}
@A(x = Any::class, value = ["5", "6", "7"], y = 3) fun test11() {} @A(x = Any::class, value = ["5", "6", "7"], y = 3) fun test11() {}
@@ -0,0 +1,23 @@
package
@A(value = {"1", "2", "3"}) public fun test1(): kotlin.Unit
@A(value = {"5", "6"}, x = "7", y = 3) public fun test10(): kotlin.Unit
@A(value = {"5", "6", "7"}, x = kotlin.Any::class, y = 3) public fun test11(): kotlin.Unit
@A(value = {"4"}) public fun test2(): kotlin.Unit
@A(value = {{"5", "6"}, "7"}) public fun test3(): kotlin.Unit
@A(value = {"1", "2", "3"}, x = kotlin.String::class) public fun test4(): kotlin.Unit
@A(value = {"4"}, y = 2) public fun test5(): kotlin.Unit
@A(value = {{"5", "6"}, "7"}, x = kotlin.Any::class, y = 3) public fun test6(): kotlin.Unit
@A(value = {}) public fun test7(): kotlin.Unit
@A(value = {}) public fun test8(): kotlin.Unit
@A(value = {}, x = kotlin.Any::class, y = 3) public fun test9(): kotlin.Unit
public final annotation class A : kotlin.Annotation {
public constructor A(/*0*/ vararg value: kotlin.String /*kotlin.Array<out kotlin.String>*/, /*1*/ x: kotlin.reflect.KClass<*> = ..., /*2*/ y: kotlin.Int = ...)
public final val value: kotlin.Array<kotlin.String>
public final val x: kotlin.reflect.KClass<*>
public final val y: kotlin.Int
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -77,13 +77,13 @@ fun test() {
this@a.<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield<!>(1) this@a.<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield<!>(1)
this@a.<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield2<!>(1) this@a.<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield2<!>(1)
<!NI;NON_APPLICABLE_CALL_FOR_BUILDER_INFERENCE!>with(this) { with(this) {
<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield<!>("") <!OI;ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield<!>("")
this@with.<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield<!>("") this@with.<!NI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, NI;DEBUG_INFO_UNRESOLVED_WITH_TARGET, NI;UNRESOLVED_REFERENCE, OI;ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield<!>("")
<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield2<!>("") <!OI;ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield2<!>("")
this@with.<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield2<!>("") this@with.<!NI;DEBUG_INFO_UNRESOLVED_WITH_TARGET, NI;UNRESOLVED_REFERENCE_WRONG_RECEIVER, OI;ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield2<!>("")
}<!> }
} }
} }
@@ -83,11 +83,11 @@ fun test() {
this@a.<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield2<!>(1) this@a.<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield2<!>(1)
with(this) { with(this) {
<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield<!>("") yield("")
this@with.<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield<!>("") this@with.<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, DEBUG_INFO_UNRESOLVED_WITH_TARGET, UNRESOLVED_REFERENCE!>yield<!>("")
<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield2<!>("") yield2("")
this@with.<!ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL!>yield2<!>("") this@with.<!DEBUG_INFO_UNRESOLVED_WITH_TARGET, UNRESOLVED_REFERENCE_WRONG_RECEIVER!>yield2<!>("")
} }
} }
} }
@@ -1,7 +1,7 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER // !DIAGNOSTICS: -UNUSED_PARAMETER
// !CHECK_TYPE // !CHECK_TYPE
// COMMON_COROUTINES_TEST
// !WITH_NEW_INFERENCE // !WITH_NEW_INFERENCE
// COMMON_COROUTINES_TEST
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
class Controller { class Controller {
@@ -38,7 +38,7 @@ fun test() {
severalParams("", 89) checkType { _<Double>() } severalParams("", 89) checkType { _<Double>() }
// TODO: should we allow somehow to call with passing continuation explicitly? // TODO: should we allow somehow to call with passing continuation explicitly?
severalParams("", 89, <!TOO_MANY_ARGUMENTS!>6.9<!>) checkType { <!TYPE_MISMATCH!>_<!><Unit>() } severalParams("", 89, <!TOO_MANY_ARGUMENTS!>6.9<!>) checkType { <!NI;TYPE_MISMATCH, OI;DEBUG_INFO_UNRESOLVED_WITH_TARGET, OI;UNRESOLVED_REFERENCE_WRONG_RECEIVER!>_<!><Unit>() }
severalParams("", 89, <!TOO_MANY_ARGUMENTS!>this <!CAST_NEVER_SUCCEEDS!>as<!> Continuation<Double><!>) checkType { <!TYPE_MISMATCH!>_<!><Unit>() } severalParams("", 89, <!TOO_MANY_ARGUMENTS!>this <!CAST_NEVER_SUCCEEDS!>as<!> Continuation<Double><!>) checkType { <!NI;TYPE_MISMATCH, OI;DEBUG_INFO_UNRESOLVED_WITH_TARGET, OI;UNRESOLVED_REFERENCE_WRONG_RECEIVER!>_<!><Unit>() }
} }
} }
@@ -1,3 +1,5 @@
// !WITH_NEW_INFERENCE
// FILE: J.java // FILE: J.java
import kotlin.jvm.functions.Function1; import kotlin.jvm.functions.Function1;
@@ -1,3 +1,5 @@
// !WITH_NEW_INFERENCE
// FILE: J.java // FILE: J.java
import kotlin.jvm.functions.Function1; import kotlin.jvm.functions.Function1;
@@ -12,5 +14,5 @@ fun useJ(j: J) {
} }
fun jj() { fun jj() {
useJ(<!TYPE_MISMATCH!>{}<!>) useJ(<!TYPE_MISMATCH!>{<!NI;TYPE_MISMATCH!><!>}<!>)
} }
@@ -1,4 +1,4 @@
// !LANGUAGE: -RefinedSamAdaptersPriority // !LANGUAGE: -RefinedSamAdaptersPriority -NewInference
// !DIAGNOSTICS: -UNUSED_PARAMETER // !DIAGNOSTICS: -UNUSED_PARAMETER
// !CHECK_TYPE // !CHECK_TYPE
// !WITH_NEW_INFERENCE // !WITH_NEW_INFERENCE
@@ -1,4 +1,4 @@
// !LANGUAGE: -RefinedSamAdaptersPriority // !LANGUAGE: -RefinedSamAdaptersPriority -NewInference
// !DIAGNOSTICS: -UNUSED_PARAMETER // !DIAGNOSTICS: -UNUSED_PARAMETER
// !CHECK_TYPE // !CHECK_TYPE
// !WITH_NEW_INFERENCE // !WITH_NEW_INFERENCE
@@ -1,4 +1,4 @@
// !LANGUAGE: -RefinedSamAdaptersPriority // !LANGUAGE: -RefinedSamAdaptersPriority -NewInference
// !DIAGNOSTICS: -UNUSED_PARAMETER // !DIAGNOSTICS: -UNUSED_PARAMETER
// !CHECK_TYPE // !CHECK_TYPE
// !WITH_NEW_INFERENCE // !WITH_NEW_INFERENCE
@@ -1,4 +1,4 @@
// !LANGUAGE: -RefinedSamAdaptersPriority // !LANGUAGE: -RefinedSamAdaptersPriority -NewInference
// !DIAGNOSTICS: -UNUSED_PARAMETER // !DIAGNOSTICS: -UNUSED_PARAMETER
// !CHECK_TYPE // !CHECK_TYPE
// !WITH_NEW_INFERENCE // !WITH_NEW_INFERENCE
@@ -10,7 +10,7 @@ fun <K> select(x: K, y: K): K = TODO()
fun takeUByte(u: UByte) {} fun takeUByte(u: UByte) {}
fun foo() { fun foo() {
<!NI;TYPE_MISMATCH!>select<!>(1, 1u) checkType { <!NI;UNRESOLVED_REFERENCE_WRONG_RECEIVER!>_<!><Comparable<*>>() } <!NI;TYPE_MISMATCH!>select<!>(1, 1u) checkType { <!NI;DEBUG_INFO_UNRESOLVED_WITH_TARGET, NI;UNRESOLVED_REFERENCE_WRONG_RECEIVER!>_<!><Comparable<*>>() }
takeUByte(<!NI;TYPE_MISMATCH, OI;TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH!>id(1)<!>) takeUByte(<!NI;TYPE_MISMATCH, OI;TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH!>id(1)<!>)
1 <!NONE_APPLICABLE!>+<!> 1u 1 <!NONE_APPLICABLE!>+<!> 1u
@@ -1,4 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER // !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// !WITH_NEW_INFERENCE
// RENDER_PACKAGE: test // RENDER_PACKAGE: test
// SKIP_COMPILED_JAVA // SKIP_COMPILED_JAVA
@@ -88,9 +89,9 @@ fun main(a: test.A, l: L<Map<String, Int>, Int?>, l1: L<Map<String, Int>, Int>)
a.bar(<!TYPE_MISMATCH!>l1 <!UNCHECKED_CAST!>as L<Map<String, Int>, Int?><!><!>) a.bar(<!TYPE_MISMATCH!>l1 <!UNCHECKED_CAST!>as L<Map<String, Int>, Int?><!><!>)
a.baz1().t().containsKey("") a.baz1().t().containsKey("")
a.baz1().t().<!TYPE_INFERENCE_ONLY_INPUT_TYPES!>containsKey<!>(null) a.baz1().t().<!NI;TYPE_INFERENCE_ONLY_INPUT_TYPES_WARNING, OI;TYPE_INFERENCE_ONLY_INPUT_TYPES!>containsKey<!>(null)
a.baz1().t().containsValue(1) a.baz1().t().containsValue(1)
a.baz1().t().<!TYPE_INFERENCE_ONLY_INPUT_TYPES!>containsValue<!>(null) a.baz1().t().<!NI;TYPE_INFERENCE_ONLY_INPUT_TYPES_WARNING, OI;TYPE_INFERENCE_ONLY_INPUT_TYPES!>containsValue<!>(null)
a.baz1().s().hashCode() a.baz1().s().hashCode()
a.baz1().setT(l.t()) a.baz1().setT(l.t())
@@ -104,8 +105,8 @@ fun main(a: test.A, l: L<Map<String, Int>, Int?>, l1: L<Map<String, Int>, Int>)
a.baz2().s().hashCode() a.baz2().s().hashCode()
a.baz3().t().containsKey("") a.baz3().t().containsKey("")
a.baz3().t().<!TYPE_INFERENCE_ONLY_INPUT_TYPES!>containsKey<!>(null) a.baz3().t().<!NI;TYPE_INFERENCE_ONLY_INPUT_TYPES_WARNING, OI;TYPE_INFERENCE_ONLY_INPUT_TYPES!>containsKey<!>(null)
a.baz3().t().containsValue(1) a.baz3().t().containsValue(1)
a.baz3().t().<!TYPE_INFERENCE_ONLY_INPUT_TYPES!>containsValue<!>(null) a.baz3().t().<!NI;TYPE_INFERENCE_ONLY_INPUT_TYPES_WARNING, OI;TYPE_INFERENCE_ONLY_INPUT_TYPES!>containsValue<!>(null)
a.baz3().s().hashCode() a.baz3().s().hashCode()
} }
@@ -1,7 +1,33 @@
compiler/testData/javaModules/jdkModulesFromNamed/main/test.kt:11:24: error: unresolved reference: httpserver compiler/testData/javaModules/jdkModulesFromNamed/main/test.kt:11:24: error: unresolved reference: httpserver
val s: com.sun.net.httpserver.HttpServer? = null val s: com.sun.net.httpserver.HttpServer? = null
^ ^
compiler/testData/javaModules/jdkModulesFromNamed/main/test.kt:12:5: error: overload resolution ambiguity:
public inline fun println(message: Any?): Unit defined in kotlin.io
public inline fun println(message: Boolean): Unit defined in kotlin.io
public inline fun println(message: Byte): Unit defined in kotlin.io
public inline fun println(message: Char): Unit defined in kotlin.io
public inline fun println(message: CharArray): Unit defined in kotlin.io
public inline fun println(message: Double): Unit defined in kotlin.io
public inline fun println(message: Float): Unit defined in kotlin.io
public inline fun println(message: Int): Unit defined in kotlin.io
public inline fun println(message: Long): Unit defined in kotlin.io
public inline fun println(message: Short): Unit defined in kotlin.io
println(s)
^
compiler/testData/javaModules/jdkModulesFromNamed/main/test.kt:19:20: error: unresolved reference: javafx compiler/testData/javaModules/jdkModulesFromNamed/main/test.kt:19:20: error: unresolved reference: javafx
val x: com.sun.javafx.tools.ant.AntLog? = null val x: com.sun.javafx.tools.ant.AntLog? = null
^ ^
compiler/testData/javaModules/jdkModulesFromNamed/main/test.kt:20:5: error: overload resolution ambiguity:
public inline fun println(message: Any?): Unit defined in kotlin.io
public inline fun println(message: Boolean): Unit defined in kotlin.io
public inline fun println(message: Byte): Unit defined in kotlin.io
public inline fun println(message: Char): Unit defined in kotlin.io
public inline fun println(message: CharArray): Unit defined in kotlin.io
public inline fun println(message: Double): Unit defined in kotlin.io
public inline fun println(message: Float): Unit defined in kotlin.io
public inline fun println(message: Int): Unit defined in kotlin.io
public inline fun println(message: Long): Unit defined in kotlin.io
public inline fun println(message: Short): Unit defined in kotlin.io
println(x)
^
COMPILATION_ERROR COMPILATION_ERROR
@@ -1,4 +1,17 @@
compiler/testData/javaModules/jdkModulesFromUnnamed/main/test.kt:19:33: error: unresolved reference: ant compiler/testData/javaModules/jdkModulesFromUnnamed/main/test.kt:19:33: error: unresolved reference: ant
val x: com.sun.javafx.tools.ant.AntLog? = null val x: com.sun.javafx.tools.ant.AntLog? = null
^ ^
compiler/testData/javaModules/jdkModulesFromUnnamed/main/test.kt:20:5: error: overload resolution ambiguity:
public inline fun println(message: Any?): Unit defined in kotlin.io
public inline fun println(message: Boolean): Unit defined in kotlin.io
public inline fun println(message: Byte): Unit defined in kotlin.io
public inline fun println(message: Char): Unit defined in kotlin.io
public inline fun println(message: CharArray): Unit defined in kotlin.io
public inline fun println(message: Double): Unit defined in kotlin.io
public inline fun println(message: Float): Unit defined in kotlin.io
public inline fun println(message: Int): Unit defined in kotlin.io
public inline fun println(message: Long): Unit defined in kotlin.io
public inline fun println(message: Short): Unit defined in kotlin.io
println(x)
^
COMPILATION_ERROR COMPILATION_ERROR
+2 -5
View File
@@ -3,9 +3,6 @@ error: unresolved reference: unresolved
(listOf(1) as List<String>).unresolved() (listOf(1) as List<String>).unresolved()
^ ^
>>> listOf<String>(1!!) >>> listOf<String>(1!!)
error: the integer literal does not conform to the expected type String? error: type mismatch: inferred type is IntegerLiteralType[Int,Long,Byte,Short] but String was expected
listOf<String>(1!!) listOf<String>(1!!)
^ ^
error: type mismatch: inferred type is Int but String was expected
listOf<String>(1!!)
^
-1
View File
@@ -14,7 +14,6 @@
1.`foo`foo() 1.`foo`foo()
true.`T.foo`foo() true.`T.foo`foo()
3.`!null`foo(4)
1 1
} }
@@ -69,7 +69,6 @@ fun <T> tt(t : T) : T {
(x`java::java.util.ArrayList.set()`[1]) = null (x`java::java.util.ArrayList.set()`[1]) = null
x`java::java.util.ArrayList.set()`[null] = null x`java::java.util.ArrayList.set()`[null] = null
(x`java::java.util.ArrayList.set()`[null, 2]) = null (x`java::java.util.ArrayList.set()`[null, 2]) = null
(`not`!foo)[1]`:kotlin::Char`
val y = Bar() val y = Bar()
y`inc`++ y`inc`++
`inc`++y `inc`++y