[Tests] Add spec tests in FIR + LightTree configuration
In some tests PSI and LT differ. Test data was fixed accordingly. In the following tests I consider that difference is acceptable: - compiler/tests-spec/testData/diagnostics/linked/expressions/try-expression/p-1/neg/3.1.kt - compiler/tests-spec/testData/diagnostics/linked/expressions/try-expression/p-1/neg/4.1.kt This is because: - It only happens when recovering from syntax errors happened above in code. I was unable to reproduce it in valid code. - It doesn't break parsing further, the rest of the errors in file are reported identically. The rest of the tests will be fixed in subsequent commits. ^KT-62704 Fixed
This commit is contained in:
committed by
Space Team
parent
18b9cf3bc6
commit
8edb1842a5
+77
@@ -0,0 +1,77 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
// COMPARE_WITH_LIGHT_TREE
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (NEGATIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-213
|
||||
* MAIN LINK: declarations, classifier-declaration, class-declaration, abstract-classes -> paragraph 2 -> sentence 1
|
||||
* NUMBER: 3
|
||||
* DESCRIPTION: attempt to implement abstract members with invalid types
|
||||
*/
|
||||
|
||||
// FILE: TestCase1.kt
|
||||
// TESTCASE NUMBER: 1
|
||||
package testPackCase1
|
||||
abstract class Base {
|
||||
abstract val a: CharSequence
|
||||
abstract var b: CharSequence
|
||||
|
||||
abstract fun foo(): CharSequence
|
||||
}
|
||||
|
||||
class Case1 : Base() {
|
||||
override fun foo(): <!RETURN_TYPE_MISMATCH_ON_OVERRIDE!>Any<!>
|
||||
{
|
||||
return ""
|
||||
}
|
||||
|
||||
override val a: <!PROPERTY_TYPE_MISMATCH_ON_OVERRIDE!>Any?<!>
|
||||
get() = TODO()
|
||||
override var b: <!VAR_TYPE_MISMATCH_ON_OVERRIDE!>String<!>
|
||||
get() = TODO()
|
||||
set(value)
|
||||
{}
|
||||
}
|
||||
|
||||
// FILE: TestCase2.kt
|
||||
// TESTCASE NUMBER: 2
|
||||
package testPackCase2
|
||||
abstract class Base {
|
||||
abstract val a: CharSequence
|
||||
abstract var b: CharSequence
|
||||
|
||||
abstract fun foo(): CharSequence
|
||||
}
|
||||
|
||||
class Case2(override val a: String, <!VAR_TYPE_MISMATCH_ON_OVERRIDE{LT}!>override var b: <!VAR_TYPE_MISMATCH_ON_OVERRIDE{PSI}!>String<!><!>) : Base() {
|
||||
override fun foo(): <!RETURN_TYPE_MISMATCH_ON_OVERRIDE!>CharSequence?<!> {
|
||||
return ""
|
||||
}
|
||||
}
|
||||
|
||||
// FILE: TestCase3.kt
|
||||
// TESTCASE NUMBER: 3
|
||||
package testPackCase3
|
||||
abstract class Base {
|
||||
abstract val a: CharSequence
|
||||
abstract var b: CharSequence
|
||||
|
||||
abstract fun foo(): CharSequence
|
||||
}
|
||||
|
||||
|
||||
class Case3 {
|
||||
<!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>class ImplBase1<!> : MainClass.Base1() {}
|
||||
}
|
||||
|
||||
class MainClass {
|
||||
abstract class Base1() {
|
||||
abstract val a: CharSequence
|
||||
abstract var b: CharSequence
|
||||
|
||||
abstract fun foo(): CharSequence
|
||||
}
|
||||
|
||||
}
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
// FIR_IDENTICAL
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
// COMPARE_WITH_LIGHT_TREE
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (NEGATIVE)
|
||||
|
||||
Vendored
+2
-1
@@ -1,5 +1,6 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
// COMPARE_WITH_LIGHT_TREE
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (NEGATIVE)
|
||||
@@ -71,4 +72,4 @@ fun case6() {
|
||||
} catch (e: ExcA)<!SYNTAX!><!>
|
||||
catch (e: ExcB) {
|
||||
}
|
||||
}
|
||||
}<!SYNTAX{LT}!><!>
|
||||
|
||||
+1
@@ -1,5 +1,6 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
// COMPARE_WITH_LIGHT_TREE
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (NEGATIVE)
|
||||
|
||||
Vendored
+2
-1
@@ -1,5 +1,6 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
// COMPARE_WITH_LIGHT_TREE
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (NEGATIVE)
|
||||
@@ -33,7 +34,7 @@ fun case2() {
|
||||
throwException()
|
||||
} catch (e: ExcB) {
|
||||
} finally
|
||||
<!SYNTAX!><!>}<!SYNTAX!><!>
|
||||
<!SYNTAX!><!>}<!SYNTAX{PSI}!><!>
|
||||
|
||||
// TESTCASE NUMBER: 3
|
||||
|
||||
|
||||
+1
@@ -1,5 +1,6 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
// COMPARE_WITH_LIGHT_TREE
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (NEGATIVE)
|
||||
|
||||
Vendored
+9
-8
@@ -1,5 +1,6 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
||||
// SKIP_TXT
|
||||
// COMPARE_WITH_LIGHT_TREE
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS NOT LINKED SPEC TEST (NEGATIVE)
|
||||
@@ -31,8 +32,8 @@ fun case_3() {
|
||||
|
||||
// TESTCASE NUMBER: 4
|
||||
fun case_4() {
|
||||
val <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS!><T><!> y1: Number where __UNRESOLVED__: __UNRESOLVED__ = 1
|
||||
var <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS!><T><!> y2: Number where __UNRESOLVED__: __UNRESOLVED__ = 1
|
||||
val <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS!><T><!> y1: Number where <!NAME_IN_CONSTRAINT_IS_NOT_A_TYPE_PARAMETER{LT}!>__UNRESOLVED__<!>: __UNRESOLVED__ = 1
|
||||
var <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS!><T><!> y2: Number where <!NAME_IN_CONSTRAINT_IS_NOT_A_TYPE_PARAMETER{LT}!>__UNRESOLVED__<!>: __UNRESOLVED__ = 1
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 5
|
||||
@@ -46,8 +47,8 @@ fun case_5() {
|
||||
* UNEXPECTED BEHAVIOUR
|
||||
*/
|
||||
fun case_6() {
|
||||
val <T : __UNRESOLVED__> (x1, y1) = Pair(1, 2)
|
||||
var <T : __UNRESOLVED__> (x2, y2) = Pair(1, 2)
|
||||
val <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS{LT}!><T : __UNRESOLVED__><!> (x1, y1) = Pair(1, 2)
|
||||
var <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS{LT}!><T : __UNRESOLVED__><!> (x2, y2) = Pair(1, 2)
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -55,8 +56,8 @@ fun case_6() {
|
||||
* UNEXPECTED BEHAVIOUR
|
||||
*/
|
||||
fun case_7() {
|
||||
val <T : __UNRESOLVED__> (x1, y1) where __UNRESOLVED__: __UNRESOLVED__ = Pair(1, 2)
|
||||
var <T : __UNRESOLVED__> (x2, y2) where __UNRESOLVED__: __UNRESOLVED__ = Pair(1, 2)
|
||||
val <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS{LT}!><T : __UNRESOLVED__><!> (x1, y1) where __UNRESOLVED__: __UNRESOLVED__ = Pair(1, 2)
|
||||
var <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS{LT}!><T : __UNRESOLVED__><!> (x2, y2) where __UNRESOLVED__: __UNRESOLVED__ = Pair(1, 2)
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 8
|
||||
@@ -93,8 +94,8 @@ fun case_12() {
|
||||
|
||||
// TESTCASE NUMBER: 13
|
||||
fun case_13() {
|
||||
val <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS!><T : <!UNRESOLVED_REFERENCE!>__UNRESOLVED__<!>><!> <!REDECLARATION!>x<!>: Int where __UNRESOLVED__: __UNRESOLVED__
|
||||
var <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS!><T : <!UNRESOLVED_REFERENCE!>__UNRESOLVED__<!>><!> <!REDECLARATION!>x<!>: Int where __UNRESOLVED__: __UNRESOLVED__
|
||||
val <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS!><T : <!UNRESOLVED_REFERENCE!>__UNRESOLVED__<!>><!> <!REDECLARATION!>x<!>: Int where <!NAME_IN_CONSTRAINT_IS_NOT_A_TYPE_PARAMETER{LT}!>__UNRESOLVED__<!>: __UNRESOLVED__
|
||||
var <!LOCAL_VARIABLE_WITH_TYPE_PARAMETERS!><T : <!UNRESOLVED_REFERENCE!>__UNRESOLVED__<!>><!> <!REDECLARATION!>x<!>: Int where <!NAME_IN_CONSTRAINT_IS_NOT_A_TYPE_PARAMETER{LT}!>__UNRESOLVED__<!>: __UNRESOLVED__
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 14
|
||||
|
||||
Vendored
+1
@@ -1,5 +1,6 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
||||
// SKIP_TXT
|
||||
// COMPARE_WITH_LIGHT_TREE
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS NOT LINKED SPEC TEST (NEGATIVE)
|
||||
|
||||
Reference in New Issue
Block a user