Add alphabetical sorting diagnostics with same ranges

This commit is contained in:
victor.petukhov
2018-12-28 14:23:55 +03:00
parent fad59e200c
commit 46bd5ba107
142 changed files with 251 additions and 251 deletions
@@ -5,7 +5,6 @@
package org.jetbrains.kotlin.checkers
import com.google.common.collect.Maps
import com.intellij.openapi.util.TextRange
import org.jetbrains.kotlin.checkers.diagnostics.AbstractTestDiagnostic
import org.jetbrains.kotlin.checkers.diagnostics.PositionalTextDiagnostic
@@ -21,7 +20,7 @@ class ActualDiagnosticDescriptor internal constructor(start: Int, end: Int, val
val textDiagnosticsMap: MutableMap<AbstractTestDiagnostic, TextDiagnostic>
get() {
val diagnosticMap = Maps.newLinkedHashMap<AbstractTestDiagnostic, TextDiagnostic>()
val diagnosticMap = mutableMapOf<AbstractTestDiagnostic, TextDiagnostic>()
for (diagnostic in diagnostics) {
diagnosticMap[diagnostic] = TextDiagnostic.asTextDiagnostic(diagnostic)
}
@@ -549,6 +549,7 @@ object CheckerTestUtil {
}
if (diagnosticsAsText.size != 0) {
diagnosticsAsText.sort()
result.append("<!${diagnosticsAsText.joinToString(", ")}!>")
isSkip = false
}
+1 -1
View File
@@ -10,7 +10,7 @@ fun test() : Int {
}
class A() {
val x : Int = <!NI;TYPE_MISMATCH, TYPE_MISMATCH!>foo1(<!UNRESOLVED_REFERENCE, TOO_MANY_ARGUMENTS!>xx<!>)<!>
val x : Int = <!NI;TYPE_MISMATCH, TYPE_MISMATCH!>foo1(<!TOO_MANY_ARGUMENTS, UNRESOLVED_REFERENCE!>xx<!>)<!>
}
fun foo1() {}
@@ -23,7 +23,7 @@ fun f(): Unit {
<!IMPLICIT_BOXING_IN_IDENTITY_EQUALS!><!DEBUG_INFO_CONSTANT!>x<!> !== 1<!>
<!OI;DEBUG_INFO_CONSTANT!>x<!><!UNSAFE_OPERATOR_CALL!>..<!>2
<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!> in 1..2
<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>x<!> in 1..2
val y : Boolean? = true
<!UNUSED_EXPRESSION!>false || <!NI;TYPE_MISMATCH, TYPE_MISMATCH!>y<!><!>
+1 -1
View File
@@ -14,7 +14,7 @@ class WithPC1(<!UNUSED_PARAMETER!>a<!> : Int) {
}
class Foo() : <!SUPERTYPE_NOT_INITIALIZED, FINAL_SUPERTYPE!>WithPC0<!>, <!SYNTAX!>this<!>() {
class Foo() : <!FINAL_SUPERTYPE, SUPERTYPE_NOT_INITIALIZED!>WithPC0<!>, <!SYNTAX!>this<!>() {
}
+1 -1
View File
@@ -194,7 +194,7 @@ fun testFunctionLiterals() {
val <!UNUSED_VARIABLE!>endsWithObjectDeclaration<!> : () -> Int = {
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>x<!> = 1
<!UNUSED_VALUE!>x =<!> 333
<!LOCAL_OBJECT_NOT_ALLOWED, EXPECTED_TYPE_MISMATCH!>object A<!> {}
<!EXPECTED_TYPE_MISMATCH, LOCAL_OBJECT_NOT_ALLOWED!>object A<!> {}
}
val <!UNUSED_VARIABLE!>expectedUnitReturnType1<!>: () -> Unit = {
+1 -1
View File
@@ -48,7 +48,7 @@ class Bar<T : <!FINAL_UPPER_BOUND!>Foo<!>>
class Buzz<T> where T : <!FINAL_UPPER_BOUND!>Bar<<!UPPER_BOUND_VIOLATED!>Int<!>><!>, T : <!UNRESOLVED_REFERENCE!>nioho<!>
class X<T : <!FINAL_UPPER_BOUND!>Foo<!>>
class Y<<!CONFLICTING_UPPER_BOUNDS!>T<!>> where T : <!FINAL_UPPER_BOUND!>Foo<!>, T : <!ONLY_ONE_CLASS_BOUND_ALLOWED, FINAL_UPPER_BOUND!>Bar<Foo><!>
class Y<<!CONFLICTING_UPPER_BOUNDS!>T<!>> where T : <!FINAL_UPPER_BOUND!>Foo<!>, T : <!FINAL_UPPER_BOUND, ONLY_ONE_CLASS_BOUND_ALLOWED!>Bar<Foo><!>
fun <T> test2(t : T)
where
+10 -10
View File
@@ -8,31 +8,31 @@ infix fun Any?.ddoo(a: Any) {}
operator fun Any?.contains(a: Any): Boolean = true
fun test(a: Any) {
1f<!UNSUPPORTED, UNRESOLVED_REFERENCE!>oo<!> a
1f<!UNRESOLVED_REFERENCE, UNSUPPORTED!>oo<!> a
1f<!UNSUPPORTED!>foo<!> a
1<!UNSUPPORTED!>doo<!> a
1<!UNSUPPORTED!>ddoo<!> a
1<!UNSUPPORTED, INFIX_MODIFIER_REQUIRED!>contains<!> a
1<!INFIX_MODIFIER_REQUIRED, UNSUPPORTED!>contains<!> a
1L<!UNSUPPORTED!>foo<!> a
1L<!UNSUPPORTED, UNRESOLVED_REFERENCE!>oo<!> a
1L<!UNRESOLVED_REFERENCE, UNSUPPORTED!>oo<!> a
1L<!UNSUPPORTED!>Loo<!> a
0b1<!UNSUPPORTED!>foo<!> a
0b1L<!UNSUPPORTED!>foo<!> a
0b1L<!UNSUPPORTED, UNRESOLVED_REFERENCE!>oo<!> a
0b1L<!UNRESOLVED_REFERENCE, UNSUPPORTED!>oo<!> a
0b1L<!UNSUPPORTED!>Loo<!> a
0xf<!UNSUPPORTED, UNRESOLVED_REFERENCE!>oo<!> a
0xff<!UNSUPPORTED, UNRESOLVED_REFERENCE!>oo<!> a
0xf<!UNRESOLVED_REFERENCE, UNSUPPORTED!>oo<!> a
0xff<!UNRESOLVED_REFERENCE, UNSUPPORTED!>oo<!> a
0xfL<!UNSUPPORTED!>Loo<!> a
1.0f<!UNSUPPORTED, UNRESOLVED_REFERENCE!>oo<!> a
1.0f<!UNRESOLVED_REFERENCE, UNSUPPORTED!>oo<!> a
1.0f<!UNSUPPORTED!>foo<!> a
1.0<!UNSUPPORTED!>doo<!> a
1.0<!UNSUPPORTED!>ddoo<!> a
.0f<!UNSUPPORTED, UNRESOLVED_REFERENCE!>oo<!> a
.0f<!UNRESOLVED_REFERENCE, UNSUPPORTED!>oo<!> a
.0f<!UNSUPPORTED!>foo<!> a
.0<!UNSUPPORTED!>doo<!> a
.0<!UNSUPPORTED!>ddoo<!> a
@@ -40,10 +40,10 @@ fun test(a: Any) {
1<!UNSUPPORTED!>in<!> a
1.0<!UNSUPPORTED!>in<!> a
1.0f<!UNSUPPORTED!>in<!> a
1.0<!UNSUPPORTED, UNRESOLVED_REFERENCE!>din<!> a
1.0<!UNRESOLVED_REFERENCE, UNSUPPORTED!>din<!> a
.0<!UNSUPPORTED!>in<!> a
.0f<!UNSUPPORTED!>in<!> a
.0<!UNSUPPORTED, UNRESOLVED_REFERENCE!>din<!> a
.0<!UNRESOLVED_REFERENCE, UNSUPPORTED!>din<!> a
<!USELESS_IS_CHECK!>1<!UNSUPPORTED!>is<!> Any<!>
1<!UNSUPPORTED!>as<!> Any
+1 -1
View File
@@ -21,7 +21,7 @@ fun test(<!UNUSED_PARAMETER!>l<!> : <!PLATFORM_CLASS_MAPPED_TO_KOTLIN!>java.util
val <!UNUSED_VARIABLE!>f<!> : java.io.File? = null
Collections.<!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER, FUNCTION_CALL_EXPECTED!>emptyList<!>
Collections.<!FUNCTION_CALL_EXPECTED, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>emptyList<!>
Collections.<!FUNCTION_CALL_EXPECTED!>emptyList<Int><!>
Collections.emptyList<Int>()
Collections.<!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>emptyList<!>()
@@ -35,6 +35,6 @@ fun test(a: Any) {
if(<!USELESS_IS_CHECK!>"s"<!UNSUPPORTED!>is<!> Any<!>) {}
test("s"<!UNSUPPORTED!>as<!> Any)
a <!UNSUPPORTED!>foo<!>""<!UNSUPPORTED, SYNTAX!>1<!>
a <!UNSUPPORTED!>foo<!>""<!UNSUPPORTED, SYNTAX!>1.0<!>
a <!UNSUPPORTED!>foo<!>""<!SYNTAX, UNSUPPORTED!>1<!>
a <!UNSUPPORTED!>foo<!>""<!SYNTAX, UNSUPPORTED!>1.0<!>
}
+3 -3
View File
@@ -34,16 +34,16 @@ interface Test4 : T1 {}
interface Test5 : T1, <!SUPERTYPE_APPEARS_TWICE!>T1<!> {}
interface Test6 : <!INTERFACE_WITH_SUPERCLASS, FINAL_SUPERTYPE!>C1<!> {}
interface Test6 : <!FINAL_SUPERTYPE, INTERFACE_WITH_SUPERCLASS!>C1<!> {}
class CTest1() : OC1() {}
class CTest2 : <!SUPERTYPE_NOT_INITIALIZED!>C2<!> {}
class CTest3 : <!SUPERTYPE_NOT_INITIALIZED!>C2<!>, <!SUPERTYPE_NOT_INITIALIZED, MANY_CLASSES_IN_SUPERTYPE_LIST!>C3<!> {}
class CTest3 : <!SUPERTYPE_NOT_INITIALIZED!>C2<!>, <!MANY_CLASSES_IN_SUPERTYPE_LIST, SUPERTYPE_NOT_INITIALIZED!>C3<!> {}
class CTest4 : T1 {}
class CTest5 : T1, <!SUPERTYPE_APPEARS_TWICE!>T1<!> {}
class CTest6 : <!SUPERTYPE_NOT_INITIALIZED, FINAL_SUPERTYPE!>C1<!> {}
class CTest6 : <!FINAL_SUPERTYPE, SUPERTYPE_NOT_INITIALIZED!>C1<!> {}
@@ -1,5 +1,5 @@
// JAVAC_EXPECTED_FILE
interface MyTrait: <!PLATFORM_CLASS_MAPPED_TO_KOTLIN, INTERFACE_WITH_SUPERCLASS!>Object<!> {
interface MyTrait: <!INTERFACE_WITH_SUPERCLASS, PLATFORM_CLASS_MAPPED_TO_KOTLIN!>Object<!> {
override fun toString(): String
public override fun finalize()
<!CONFLICTING_INHERITED_JVM_DECLARATIONS!>public <!OVERRIDING_FINAL_MEMBER!>override<!> fun wait()<!>
@@ -3,4 +3,4 @@ import java.util.ArrayList
<!NI;NOT_AN_ANNOTATION_CLASS!>@<!OI;NONE_APPLICABLE!>ArrayList<!><Int>(<!NI;TOO_MANY_ARGUMENTS!>1<!>, <!NI;TOO_MANY_ARGUMENTS!>1<!>)<!> fun b() {}
@<!UNRESOLVED_REFERENCE!>Xoo<!>(<!UNRESOLVED_REFERENCE!>x<!>) fun c() {}
<!DEPRECATED_JAVA_ANNOTATION!>@java.lang.Deprecated(<!UNRESOLVED_REFERENCE, TOO_MANY_ARGUMENTS!>x<!>)<!> fun a() {}
<!DEPRECATED_JAVA_ANNOTATION!>@java.lang.Deprecated(<!TOO_MANY_ARGUMENTS, UNRESOLVED_REFERENCE!>x<!>)<!> fun a() {}
@@ -1,12 +1,12 @@
annotation class A1
annotation class A2(val some: Int = 12)
fun <<!WRONG_ANNOTATION_TARGET!>@A1<!> <!WRONG_ANNOTATION_TARGET!>@A2(3)<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A2<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A1(<!TOO_MANY_ARGUMENTS!>12<!>)<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A2(<!TYPE_MISMATCH!>"Test"<!>)<!> T> topFun() = 12
fun <<!WRONG_ANNOTATION_TARGET!>@A1<!> <!WRONG_ANNOTATION_TARGET!>@A2(3)<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A2<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A1(<!TOO_MANY_ARGUMENTS!>12<!>)<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A2(<!TYPE_MISMATCH!>"Test"<!>)<!> T> topFun() = 12
class SomeClass {
fun <<!WRONG_ANNOTATION_TARGET!>@A1<!> <!WRONG_ANNOTATION_TARGET!>@A2(3)<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A2<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A1(<!TOO_MANY_ARGUMENTS!>12<!>)<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A2(<!TYPE_MISMATCH!>"Test"<!>)<!> T> method() = 12
fun <<!WRONG_ANNOTATION_TARGET!>@A1<!> <!WRONG_ANNOTATION_TARGET!>@A2(3)<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A2<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A1(<!TOO_MANY_ARGUMENTS!>12<!>)<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A2(<!TYPE_MISMATCH!>"Test"<!>)<!> T> method() = 12
fun foo() {
fun <<!WRONG_ANNOTATION_TARGET!>@A1<!> <!WRONG_ANNOTATION_TARGET!>@A2(3)<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A2<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A1(<!TOO_MANY_ARGUMENTS!>12<!>)<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A2(<!TYPE_MISMATCH!>"Test"<!>)<!> T> innerFun() = 12
fun <<!WRONG_ANNOTATION_TARGET!>@A1<!> <!WRONG_ANNOTATION_TARGET!>@A2(3)<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A2<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A1(<!TOO_MANY_ARGUMENTS!>12<!>)<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A2(<!TYPE_MISMATCH!>"Test"<!>)<!> T> innerFun() = 12
}
}
@@ -1,10 +1,10 @@
annotation class A1
annotation class A2(val some: Int = 12)
val <<!WRONG_ANNOTATION_TARGET!>@A1<!> <!WRONG_ANNOTATION_TARGET!>@A2(3)<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A2<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A1(<!TOO_MANY_ARGUMENTS!>12<!>)<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A2(<!TYPE_MISMATCH!>"Test"<!>)<!> T> T.topProp: Int get() = 12
val <<!WRONG_ANNOTATION_TARGET!>@A1<!> <!WRONG_ANNOTATION_TARGET!>@A2(3)<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A2<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A1(<!TOO_MANY_ARGUMENTS!>12<!>)<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A2(<!TYPE_MISMATCH!>"Test"<!>)<!> T> T.topProp: Int get() = 12
class SomeClass {
val <<!WRONG_ANNOTATION_TARGET!>@A1<!> <!WRONG_ANNOTATION_TARGET!>@A2(3)<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A2<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A1(<!TOO_MANY_ARGUMENTS!>12<!>)<!> <!WRONG_ANNOTATION_TARGET, REPEATED_ANNOTATION!>@A2(<!TYPE_MISMATCH!>"Test"<!>)<!> T> T.field: Int get() = 12
val <<!WRONG_ANNOTATION_TARGET!>@A1<!> <!WRONG_ANNOTATION_TARGET!>@A2(3)<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A2<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A1(<!TOO_MANY_ARGUMENTS!>12<!>)<!> <!REPEATED_ANNOTATION, WRONG_ANNOTATION_TARGET!>@A2(<!TYPE_MISMATCH!>"Test"<!>)<!> T> T.field: Int get() = 12
fun foo() {
val <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS_WARNING!><<!WRONG_ANNOTATION_TARGET!>@<!DEBUG_INFO_MISSING_UNRESOLVED!>A1<!><!> <!WRONG_ANNOTATION_TARGET!>@<!DEBUG_INFO_MISSING_UNRESOLVED!>A2<!>(3)<!> <!WRONG_ANNOTATION_TARGET!>@<!DEBUG_INFO_MISSING_UNRESOLVED!>A2<!><!> <!WRONG_ANNOTATION_TARGET!>@<!DEBUG_INFO_MISSING_UNRESOLVED!>A1<!>(12)<!> <!WRONG_ANNOTATION_TARGET!>@<!DEBUG_INFO_MISSING_UNRESOLVED!>A2<!>("Test")<!> T><!> <!UNUSED_VARIABLE!>localVal<!> = 12
@@ -11,5 +11,5 @@ enum class MyEnum {
A
}
@AnnE(<!TYPE_MISMATCH, ANNOTATION_ARGUMENT_MUST_BE_CONST!>Test()<!>)
@AnnE(<!ANNOTATION_ARGUMENT_MUST_BE_CONST, TYPE_MISMATCH!>Test()<!>)
class Test2
@@ -6,6 +6,6 @@ fun test1(<!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@<!INAPPLICABLE_FILE_T
<!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@<!INAPPLICABLE_FILE_TARGET!>file<!> <!SYNTAX!>@<!>Suppress("")<!>
fun test2() {}
class OnType(x: <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET_ON_TYPE, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@file<!SYNTAX!><!> Suppress("")<!> Int)
class OnType(x: <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET_ON_TYPE!>@file<!SYNTAX!><!> Suppress("")<!> Int)
fun <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET_ON_TYPE, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@file : Suppress("")<!> Int.test3() {}
fun <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET_ON_TYPE!>@file : Suppress("")<!> Int.test3() {}
@@ -23,8 +23,8 @@ class Test {
fun <T> List<T>.testCallable4(): () -> Unit = <!RESERVED_SYNTAX_IN_CALLABLE_REFERENCE_LHS!>b<T><!>?::<!UNSAFE_CALL!>foo<!>
fun <T> List<T>.testClassLiteral1() = <!RESERVED_SYNTAX_IN_CALLABLE_REFERENCE_LHS!>a<T><!>::class
fun <T> List<T>.testClassLiteral2() = <!RESERVED_SYNTAX_IN_CALLABLE_REFERENCE_LHS, EXPRESSION_OF_NULLABLE_TYPE_IN_CLASS_LITERAL_LHS!>b<!>?::class
fun <T> List<T>.testClassLiteral3() = <!RESERVED_SYNTAX_IN_CALLABLE_REFERENCE_LHS, EXPRESSION_OF_NULLABLE_TYPE_IN_CLASS_LITERAL_LHS!>b<T, Any><!>::class
fun <T> List<T>.testClassLiteral2() = <!EXPRESSION_OF_NULLABLE_TYPE_IN_CLASS_LITERAL_LHS, RESERVED_SYNTAX_IN_CALLABLE_REFERENCE_LHS!>b<!>?::class
fun <T> List<T>.testClassLiteral3() = <!EXPRESSION_OF_NULLABLE_TYPE_IN_CLASS_LITERAL_LHS, RESERVED_SYNTAX_IN_CALLABLE_REFERENCE_LHS!>b<T, Any><!>::class
fun <T> List<T>.testUnresolved1() = <!UNRESOLVED_REFERENCE!>unresolved<!><T>::<!DEBUG_INFO_MISSING_UNRESOLVED!>foo<!>
fun <T> List<T>.testUnresolved2() = <!RESERVED_SYNTAX_IN_CALLABLE_REFERENCE_LHS!>a<<!UNRESOLVED_REFERENCE!>unresolved<!>><!>::foo
@@ -27,7 +27,7 @@ fun main() {
join(1, "4", *a, *<!TYPE_MISMATCH!>b<!>, "3")
join(a = *a, x = 1)
join(a = *<!TYPE_MISMATCH!>b<!>, x = 1)
join(a = <!TYPE_MISMATCH, ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR!>a<!>, x = 1)
join(a = <!ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR, TYPE_MISMATCH!>a<!>, x = 1)
joinG<String>(1, "2")
joinG<String>(<!NON_VARARG_SPREAD!>*<!>1, "2")
@@ -9,11 +9,11 @@ fun foo(<!UNUSED_PARAMETER!>i<!>: Int, <!UNUSED_PARAMETER!>s<!>: String) {}
fun test() {
bar(<!UNRESOLVED_REFERENCE, TOO_MANY_ARGUMENTS!>xx<!>)
bar(<!TOO_MANY_ARGUMENTS, UNRESOLVED_REFERENCE!>xx<!>)
bar <!TOO_MANY_ARGUMENTS!>{ }<!>
foo(<!TYPE_MISMATCH!>""<!>, <!CONSTANT_EXPECTED_TYPE_MISMATCH!>1<!>, <!UNRESOLVED_REFERENCE, TOO_MANY_ARGUMENTS!>xx<!>)
foo(<!TYPE_MISMATCH!>""<!>, <!CONSTANT_EXPECTED_TYPE_MISMATCH!>1<!>, <!TOO_MANY_ARGUMENTS, UNRESOLVED_REFERENCE!>xx<!>)
foo(<!NAMED_PARAMETER_NOT_FOUND!>r<!> = <!UNRESOLVED_REFERENCE!>xx<!>, i = <!TYPE_MISMATCH!>""<!>, s = "")
@@ -28,7 +28,7 @@ object O {
fun f() {
A.c
A.hashCode()
A().<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>Nested<!>
A().<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>Nested<!>
A.Nested()
A().Inner()
A.Companion.<!UNRESOLVED_REFERENCE!>Nested<!>
@@ -9,7 +9,7 @@ annotation class Foo(
annotation class Bar(
val a: Array<String> = <!NI;TYPE_MISMATCH, OI;TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH!>[' ']<!>,
val b: Array<String> = <!NI;TYPE_MISMATCH, OI;TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH, ANNOTATION_PARAMETER_DEFAULT_VALUE_MUST_BE_CONSTANT!>["", <!EMPTY_CHARACTER_LITERAL!>''<!>]<!>,
val b: Array<String> = <!ANNOTATION_PARAMETER_DEFAULT_VALUE_MUST_BE_CONSTANT, NI;TYPE_MISMATCH, OI;TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH!>["", <!EMPTY_CHARACTER_LITERAL!>''<!>]<!>,
val c: Array<String> = <!NI;TYPE_MISMATCH, OI;TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH!>[1]<!>
)
@@ -8,7 +8,7 @@ fun testBinary2() {
}
fun testElvis1() {
todo() <!USELESS_ELVIS, UNREACHABLE_CODE!>?: ""<!>
todo() <!UNREACHABLE_CODE, USELESS_ELVIS!>?: ""<!>
}
fun testElvis2(s: String?) {
@@ -50,6 +50,6 @@ fun test(arr: Array<Int>) {
}
while (true) {
break <!USELESS_ELVIS, UNREACHABLE_CODE!>?: null<!>
break <!UNREACHABLE_CODE, USELESS_ELVIS!>?: null<!>
}
}
@@ -9,12 +9,12 @@ class CustomDelegate {
class Kaboom() {
// Here and below we should have errors for simple AND delegated
init {
<!UNINITIALIZED_VARIABLE, DEBUG_INFO_LEAKING_THIS!>delegated<!>.hashCode()
<!DEBUG_INFO_LEAKING_THIS, UNINITIALIZED_VARIABLE!>delegated<!>.hashCode()
<!UNINITIALIZED_VARIABLE!>simple<!>.hashCode()
<!DEBUG_INFO_LEAKING_THIS!>withGetter<!>.hashCode()
}
val other = <!UNINITIALIZED_VARIABLE, DEBUG_INFO_LEAKING_THIS!>delegated<!>
val other = <!DEBUG_INFO_LEAKING_THIS, UNINITIALIZED_VARIABLE!>delegated<!>
val another = <!UNINITIALIZED_VARIABLE!>simple<!>
@@ -98,7 +98,7 @@ fun testImplicitCoercion() {
3 -> {
<!IMPLICIT_CAST_TO_ANY!><!UNUSED_VALUE!>z =<!> 34<!>
}
else -> <!UNUSED_CHANGED_VALUE, IMPLICIT_CAST_TO_ANY!>z--<!>
else -> <!IMPLICIT_CAST_TO_ANY, UNUSED_CHANGED_VALUE!>z--<!>
}
var <!UNUSED_VARIABLE!>iff<!> = <!INVALID_IF_AS_EXPRESSION!>if<!> (true) {
@@ -108,7 +108,7 @@ fun testImplicitCoercion() {
val <!UNUSED_VARIABLE!>h<!> = if (false) <!IMPLICIT_CAST_TO_ANY!>4<!> else <!IMPLICIT_CAST_TO_ANY!>{}<!>
bar(<!NI;TYPE_MISMATCH!>if (true) {
<!NI;CONSTANT_EXPECTED_TYPE_MISMATCH, CONSTANT_EXPECTED_TYPE_MISMATCH!>4<!>
<!CONSTANT_EXPECTED_TYPE_MISMATCH, NI;CONSTANT_EXPECTED_TYPE_MISMATCH!>4<!>
}
else {
<!UNUSED_VALUE!>z =<!> 342
@@ -10,7 +10,7 @@ fun f() = object : ClassData {
fun g() = object : ClassData {
init {
if (true) {
<!RETURN_NOT_ALLOWED, RETURN_IN_FUNCTION_WITH_EXPRESSION_BODY!>return<!> 0
<!RETURN_IN_FUNCTION_WITH_EXPRESSION_BODY, RETURN_NOT_ALLOWED!>return<!> 0
}
}
@@ -8,11 +8,11 @@ object WithFunctionInBase {
public class C {
// error-scope
val data: <!DEPRECATED_ACCESS_BY_SHORT_NAME, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>Data<!> = Data()
val data: <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, DEPRECATED_ACCESS_BY_SHORT_NAME!>Data<!> = Data()
open class <!CYCLIC_SCOPES_WITH_COMPANION!>Base<!>() {
// error-scope
fun foo(): <!DEPRECATED_ACCESS_BY_SHORT_NAME, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>Int<!> = 42
fun foo(): <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, DEPRECATED_ACCESS_BY_SHORT_NAME!>Int<!> = 42
}
companion <!CYCLIC_SCOPES_WITH_COMPANION!>object<!> : DerivedAbstract()
@@ -30,11 +30,11 @@ object WithPropertyInBase {
open class <!CYCLIC_SCOPES_WITH_COMPANION!>Base<!>() {
// error-scope
val foo: <!DEPRECATED_ACCESS_BY_SHORT_NAME, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>Int<!> = 42
val foo: <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, DEPRECATED_ACCESS_BY_SHORT_NAME!>Int<!> = 42
}
// error-scope
val data: <!DEPRECATED_ACCESS_BY_SHORT_NAME, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>Data<!> = Data()
val data: <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, DEPRECATED_ACCESS_BY_SHORT_NAME!>Data<!> = Data()
companion <!CYCLIC_SCOPES_WITH_COMPANION!>object<!> : DerivedAbstract()
}
@@ -1,3 +1,3 @@
data class My(val x: Int, <!DATA_CLASS_VARARG_PARAMETER!>vararg val y: String<!>)
data class Your(<!DATA_CLASS_VARARG_PARAMETER, DATA_CLASS_NOT_PROPERTY_PARAMETER!>vararg <!UNUSED_PARAMETER!>z<!>: String<!>)
data class Your(<!DATA_CLASS_NOT_PROPERTY_PARAMETER, DATA_CLASS_VARARG_PARAMETER!>vararg <!UNUSED_PARAMETER!>z<!>: String<!>)
@@ -4,7 +4,7 @@ fun foo() {
val x: Int? = null
val a = Array<Int>(3, {0})
if (x != null) bar(a[<!DEBUG_INFO_SMARTCAST!>x<!>]) else bar(a[<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!>])
if (x != null) bar(a[<!DEBUG_INFO_SMARTCAST!>x<!>]) else bar(a[<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>x<!>])
bar(a[if (x == null) 0 else <!DEBUG_INFO_SMARTCAST!>x<!>])
bar(a[<!TYPE_MISMATCH!>x<!>])
@@ -6,6 +6,6 @@ fun foo() {
val x: Int? = null
bar(1 + (if (x == null) 0 else x))
bar(<!NI;TYPE_MISMATCH!>if (x == null) <!NI;TYPE_MISMATCH, DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>x<!> else x<!>)
bar(<!NI;TYPE_MISMATCH!>if (x == null) <!DEBUG_INFO_CONSTANT, NI;TYPE_MISMATCH, TYPE_MISMATCH!>x<!> else x<!>)
if (x != null) bar(x + x/(x-x*x))
}
@@ -17,14 +17,14 @@ fun foo() {
if (<!SENSELESS_COMPARISON!>x == null<!>) bar(x) else bar(x)
bar(bar(x))
} else if (<!SENSELESS_COMPARISON!><!DEBUG_INFO_CONSTANT!>x<!> == null<!>) {
bar(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!>)
bar(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>x<!>)
if (<!SENSELESS_COMPARISON!><!DEBUG_INFO_CONSTANT!>x<!> != null<!>) {
bar(x)
if (<!SENSELESS_COMPARISON!>x == null<!>) bar(x)
if (<!SENSELESS_COMPARISON!>x == null<!>) bar(x) else bar(x)
bar(bar(x) + bar(x))
} else if (<!SENSELESS_COMPARISON!><!DEBUG_INFO_CONSTANT!>x<!> == null<!>) {
bar(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!>)
bar(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>x<!>)
}
}
@@ -12,5 +12,5 @@ fun foo() {
do {
bar(<!TYPE_MISMATCH!>y<!>)
} while (y != null)
bar(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>y<!>)
bar(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>y<!>)
}
@@ -6,7 +6,7 @@ fun foo() {
bar(if (x == null) 0 else <!DEBUG_INFO_SMARTCAST!>x<!>)
if (x == null) {
bar(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!>)
bar(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>x<!>)
return
} else {
bar(<!DEBUG_INFO_SMARTCAST!>x<!>)
@@ -7,6 +7,6 @@ fun foo() {
val <!UNUSED_VARIABLE!>a<!> = object {
fun baz() = bar(if (x == null) 0 else <!DEBUG_INFO_SMARTCAST!>x<!>)
fun quux(): Int = <!NI;TYPE_MISMATCH!>if (x == null) <!OI;TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!> else <!DEBUG_INFO_SMARTCAST!>x<!><!>
fun quux(): Int = <!NI;TYPE_MISMATCH!>if (x == null) <!DEBUG_INFO_CONSTANT, OI;TYPE_MISMATCH!>x<!> else <!DEBUG_INFO_SMARTCAST!>x<!><!>
}
}
@@ -9,10 +9,10 @@ fun foo(): Int {
if (x != null) return x
val y: Int? = null
if (y == null) return <!NI;TYPE_MISMATCH, NI;TYPE_MISMATCH!>if (<!SENSELESS_COMPARISON!><!DEBUG_INFO_CONSTANT!>y<!> != null<!>) y else <!OI;TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>y<!><!>
if (y == null) return <!NI;TYPE_MISMATCH, NI;TYPE_MISMATCH!>if (<!SENSELESS_COMPARISON!><!DEBUG_INFO_CONSTANT!>y<!> != null<!>) y else <!DEBUG_INFO_CONSTANT, OI;TYPE_MISMATCH!>y<!><!>
val z: Int? = null
if (z != null) return if (<!SENSELESS_COMPARISON!>z == null<!>) z else z
return <!NI;TYPE_MISMATCH, DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>z<!>
return <!DEBUG_INFO_CONSTANT, NI;TYPE_MISMATCH, TYPE_MISMATCH!>z<!>
}
@@ -16,6 +16,6 @@ class Derived : Base() {
val y: Int? = null
if (y != null) super.bar(this.baz(<!DEBUG_INFO_SMARTCAST!>y<!>))
else this.baz(super.bar(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>y<!>))
else this.baz(super.bar(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>y<!>))
}
}
@@ -3,7 +3,7 @@ fun bar(x: Int): RuntimeException = RuntimeException(x.toString())
fun foo() {
val x: Int? = null
if (x == null) throw bar(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!>)
if (x == null) throw bar(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>x<!>)
throw bar(<!DEBUG_INFO_SMARTCAST!>x<!>)
<!UNREACHABLE_CODE!>throw bar(<!DEBUG_INFO_SMARTCAST!>x<!>)<!>
}
@@ -3,7 +3,7 @@ fun bar(x: Int): Int = x + 1
fun foo() {
val x: Int? = null
while (x == null) {
bar(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!>)
bar(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>x<!>)
}
bar(<!DEBUG_INFO_SMARTCAST!>x<!>)
@@ -11,11 +11,11 @@ fun foo() {
while (y != null) {
bar(<!DEBUG_INFO_SMARTCAST!>y<!>)
}
bar(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>y<!>)
bar(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>y<!>)
val z: Int? = null
while (z == null) {
bar(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>z<!>)
bar(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>z<!>)
break
}
bar(<!TYPE_MISMATCH!>z<!>)
@@ -3,17 +3,17 @@ annotation class a
interface A
interface B
<!FUNCTION_DECLARATION_WITH_NO_NAME, CONFLICTING_OVERLOADS!>fun ()<!> {}
<!FUNCTION_DECLARATION_WITH_NO_NAME, CONFLICTING_OVERLOADS!>fun A.()<!> {}
<!CONFLICTING_OVERLOADS, FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {}
<!CONFLICTING_OVERLOADS, FUNCTION_DECLARATION_WITH_NO_NAME!>fun A.()<!> {}
<!FUNCTION_DECLARATION_WITH_NO_NAME, CONFLICTING_OVERLOADS!>@a fun ()<!> {}
<!FUNCTION_DECLARATION_WITH_NO_NAME, CONFLICTING_OVERLOADS!>fun @a A.()<!> {}
<!CONFLICTING_OVERLOADS, FUNCTION_DECLARATION_WITH_NO_NAME!>@a fun ()<!> {}
<!CONFLICTING_OVERLOADS, FUNCTION_DECLARATION_WITH_NO_NAME!>fun @a A.()<!> {}
class Outer {
<!FUNCTION_DECLARATION_WITH_NO_NAME, CONFLICTING_OVERLOADS!>fun ()<!> {}
<!CONFLICTING_OVERLOADS, FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {}
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun B.()<!> {}
<!FUNCTION_DECLARATION_WITH_NO_NAME, CONFLICTING_OVERLOADS!>@a fun ()<!> {}
<!CONFLICTING_OVERLOADS, FUNCTION_DECLARATION_WITH_NO_NAME!>@a fun ()<!> {}
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun @a A.()<!> {}
}
@@ -1,3 +1,3 @@
fun test() {
val <!VARIABLE_WITH_NO_TYPE_NO_INITIALIZER, UNUSED_VARIABLE!>a<!>
val <!UNUSED_VARIABLE, VARIABLE_WITH_NO_TYPE_NO_INITIALIZER!>a<!>
}
@@ -1,8 +1,8 @@
// !WITH_NEW_INFERENCE
fun useDeclaredVariables() {
for ((a, b)<!SYNTAX!><!>) {
<!UNUSED_EXPRESSION, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>a<!>
<!UNUSED_EXPRESSION, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>b<!>
<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, UNUSED_EXPRESSION!>a<!>
<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, UNUSED_EXPRESSION!>b<!>
}
}
@@ -1,7 +1,7 @@
fun useDeclaredVariables() {
val (a, b) = <!UNRESOLVED_REFERENCE!>unresolved<!>
<!UNUSED_EXPRESSION, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>a<!>
<!UNUSED_EXPRESSION, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>b<!>
<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, UNUSED_EXPRESSION!>a<!>
<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, UNUSED_EXPRESSION!>b<!>
}
fun checkersShouldRun() {
@@ -1,7 +1,7 @@
fun useDeclaredVariables() {
<!INITIALIZER_REQUIRED_FOR_DESTRUCTURING_DECLARATION!>val (a, b)<!>
<!UNUSED_EXPRESSION, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>a<!>
<!UNUSED_EXPRESSION, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>b<!>
<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, UNUSED_EXPRESSION!>a<!>
<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, UNUSED_EXPRESSION!>b<!>
}
fun checkersShouldRun() {
@@ -43,7 +43,7 @@ fun test() {
val (_, <!NAME_SHADOWING, REDECLARATION!>`_`<!>) = A()
foo(<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS, TYPE_MISMATCH!>_<!>, y)
foo(<!TYPE_MISMATCH, UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>, y)
val (<!UNUSED_VARIABLE!>unused<!>, _) = A()
}
@@ -6,7 +6,7 @@ class T {
fun foo() {
<!WRONG_MODIFIER_TARGET!>public<!> val <!UNUSED_VARIABLE!>i<!> = 11
<!WRONG_MODIFIER_TARGET!>abstract<!> val <!VARIABLE_WITH_NO_TYPE_NO_INITIALIZER, UNUSED_VARIABLE!>j<!>
<!WRONG_MODIFIER_TARGET!>abstract<!> val <!UNUSED_VARIABLE, VARIABLE_WITH_NO_TYPE_NO_INITIALIZER!>j<!>
<!WRONG_MODIFIER_TARGET!>override<!> fun T.<!EXTENSION_SHADOWED_BY_MEMBER!>baz<!>() = 2
<!WRONG_MODIFIER_TARGET!>private<!> fun bar() = 2
}
@@ -11,7 +11,7 @@ operator fun <T> String.provideDelegate(receiver: Any?, p: Any) = Delegate<T>()
var test1: String by <!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>Delegate<!>()
var test2: String by Delegate<String>()
var test3: String by <!DELEGATE_SPECIAL_FUNCTION_NONE_APPLICABLE, DELEGATE_SPECIAL_FUNCTION_MISSING, DELEGATE_SPECIAL_FUNCTION_MISSING!>"OK"<!>
var test3: String by <!DELEGATE_SPECIAL_FUNCTION_MISSING, DELEGATE_SPECIAL_FUNCTION_MISSING, DELEGATE_SPECIAL_FUNCTION_NONE_APPLICABLE!>"OK"<!>
var test4: String by "OK".<!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>provideDelegate<!>(null, "")
var test5: String by "OK".provideDelegate<String>(null, "")
@@ -8,7 +8,7 @@ val a by <!NI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, OI;TYPECHECKER_HAS_RUN_INTO_RE
val b by Delegate(<!OI;TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>b<!>)
val c by <!UNINITIALIZED_VARIABLE, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>d<!>
val c by <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, UNINITIALIZED_VARIABLE!>d<!>
val d by <!NI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, OI;TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>c<!>
class Delegate(i: Int) {
@@ -1,4 +1,4 @@
// JAVAC_EXPECTED_FILE
class TestIface(r : Runnable) : Runnable by r {}
class TestObject(o : <!PLATFORM_CLASS_MAPPED_TO_KOTLIN!>Object<!>) : <!PLATFORM_CLASS_MAPPED_TO_KOTLIN, DELEGATION_NOT_TO_INTERFACE!>Object<!> by o {}
class TestObject(o : <!PLATFORM_CLASS_MAPPED_TO_KOTLIN!>Object<!>) : <!DELEGATION_NOT_TO_INTERFACE, PLATFORM_CLASS_MAPPED_TO_KOTLIN!>Object<!> by o {}
@@ -6,7 +6,7 @@ open class IDerived1 : IBase1 {
override fun foo(): String = "1"
}
<!RETURN_TYPE_MISMATCH_BY_DELEGATION, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>class Broken1<!>(val b: IBase1) : IBase1 by b, IDerived1()
<!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, RETURN_TYPE_MISMATCH_BY_DELEGATION!>class Broken1<!>(val b: IBase1) : IBase1 by b, IDerived1()
interface IBase2 {
val foo: Any
@@ -16,4 +16,4 @@ open class IDerived2 : IBase2 {
override val foo: String = "2"
}
<!PROPERTY_TYPE_MISMATCH_BY_DELEGATION, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>class Broken2<!>(val b: IBase2) : IBase2 by b, IDerived2()
<!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, PROPERTY_TYPE_MISMATCH_BY_DELEGATION!>class Broken2<!>(val b: IBase2) : IBase2 by b, IDerived2()
@@ -23,19 +23,19 @@ class ImplAll : Base, Base2, Base3 {
}
fun box(): String {
<!MANY_IMPL_MEMBER_NOT_IMPLEMENTED, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>object<!> : Base2, Base3, Base by Impl() {
<!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>object<!> : Base2, Base3, Base by Impl() {
}
<!MANY_IMPL_MEMBER_NOT_IMPLEMENTED, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>object<!> : Base2 by Impl2(), Base3, Base {
<!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>object<!> : Base2 by Impl2(), Base3, Base {
}
<!MANY_IMPL_MEMBER_NOT_IMPLEMENTED, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>object<!> : Base2, Base3 by Impl3(), Base {
<!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>object<!> : Base2, Base3 by Impl3(), Base {
}
<!MANY_IMPL_MEMBER_NOT_IMPLEMENTED, MANY_IMPL_MEMBER_NOT_IMPLEMENTED, MANY_IMPL_MEMBER_NOT_IMPLEMENTED, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>object<!> : Base2 by Impl2(), Base3 by Impl3(), Base by Impl() {
<!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, MANY_IMPL_MEMBER_NOT_IMPLEMENTED, MANY_IMPL_MEMBER_NOT_IMPLEMENTED, MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>object<!> : Base2 by Impl2(), Base3 by Impl3(), Base by Impl() {
}
@@ -14,7 +14,7 @@ class Delegate : Derived {
public open class MyClass : Base by Delegate()
fun box(): String {
<!MANY_IMPL_MEMBER_NOT_IMPLEMENTED, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>object<!> : MyClass(), Derived by Delegate() {
<!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>object<!> : MyClass(), Derived by Delegate() {
}
return "OK"
}
@@ -23,6 +23,6 @@ public abstract class MyClass : Base1, Base2 {
}
}
<!MANY_IMPL_MEMBER_NOT_IMPLEMENTED, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>class A<!> : MyClass(), Base1 by Delegate1(), <!SUPERTYPE_APPEARS_TWICE!>Base1<!> by <!NI;TYPE_MISMATCH, TYPE_MISMATCH!>Delegate2()<!> {
<!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>class A<!> : MyClass(), Base1 by Delegate1(), <!SUPERTYPE_APPEARS_TWICE!>Base1<!> by <!NI;TYPE_MISMATCH, TYPE_MISMATCH!>Delegate2()<!> {
}
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -DUPLICATE_CLASS_NAMES
<!FUNCTION_DECLARATION_WITH_NO_NAME, CONFLICTING_OVERLOADS!>fun ()<!> {
<!CONFLICTING_OVERLOADS, FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {
}
@@ -20,7 +20,7 @@ public class J {
import p.*
class K: J.C() {
fun <!UNSUPPORTED, DYNAMIC_RECEIVER_NOT_ALLOWED!>dynamic<!>.test() {
fun <!DYNAMIC_RECEIVER_NOT_ALLOWED, UNSUPPORTED!>dynamic<!>.test() {
<!DEBUG_INFO_DYNAMIC!>sam<!>(null)
<!DEBUG_INFO_DYNAMIC!>sam<!>(
name = null,
@@ -1,7 +1,7 @@
// FILE: test.kt
enum class MyEnum(): <!CLASS_IN_SUPERTYPE_FOR_ENUM!>MyClass<!>() {}
enum class MyEnum2(): MyTrait {}
enum class MyEnum3(): <!INVISIBLE_MEMBER, CLASS_IN_SUPERTYPE_FOR_ENUM, FINAL_SUPERTYPE!>MyEnumBase<!>() {}
enum class MyEnum3(): <!CLASS_IN_SUPERTYPE_FOR_ENUM, FINAL_SUPERTYPE, INVISIBLE_MEMBER!>MyEnumBase<!>() {}
open class MyClass() {}
@@ -8,6 +8,6 @@ public enum MyJavaEnum {}
enum class MyEnum2() {}
class MyClass(): <!INVISIBLE_MEMBER, FINAL_SUPERTYPE!>MyEnum2<!>() {}
class MyClass(): <!FINAL_SUPERTYPE, INVISIBLE_MEMBER!>MyEnum2<!>() {}
class MyClass2(): <!FINAL_SUPERTYPE!>MyJavaEnum<!>() {}
@@ -12,7 +12,7 @@ val a7 = <!DIVISION_BY_ZERO!>1.div(a1)<!>
val a8 = 1.div(a2)
val a9 = 2 * (<!DIVISION_BY_ZERO!>1.div(0)<!>)
val b1: Byte = <!NI;TYPE_MISMATCH, DIVISION_BY_ZERO, TYPE_MISMATCH!>1 / 0<!>
@Ann(<!DIVISION_BY_ZERO, ANNOTATION_ARGUMENT_MUST_BE_CONST!>1 / 0<!>) val b2 = 1
val b1: Byte = <!DIVISION_BY_ZERO, NI;TYPE_MISMATCH, TYPE_MISMATCH!>1 / 0<!>
@Ann(<!ANNOTATION_ARGUMENT_MUST_BE_CONST, DIVISION_BY_ZERO!>1 / 0<!>) val b2 = 1
annotation class Ann(val i : Int)
@@ -26,7 +26,7 @@ fun test1() {
<!OI;EXPECTED_PARAMETERS_NUMBER_MISMATCH!><!UNUSED_ANONYMOUS_PARAMETER!>x<!>, <!OI;CANNOT_INFER_PARAMETER_TYPE, UNUSED_ANONYMOUS_PARAMETER!>y<!><!> -> ""
}<!>
foo1 <!NI;TYPE_MISMATCH!>{
<!OI;EXPECTED_PARAMETERS_NUMBER_MISMATCH!><!>-> <!NI;CONSTANT_EXPECTED_TYPE_MISMATCH, NI;CONSTANT_EXPECTED_TYPE_MISMATCH, CONSTANT_EXPECTED_TYPE_MISMATCH!>42<!>
<!OI;EXPECTED_PARAMETERS_NUMBER_MISMATCH!><!>-> <!CONSTANT_EXPECTED_TYPE_MISMATCH, NI;CONSTANT_EXPECTED_TYPE_MISMATCH, NI;CONSTANT_EXPECTED_TYPE_MISMATCH!>42<!>
}<!>
@@ -40,6 +40,6 @@ fun test1() {
<!OI;EXPECTED_PARAMETERS_NUMBER_MISMATCH, UNUSED_ANONYMOUS_PARAMETER!>x<!> -> ""
}<!>
foo2 <!NI;TYPE_MISMATCH!>{
<!OI;EXPECTED_PARAMETERS_NUMBER_MISMATCH!><!>-> <!NI;CONSTANT_EXPECTED_TYPE_MISMATCH, NI;CONSTANT_EXPECTED_TYPE_MISMATCH, CONSTANT_EXPECTED_TYPE_MISMATCH!>42<!>
<!OI;EXPECTED_PARAMETERS_NUMBER_MISMATCH!><!>-> <!CONSTANT_EXPECTED_TYPE_MISMATCH, NI;CONSTANT_EXPECTED_TYPE_MISMATCH, NI;CONSTANT_EXPECTED_TYPE_MISMATCH!>42<!>
}<!>
}
@@ -5,5 +5,5 @@ val a = l@ {
val b = l@ {
if ("" == "OK") return@l
return@l <!UNRESOLVED_REFERENCE, RETURN_TYPE_MISMATCH!>r<!>
return@l <!RETURN_TYPE_MISMATCH, UNRESOLVED_REFERENCE!>r<!>
}
@@ -17,7 +17,7 @@ fun foo(x: Any?, y: C<*>) {
with(x) {
if (this is C<*>) {
<!OI;MEMBER_PROJECTED_OUT, DEBUG_INFO_IMPLICIT_RECEIVER_SMARTCAST!>bindTo<!>(<!NI;TYPE_MISMATCH!>""<!>)
<!DEBUG_INFO_IMPLICIT_RECEIVER_SMARTCAST, OI;MEMBER_PROJECTED_OUT!>bindTo<!>(<!NI;TYPE_MISMATCH!>""<!>)
}
}
}
@@ -21,7 +21,7 @@ fun all(a: String) {}
// FILE: 2.kt
import k.<!INVISIBLE_REFERENCE, DEBUG_INFO_MISSING_UNRESOLVED!>zero<!>
import k.<!DEBUG_INFO_MISSING_UNRESOLVED, INVISIBLE_REFERENCE!>zero<!>
import k.one
import k.two
import k.all
@@ -8,4 +8,4 @@ package a
import pack1.*
private class X : <!INVISIBLE_REFERENCE, INVISIBLE_MEMBER!>SomeClass<!>()
private class X : <!INVISIBLE_MEMBER, INVISIBLE_REFERENCE!>SomeClass<!>()
@@ -11,4 +11,4 @@ package a
import pack1.SomeClass.*
private class X : <!INVISIBLE_REFERENCE, INVISIBLE_MEMBER, FINAL_SUPERTYPE!>N<!>()
private class X : <!FINAL_SUPERTYPE, INVISIBLE_MEMBER, INVISIBLE_REFERENCE!>N<!>()
@@ -7,7 +7,7 @@ interface A<T>
fun <T> infer(<!UNUSED_PARAMETER!>a<!>: A<T>) : T {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
fun test(nothing: Nothing?) {
<!NI;UNREACHABLE_CODE!>val <!UNUSED_VARIABLE!>i<!> =<!> <!OI;TYPE_INFERENCE_INCORPORATION_ERROR!>infer<!>(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>nothing<!>)
<!NI;UNREACHABLE_CODE!>val <!UNUSED_VARIABLE!>i<!> =<!> <!OI;TYPE_INFERENCE_INCORPORATION_ERROR!>infer<!>(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>nothing<!>)
}
fun sum(<!UNUSED_PARAMETER!>a<!> : IntArray) : Int {
@@ -10,7 +10,7 @@ class Foo {
fun x(f : Foo) {
f.<!FUNCTION_CALL_EXPECTED!>prop<!>
f.<!NO_VALUE_FOR_PARAMETER, FUNCTION_CALL_EXPECTED!>bar<!>
f.<!FUNCTION_CALL_EXPECTED, NO_VALUE_FOR_PARAMETER!>bar<!>
f.<!FUNCTION_EXPECTED!>a<!>()
<!UNRESOLVED_REFERENCE!>c<!>()
@@ -4,7 +4,7 @@ inline fun inlineFunWithInvoke(s: (p: Int) -> Unit) {
(s)(11)
(s).invoke(11)
(s) <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
(<!USAGE_IS_NOT_INLINABLE, UNUSED_EXPRESSION!>s<!>)
(<!UNUSED_EXPRESSION, USAGE_IS_NOT_INLINABLE!>s<!>)
}
<!NOTHING_TO_INLINE!>inline<!> fun Function1<Int, Unit>.inlineExt() {
@@ -18,7 +18,7 @@ inline fun inlineFunWithInvoke2(s: (p: Int) -> Unit) {
(((s)))(11)
(((s))).invoke(11)
(((s))) <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
(((<!USAGE_IS_NOT_INLINABLE, UNUSED_EXPRESSION!>s<!>)))
(((<!UNUSED_EXPRESSION, USAGE_IS_NOT_INLINABLE!>s<!>)))
}
inline fun propagation(s: (p: Int) -> Unit) {
+3 -3
View File
@@ -22,8 +22,8 @@ inline fun inlineFunWithInvoke(s: (p: Int) -> Unit, ext: Int.(p: Int) -> Unit) {
11.ext(11)
11 <!INFIX_MODIFIER_REQUIRED!>ext<!> 11
<!USAGE_IS_NOT_INLINABLE, UNUSED_EXPRESSION!>s<!>
<!USAGE_IS_NOT_INLINABLE, UNUSED_EXPRESSION!>ext<!>
<!UNUSED_EXPRESSION, USAGE_IS_NOT_INLINABLE!>s<!>
<!UNUSED_EXPRESSION, USAGE_IS_NOT_INLINABLE!>ext<!>
11
}
}
@@ -38,7 +38,7 @@ inline fun inlineFunWithInvokeNonInline(noinline s: (p: Int) -> Unit, ext: Int.(
11 <!INFIX_MODIFIER_REQUIRED!>ext<!> 11
<!UNUSED_EXPRESSION!>s<!>
<!USAGE_IS_NOT_INLINABLE, UNUSED_EXPRESSION!>ext<!>
<!UNUSED_EXPRESSION, USAGE_IS_NOT_INLINABLE!>ext<!>
11
}
@@ -1,6 +1,6 @@
class Test {
@`InnerAnnotation` <!REPEATED_ANNOTATION!>@InnerAnnotation<!>
companion <!CYCLIC_SCOPES_WITH_COMPANION, CYCLIC_SCOPES_WITH_COMPANION!>object<!> : StaticClass(), <!UNRESOLVED_REFERENCE, MANY_CLASSES_IN_SUPERTYPE_LIST, DEBUG_INFO_UNRESOLVED_WITH_TARGET!>InnerClass<!>() {
companion <!CYCLIC_SCOPES_WITH_COMPANION, CYCLIC_SCOPES_WITH_COMPANION!>object<!> : StaticClass(), <!DEBUG_INFO_UNRESOLVED_WITH_TARGET, MANY_CLASSES_IN_SUPERTYPE_LIST, UNRESOLVED_REFERENCE!>InnerClass<!>() {
}
@@ -5,8 +5,8 @@ class TestSome<P> {
}
class Test {
companion <!CYCLIC_SCOPES_WITH_COMPANION!>object<!> : <!UNRESOLVED_REFERENCE, DEBUG_INFO_UNRESOLVED_WITH_TARGET!>InnerClass<!>() {
val a = object: <!UNRESOLVED_REFERENCE, DEBUG_INFO_UNRESOLVED_WITH_TARGET!>InnerClass<!>() {
companion <!CYCLIC_SCOPES_WITH_COMPANION!>object<!> : <!DEBUG_INFO_UNRESOLVED_WITH_TARGET, UNRESOLVED_REFERENCE!>InnerClass<!>() {
val a = object: <!DEBUG_INFO_UNRESOLVED_WITH_TARGET, UNRESOLVED_REFERENCE!>InnerClass<!>() {
}
fun more(): InnerClass {
@@ -5,8 +5,8 @@ class TestSome<P> {
}
class Test {
object Some : <!UNRESOLVED_REFERENCE, DEBUG_INFO_UNRESOLVED_WITH_TARGET!>InnerClass<!>() {
val a = object: <!UNRESOLVED_REFERENCE, DEBUG_INFO_UNRESOLVED_WITH_TARGET!>InnerClass<!>() {
object Some : <!DEBUG_INFO_UNRESOLVED_WITH_TARGET, UNRESOLVED_REFERENCE!>InnerClass<!>() {
val a = object: <!DEBUG_INFO_UNRESOLVED_WITH_TARGET, UNRESOLVED_REFERENCE!>InnerClass<!>() {
}
fun more(): InnerClass {
+1 -1
View File
@@ -7,7 +7,7 @@ class Outer {
class Nested1 : OpenNested()
class Nested2 : <!FINAL_SUPERTYPE!>FinalNested<!>()
class Nested3 : <!UNRESOLVED_REFERENCE, DEBUG_INFO_UNRESOLVED_WITH_TARGET!>OpenInner<!>()
class Nested3 : <!DEBUG_INFO_UNRESOLVED_WITH_TARGET, UNRESOLVED_REFERENCE!>OpenInner<!>()
class Nested4 : <!FINAL_SUPERTYPE!>FinalInner<!>()
inner class Inner1 : OpenNested()
@@ -25,28 +25,28 @@ object Obj {
fun test(with: WithClassObject, without: WithoutClassObject, obj: Obj) {
with.<!UNRESOLVED_REFERENCE!>Nested<!>()
with.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedWithClassObject<!>
with.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>NestedWithClassObject<!>
with.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>()
with.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedWithClassObject<!>.foo()
with.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedEnum<!>.A
with.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>NestedWithClassObject<!>.foo()
with.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>NestedEnum<!>.A
with.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedObj<!>
with.<!RESOLUTION_TO_CLASSIFIER!>NestedObj<!>()
with.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedObj<!>.foo()
without.<!UNRESOLVED_REFERENCE!>Nested<!>()
without.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedWithClassObject<!>
without.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>NestedWithClassObject<!>
without.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>()
without.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedWithClassObject<!>.foo()
without.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedEnum<!>.A
without.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>NestedWithClassObject<!>.foo()
without.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>NestedEnum<!>.A
without.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedObj<!>
without.<!RESOLUTION_TO_CLASSIFIER!>NestedObj<!>()
without.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedObj<!>.foo()
obj.<!UNRESOLVED_REFERENCE!>Nested<!>()
obj.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedWithClassObject<!>
obj.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>NestedWithClassObject<!>
obj.<!UNRESOLVED_REFERENCE!>NestedWithClassObject<!>()
obj.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedWithClassObject<!>.foo()
obj.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedEnum<!>.A
obj.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>NestedWithClassObject<!>.foo()
obj.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>NestedEnum<!>.A
obj.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedObj<!>
obj.<!RESOLUTION_TO_CLASSIFIER!>NestedObj<!>()
obj.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>NestedObj<!>.foo()
@@ -8,5 +8,5 @@ public class X {
class A : X() {
// TODO: DEBUG_INFO_MISSING_UNRESOLVED indicates a bug here
override fun getFoo() = <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM, DEBUG_INFO_MISSING_UNRESOLVED!>foo<!>
override fun getFoo() = <!DEBUG_INFO_MISSING_UNRESOLVED, TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>foo<!>
}
+1 -1
View File
@@ -1,5 +1,5 @@
// !WITH_NEW_INFERENCE
fun f(c: LongRange): Int {
return c.<!NI;TYPE_MISMATCH, FUNCTION_EXPECTED!>start<!>()
return c.<!FUNCTION_EXPECTED, NI;TYPE_MISMATCH!>start<!>()
}
@@ -87,7 +87,7 @@ abstract class IllegalModifiers6() {
<!WRONG_MODIFIER_TARGET!>public<!> <!WRONG_ANNOTATION_TARGET!>@annotated<!> init {}
<!WRONG_MODIFIER_TARGET!>private<!> <!WRONG_ANNOTATION_TARGET, NOT_AN_ANNOTATION_CLASS!>@IllegalModifiers6()<!> init {}
<!WRONG_MODIFIER_TARGET!>private<!> <!NOT_AN_ANNOTATION_CLASS, WRONG_ANNOTATION_TARGET!>@IllegalModifiers6()<!> init {}
}
// strange inappropriate modifiers usages
@@ -13,5 +13,5 @@ enum class MyEnum { A }
const val unresolvedConst1 = <!UNRESOLVED_REFERENCE!>Unresolved<!>
<!WRONG_MODIFIER_TARGET!>const<!> var unresolvedConst2 = <!UNRESOLVED_REFERENCE!>Unresolved<!>
const val unresolvedConst3 = <!UNRESOLVED_REFERENCE, PROPERTY_INITIALIZER_NO_BACKING_FIELD!>Unresolved<!>
const val unresolvedConst3 = <!PROPERTY_INITIALIZER_NO_BACKING_FIELD, UNRESOLVED_REFERENCE!>Unresolved<!>
<!CONST_VAL_WITH_GETTER!>get() = 10<!>
@@ -11,5 +11,5 @@ expect enum class En<!EXPECTED_ENUM_CONSTRUCTOR!>(x: Int)<!> {
}
expect enum class En2 {
E1<!SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS, NO_CONSTRUCTOR!>()<!>
E1<!NO_CONSTRUCTOR, SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>()<!>
}
@@ -4,7 +4,7 @@
expect open class A
expect class B : A
open class C : <!SUPERTYPE_NOT_INITIALIZED, JVM:SUPERTYPE_NOT_INITIALIZED!>A<!>
open class C : <!JVM:SUPERTYPE_NOT_INITIALIZED, SUPERTYPE_NOT_INITIALIZED!>A<!>
// MODULE: m1-jvm(m1-common)
// FILE: jvm.kt
@@ -23,6 +23,6 @@ actual <!ACTUAL_WITHOUT_EXPECT!>var<!> s: String = "value"
fun <!ACTUAL_MISSING!>foo2<!>(): Int = 0
actual class <!PACKAGE_OR_CLASSIFIER_REDECLARATION, ACTUAL_WITHOUT_EXPECT!>Foo3<!>
actual class <!ACTUAL_WITHOUT_EXPECT, PACKAGE_OR_CLASSIFIER_REDECLARATION!>Foo3<!>
class <!PACKAGE_OR_CLASSIFIER_REDECLARATION, ACTUAL_WITHOUT_EXPECT!>Foo3<!>
class <!ACTUAL_WITHOUT_EXPECT, PACKAGE_OR_CLASSIFIER_REDECLARATION!>Foo3<!>
@@ -3,7 +3,7 @@
// FILE: common.kt
expect class H {
<!WRONG_MODIFIER_TARGET, JVM:WRONG_MODIFIER_TARGET!>expect<!> fun foo()
<!JVM:WRONG_MODIFIER_TARGET, WRONG_MODIFIER_TARGET!>expect<!> fun foo()
}
// MODULE: m1-jvm(m1-common)
@@ -5,14 +5,14 @@
expect class B {
class N {
<!EXPECTED_DECLARATION_WITH_BODY, JVM:EXPECTED_DECLARATION_WITH_BODY!>fun body()<!> {}
<!WRONG_MODIFIER_TARGET, JVM:WRONG_MODIFIER_TARGET!>expect<!> fun extraHeader()
<!JVM:WRONG_MODIFIER_TARGET, WRONG_MODIFIER_TARGET!>expect<!> fun extraHeader()
}
}
expect class C {
<!WRONG_MODIFIER_TARGET, JVM:WRONG_MODIFIER_TARGET!>expect<!> class N
<!WRONG_MODIFIER_TARGET, JVM:WRONG_MODIFIER_TARGET!>expect<!> enum class E
<!WRONG_MODIFIER_TARGET, JVM:WRONG_MODIFIER_TARGET!>expect<!> inner class I
<!JVM:WRONG_MODIFIER_TARGET, WRONG_MODIFIER_TARGET!>expect<!> class N
<!JVM:WRONG_MODIFIER_TARGET, WRONG_MODIFIER_TARGET!>expect<!> enum class E
<!JVM:WRONG_MODIFIER_TARGET, WRONG_MODIFIER_TARGET!>expect<!> inner class I
}
expect class D {
@@ -8,7 +8,7 @@ interface J
expect class Foo : I, C, J
expect class Bar : <!SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR, JS:SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR, JVM:SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR!>C<!SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS, JS:SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS, JVM:SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>()<!><!>
expect class Bar : <!JS:SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR, JVM:SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR, SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR!>C<!JS:SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS, JVM:SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS, SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>()<!><!>
// MODULE: m2-jvm(m1-common)
// FILE: jvm.kt
@@ -3,7 +3,7 @@
// FILE: common.kt
class Foo {
<!NON_ABSTRACT_FUNCTION_WITH_NO_BODY, JVM:NON_ABSTRACT_FUNCTION_WITH_NO_BODY!><!WRONG_MODIFIER_TARGET, JVM:WRONG_MODIFIER_TARGET!>expect<!> fun bar(): String<!>
<!JVM:NON_ABSTRACT_FUNCTION_WITH_NO_BODY, NON_ABSTRACT_FUNCTION_WITH_NO_BODY!><!JVM:WRONG_MODIFIER_TARGET, WRONG_MODIFIER_TARGET!>expect<!> fun bar(): String<!>
}
// MODULE: m1-jvm(m1-common)
@@ -26,7 +26,7 @@ fun f3(s: Int?): Int {
fun f4(s: Int?): Int {
return <!NI;TYPE_MISMATCH!>when {
s == 4 -> <!DEBUG_INFO_SMARTCAST!>s<!>
s == null -> <!OI;TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>s<!>
s == null -> <!DEBUG_INFO_CONSTANT, OI;TYPE_MISMATCH!>s<!>
else -> <!DEBUG_INFO_SMARTCAST!>s<!>
}<!>
}
@@ -22,7 +22,7 @@ fun main() {
foo(x<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>)
foo(<!DEBUG_INFO_SMARTCAST!>x<!>)
} else {
foo(<!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!>)
foo(<!DEBUG_INFO_CONSTANT, TYPE_MISMATCH!>x<!>)
<!OI;UNREACHABLE_CODE!>foo(<!><!ALWAYS_NULL!>x<!>!!<!OI;UNREACHABLE_CODE!>)<!>
<!OI;UNREACHABLE_CODE!>foo(<!DEBUG_INFO_SMARTCAST!>x<!>)<!>
}
@@ -13,5 +13,5 @@ fun main() {
//not 'An integer literal does not conform to the expected type Int/Long'
val <!UNUSED_VARIABLE!>l<!>: Long = <!INT_LITERAL_OUT_OF_RANGE!>1111111111111117777777777777777<!>
foo(<!INT_LITERAL_OUT_OF_RANGE!>11111111111111177777777777777<!>)
bar(<!NI;TYPE_MISMATCH, INT_LITERAL_OUT_OF_RANGE!>11111111111111177777777777777<!>)
bar(<!INT_LITERAL_OUT_OF_RANGE, NI;TYPE_MISMATCH!>11111111111111177777777777777<!>)
}
@@ -1,3 +1,3 @@
class C : <!UNRESOLVED_REFERENCE, DELEGATION_NOT_TO_INTERFACE!>Base1<!> by <!UNRESOLVED_REFERENCE!>Base2<!>(1) {
class C : <!DELEGATION_NOT_TO_INTERFACE, UNRESOLVED_REFERENCE!>Base1<!> by <!UNRESOLVED_REFERENCE!>Base2<!>(1) {
fun test() { }
}
@@ -11,4 +11,4 @@ interface C {
}
// TODO DIFFERENT_NAMES_FOR_THE_SAME_PARAMETER_IN_SUPERTYPES reported twice
<!MULTIPLE_DEFAULTS_INHERITED_FROM_SUPERTYPES_WHEN_NO_EXPLICIT_OVERRIDE, DIFFERENT_NAMES_FOR_THE_SAME_PARAMETER_IN_SUPERTYPES!>class Z<!> : A, B(), C
<!DIFFERENT_NAMES_FOR_THE_SAME_PARAMETER_IN_SUPERTYPES, MULTIPLE_DEFAULTS_INHERITED_FROM_SUPERTYPES_WHEN_NO_EXPLICIT_OVERRIDE!>class Z<!> : A, B(), C
@@ -10,4 +10,4 @@ object Impl : D, E {
override fun foo() {}
}
val obj: D = <!MANY_IMPL_MEMBER_NOT_IMPLEMENTED, DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>object<!> : D by Impl, E by Impl {}
val obj: D = <!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE, MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>object<!> : D by Impl, E by Impl {}
@@ -19,7 +19,7 @@ interface IDerived : ILeft, IRight {
}
// Error: ILeft::copy and IRight::copy have unrelated return types
<!RETURN_TYPE_MISMATCH_ON_INHERITANCE, ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class CDerivedInvalid1<!> : ILeft, IRight
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED, RETURN_TYPE_MISMATCH_ON_INHERITANCE!>class CDerivedInvalid1<!> : ILeft, IRight
// Error: CLeft::copy and IRight::copy have unrelated return types
<!RETURN_TYPE_MISMATCH_ON_INHERITANCE!>class CDerivedInvalid2<!> : CLeft(), IRight
@@ -10,7 +10,7 @@ public class A {
fun main(a: A, ml: Any) {
if (ml is <!CANNOT_CHECK_FOR_ERASED!>MutableList<String><!>) {
a.foo(<!JAVA_TYPE_MISMATCH, DEBUG_INFO_SMARTCAST!>ml<!>)
a.foo(<!DEBUG_INFO_SMARTCAST, JAVA_TYPE_MISMATCH!>ml<!>)
a.foo(ml <!UNCHECKED_CAST!>as List<Any><!>)
}
}
@@ -46,7 +46,7 @@ fun test() {
1 <!INFIX_MODIFIER_REQUIRED!>plus<!> platformJ
platformNN <!INFIX_MODIFIER_REQUIRED!>plus<!> 1
platformN <!UNSAFE_INFIX_CALL, INFIX_MODIFIER_REQUIRED!>plus<!> 1
platformN <!INFIX_MODIFIER_REQUIRED, UNSAFE_INFIX_CALL!>plus<!> 1
platformJ <!INFIX_MODIFIER_REQUIRED!>plus<!> 1
platformNN += 1
@@ -17,11 +17,11 @@ class C1
// FILE: 2.kt
package pp
@<!INVISIBLE_REFERENCE, INVISIBLE_MEMBER!>A<!>(<!INVISIBLE_MEMBER!>foo<!>)
@<!INVISIBLE_MEMBER, INVISIBLE_REFERENCE!>A<!>(<!INVISIBLE_MEMBER!>foo<!>)
fun f2() {}
@<!INVISIBLE_REFERENCE, INVISIBLE_MEMBER!>A<!>(<!INVISIBLE_MEMBER!>foo<!>)
@<!INVISIBLE_MEMBER, INVISIBLE_REFERENCE!>A<!>(<!INVISIBLE_MEMBER!>foo<!>)
val p2 = ""
@<!INVISIBLE_REFERENCE, INVISIBLE_MEMBER!>A<!>(<!INVISIBLE_MEMBER!>foo<!>)
@<!INVISIBLE_MEMBER, INVISIBLE_REFERENCE!>A<!>(<!INVISIBLE_MEMBER!>foo<!>)
class C2
@@ -43,7 +43,7 @@ fun test() {
<!INVISIBLE_SETTER(xx; private; file)!>xx<!> = 40
}
class B : <!EXPOSED_SUPER_CLASS!><!INVISIBLE_REFERENCE(A; private; file), INVISIBLE_MEMBER(A; private; file)!>A<!>()<!> {}
class B : <!EXPOSED_SUPER_CLASS!><!INVISIBLE_MEMBER(A; private; file), INVISIBLE_REFERENCE(A; private; file)!>A<!>()<!> {}
class Q {
class W {
@@ -2,7 +2,7 @@
package<!SYNTAX!><!>
<!FUNCTION_DECLARATION_WITH_NO_NAME, CONFLICTING_OVERLOADS!>fun ()<!> {
<!CONFLICTING_OVERLOADS, FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {
}
+2 -2
View File
@@ -18,9 +18,9 @@ object A {
class Test2 {
private val a = object {
init {
<!UNINITIALIZED_VARIABLE, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>b<!> <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>+<!> 1
<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, UNINITIALIZED_VARIABLE!>b<!> <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>+<!> 1
}
val x = <!UNINITIALIZED_VARIABLE, DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>b<!>
val x = <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE, UNINITIALIZED_VARIABLE!>b<!>
val y = 1
}
+1 -1
View File
@@ -1,7 +1,7 @@
// !WITH_NEW_INFERENCE
// NI_EXPECTED_FILE
// See EA-76890 / KT-10843: NPE during analysis
fun lambda(x : Int?) = x?.<!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER, FUNCTION_CALL_EXPECTED, NO_VALUE_FOR_PARAMETER!>let<!> <!NI;UNRESOLVED_REFERENCE, OI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>l<!> {
fun lambda(x : Int?) = x?.<!FUNCTION_CALL_EXPECTED, NO_VALUE_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>let<!> <!NI;UNRESOLVED_REFERENCE, OI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>l<!> {
<!OI;CANNOT_INFER_PARAMETER_TYPE!>y<!> ->
if (<!OI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>y<!> <!NI;UNREACHABLE_CODE!><!NI;UNRESOLVED_REFERENCE, OI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>><!> 0<!>) <!NI;UNREACHABLE_CODE!>return<!UNRESOLVED_REFERENCE!>@l<!> x<!>
<!NI;UNREACHABLE_CODE, OI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>y<!>
@@ -32,8 +32,8 @@ fun testY() {
fun test(x: X) {
val interface_as_fun = x.<!RESOLUTION_TO_CLASSIFIER!>A<!>()
val interface_as_val = x.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>A<!>
val interface_as_val = x.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>A<!>
val object_as_fun = x.<!RESOLUTION_TO_CLASSIFIER!>B<!>()
val class_as_val = x.<!NO_COMPANION_OBJECT, NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE!>C<!>
val class_as_val = x.<!NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE, NO_COMPANION_OBJECT!>C<!>
}
@@ -2,7 +2,7 @@
interface I<F, G, H>
class A(impl: Interface) : <!UNRESOLVED_REFERENCE!>Nested<!>(), <!UNRESOLVED_REFERENCE, DELEGATION_NOT_TO_INTERFACE!>Interface<!> by impl, <!UNRESOLVED_REFERENCE!>Inner<!>, I<<!UNRESOLVED_REFERENCE!>Nested<!>, <!UNRESOLVED_REFERENCE!>Interface<!>, <!UNRESOLVED_REFERENCE!>Inner<!>> {
class A(impl: Interface) : <!UNRESOLVED_REFERENCE!>Nested<!>(), <!DELEGATION_NOT_TO_INTERFACE, UNRESOLVED_REFERENCE!>Interface<!> by impl, <!UNRESOLVED_REFERENCE!>Inner<!>, I<<!UNRESOLVED_REFERENCE!>Nested<!>, <!UNRESOLVED_REFERENCE!>Interface<!>, <!UNRESOLVED_REFERENCE!>Inner<!>> {
class Nested

Some files were not shown because too many files have changed in this diff Show More