[Spec tests] Add diagnostics tests for building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver
This commit is contained in:
committed by
Victor Petukhov
parent
81b6e5a373
commit
3b35374186
+2
-2
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
* KOTLIN CODEGEN BOX SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-253
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 5 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 2
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 6
|
||||
* NUMBER: 1
|
||||
+7
-5
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
* KOTLIN CODEGEN BOX SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-253
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 5 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 4
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 9
|
||||
* NUMBER: 10
|
||||
@@ -13,6 +13,7 @@
|
||||
|
||||
// FILE: KotlinLib.kt
|
||||
package test.lib
|
||||
|
||||
class MyClass {
|
||||
//property-like (II prio)
|
||||
companion object foo {
|
||||
@@ -28,11 +29,12 @@ package overloadResolution
|
||||
import test.lib.MyClass.foo as boo
|
||||
|
||||
//function-like (I prio)
|
||||
class boo(){}
|
||||
open class A()
|
||||
class boo() : A() {}
|
||||
|
||||
fun box(): String {
|
||||
val x = boo()
|
||||
if (x is boo && !test.lib.MyClass.fooCompanionObj)
|
||||
val x: Any = boo()
|
||||
if (x !is A && test.lib.MyClass.fooCompanionObj)
|
||||
return "OK"
|
||||
return "NOK"
|
||||
}
|
||||
+2
-2
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
* KOTLIN CODEGEN BOX SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-253
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 5 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 6
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 3
|
||||
* NUMBER: 2
|
||||
+3
-3
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
* KOTLIN CODEGEN BOX SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-253
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 5 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 2
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 10
|
||||
* NUMBER: 4
|
||||
@@ -28,7 +28,7 @@ fun box(): String {
|
||||
|
||||
boo(1)
|
||||
|
||||
if (!test.lib.isFooCalled && isBooCalled)
|
||||
if (test.lib.isFooCalled && !isBooCalled)
|
||||
return "OK"
|
||||
|
||||
return "NOK"
|
||||
+2
-2
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
* KOTLIN CODEGEN BOX SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-253
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 5 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 2
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 7
|
||||
* NUMBER: 5
|
||||
+3
-3
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
* KOTLIN CODEGEN BOX SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-253
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 5 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 2
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 7
|
||||
* NUMBER: 6
|
||||
@@ -32,7 +32,7 @@ fun foo() { fooFun = true }
|
||||
|
||||
fun box(): String {
|
||||
foo()
|
||||
if (!test.lib.isMarker && fooFun)
|
||||
if (test.lib.isMarker && !fooFun)
|
||||
return "OK"
|
||||
return "NOK"
|
||||
}
|
||||
+2
-2
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
* KOTLIN CODEGEN BOX SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-253
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 5 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 2
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 7
|
||||
* NUMBER: 7
|
||||
+2
-2
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
* KOTLIN CODEGEN BOX SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-253
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 5 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 2
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 8
|
||||
* NUMBER: 8
|
||||
+3
-3
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
* KOTLIN CODEGEN BOX SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-253
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 5 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 2
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 8
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 10
|
||||
@@ -34,7 +34,7 @@ fun boo() { booFun = true }
|
||||
|
||||
fun box(): String {
|
||||
boo()
|
||||
if (booFun && !test.lib.MyClass.fooCompanionObj)
|
||||
if (!booFun && test.lib.MyClass.fooCompanionObj)
|
||||
return "OK"
|
||||
return "NOK"
|
||||
}
|
||||
-30
@@ -1,30 +0,0 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
/*
|
||||
* KOTLIN CODEGEN BOX SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-253
|
||||
* PLACE: overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 4
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 2 -> sentence 6
|
||||
* NUMBER: 3
|
||||
* DESCRIPTION: function-like prio is higher than property-like callables
|
||||
*/
|
||||
|
||||
|
||||
class foo(val a: Int)
|
||||
|
||||
var fooLambda: Boolean = false
|
||||
|
||||
val foo: (Int) -> Unit = { a: Int -> fooLambda = true }
|
||||
|
||||
|
||||
fun box(): String {
|
||||
|
||||
val x = foo(1)
|
||||
|
||||
if (x is foo && !fooLambda)
|
||||
return "OK"
|
||||
|
||||
return "NOK"
|
||||
}
|
||||
+28
-41
@@ -1,63 +1,57 @@
|
||||
{
|
||||
"6": {
|
||||
"5": {
|
||||
"pos": {
|
||||
"1": [
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"unexpectedBehaviour": false
|
||||
@@ -69,77 +63,70 @@
|
||||
"pos": {
|
||||
"2": [
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.6.kt",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.6.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.7.kt",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.7.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.8.kt",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.8.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.9.kt",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.9.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.4.kt",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.4.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.5.kt",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.5.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.1.kt",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.1.kt",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
],
|
||||
"6": [
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.2.kt",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.2.kt",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
],
|
||||
"4": [
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.3.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-253",
|
||||
"casesNumber": 0,
|
||||
"description": "function-like prio is higher than property-like callables",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.10.kt",
|
||||
"path": "compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.10.kt",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
]
|
||||
|
||||
+91
@@ -0,0 +1,91 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, c-level-partition -> paragraph 1 -> sentence 1
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 3 -> sentence 1
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 2 -> sentence 1
|
||||
* overload-resolution, receivers -> paragraph 7 -> sentence 2
|
||||
* overload-resolution, receivers -> paragraph 7 -> sentence 3
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: sets of non-extension member callables only
|
||||
*/
|
||||
|
||||
package tests.test2
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
open class Case1() {
|
||||
companion object foo {
|
||||
operator fun invoke() {}
|
||||
}
|
||||
|
||||
val propVal: Int = 1
|
||||
val propVar: Int = 1
|
||||
fun function() {}
|
||||
val markerObj = object : Marker {}
|
||||
|
||||
fun innerFun() {
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.foo.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
Case1.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.foo.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.invoke; typeCall: variable&invoke")!>propVal()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.invoke; typeCall: variable&invoke")!>propVal()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.invoke; typeCall: variable&invoke")!>propVar()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.invoke; typeCall: variable&invoke")!>propVar()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.function; typeCall: function")!>function()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.function; typeCall: function")!>function()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Marker.invoke; typeCall: variable&invoke")!>markerObj()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: tests.test2.Marker.invoke; typeCall: variable&invoke")!>markerObj()<!>
|
||||
}
|
||||
|
||||
operator fun Int.invoke() {}
|
||||
|
||||
inner class InnerClass {
|
||||
|
||||
fun innerClassFun() {
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.foo.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
Case1.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.foo.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.invoke; typeCall: variable&invoke")!>propVal()<!>
|
||||
this@Case1.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.invoke; typeCall: variable&invoke")!>propVal()<!>
|
||||
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.invoke; typeCall: variable&invoke")!>propVar()<!>
|
||||
this@Case1.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.invoke; typeCall: variable&invoke")!>propVar()<!>
|
||||
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.function; typeCall: function")!>function()<!>
|
||||
this@Case1.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.function; typeCall: function")!>function()<!>
|
||||
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Marker.invoke; typeCall: variable&invoke")!>markerObj()<!>
|
||||
this@Case1.<!DEBUG_INFO_CALL("fqName: tests.test2.Marker.invoke; typeCall: variable&invoke")!>markerObj()<!>
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
interface Marker {
|
||||
operator fun invoke() {}
|
||||
}
|
||||
|
||||
class ExtendCase1() : Case1() {
|
||||
|
||||
fun extFun() {
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.foo.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
Case1.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.foo.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.ExtendCase1.invoke; typeCall: variable&invoke")!>propVal()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: tests.test2.ExtendCase1.invoke; typeCall: variable&invoke")!>propVal()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.ExtendCase1.invoke; typeCall: variable&invoke")!>propVar()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: tests.test2.ExtendCase1.invoke; typeCall: variable&invoke")!>propVar()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.ExtendCase1.function; typeCall: function")!>function()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: tests.test2.ExtendCase1.function; typeCall: function")!>function()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: tests.test2.Marker.invoke; typeCall: variable&invoke")!>markerObj()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: tests.test2.Marker.invoke; typeCall: variable&invoke")!>markerObj()<!>
|
||||
}
|
||||
}
|
||||
|
||||
fun case6() {
|
||||
Case1.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.foo.invoke; typeCall: operator function")!>invoke()<!>
|
||||
Case1.<!DEBUG_INFO_CALL("fqName: tests.test2.Case1.foo.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
}
|
||||
+53
@@ -0,0 +1,53 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, c-level-partition -> paragraph 1 -> sentence 1
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 3 -> sentence 1
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 2 -> sentence 1
|
||||
* overload-resolution, receivers -> paragraph 7 -> sentence 2
|
||||
* overload-resolution, receivers -> paragraph 7 -> sentence 3
|
||||
* NUMBER: 2
|
||||
* DESCRIPTION: set of non-extension member callables only
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
interface Marker {
|
||||
operator fun invoke() {}
|
||||
}
|
||||
|
||||
class Case1() {
|
||||
fun foo() : Int =1
|
||||
|
||||
val foo = object : Marker {}
|
||||
|
||||
fun innerFun() {
|
||||
<!DEBUG_INFO_CALL("fqName: Case1.foo; typeCall: function")!>foo()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case1.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
inner class InnerClass0 {
|
||||
val foo = object : Marker {}
|
||||
|
||||
fun innerClassFun() {
|
||||
<!DEBUG_INFO_CALL("fqName: Marker.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: Marker.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
this@Case1.<!DEBUG_INFO_CALL("fqName: Case1.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
}
|
||||
inner class InnerClass1 {
|
||||
fun foo() : Int =1
|
||||
|
||||
fun innerClassFun() {
|
||||
<!DEBUG_INFO_CALL("fqName: Case1.InnerClass1.foo; typeCall: function")!>foo()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case1.InnerClass1.foo; typeCall: function")!>foo()<!>
|
||||
this@Case1.<!DEBUG_INFO_CALL("fqName: Case1.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+53
@@ -0,0 +1,53 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 2
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 11 -> sentence 1
|
||||
* NUMBER: 3
|
||||
* DESCRIPTION: The sets of non-extension member callables named f of type T;
|
||||
*/
|
||||
|
||||
class Marker {
|
||||
fun foo() = println("non-extension member toplevel Marker.foo()")
|
||||
val foo: String = "non-extension member toplevel Marker.foo"
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
class Case1() {
|
||||
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("local extension marker.foo")
|
||||
|
||||
fun test() {
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
}
|
||||
|
||||
fun case1() {
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 2
|
||||
class Case2() {
|
||||
fun test() {
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("local extension marker.foo")
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
}
|
||||
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("top level extension marker.foo")
|
||||
|
||||
fun case2() {
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 3
|
||||
fun case3() {
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("local extension marker.foo")
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
+66
@@ -0,0 +1,66 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 2
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 3
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 4
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 5
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 11 -> sentence 1
|
||||
* overload-resolution, c-level-partition -> paragraph 1 -> sentence 1
|
||||
* NUMBER: 4
|
||||
* DESCRIPTION: sets of non-extension member callables, local, explicitly imported, declared in the package scope and star-imported extension callables
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1, 2, 3
|
||||
|
||||
// FILE: Marker.kt
|
||||
package libPackage
|
||||
|
||||
class Marker {
|
||||
fun foo() = println("non-extension member Marker.foo()")
|
||||
val foo: String = "non-extension member Marker.foo"
|
||||
}
|
||||
|
||||
// FILE: Tests.kt
|
||||
package tests
|
||||
import libPackage.Marker
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
class Case1() {
|
||||
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("local extension marker.foo")
|
||||
|
||||
fun test() {
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
}
|
||||
|
||||
fun case1() {
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 2
|
||||
class Case2() {
|
||||
fun test() {
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("local extension marker.foo")
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
}
|
||||
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("top level extension marker.foo")
|
||||
|
||||
fun case2() {
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 3
|
||||
fun case3() {
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("local extension marker.foo")
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
+82
@@ -0,0 +1,82 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 1
|
||||
* RELEVANT PLACES: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 2
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 3
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 4
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 5
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 11 -> sentence 1
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 6 -> sentence 1
|
||||
* NUMBER: 5
|
||||
* DESCRIPTION: sets of non-extension member callables, local, explicitly imported, declared in the package scope and star-imported extension callables
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1, 2, 3, 4, 5
|
||||
|
||||
// FILE: Marker.kt
|
||||
package libPackage
|
||||
|
||||
class Marker {
|
||||
fun foo() = println("non-extension member Marker.foo()")
|
||||
val foo: Marker = <!DEBUG_INFO_LEAKING_THIS!>this<!>
|
||||
operator fun invoke() = println("non-extension member Marker.invoke()")
|
||||
}
|
||||
|
||||
// FILE: Tests.kt
|
||||
package tests
|
||||
import libPackage.Marker
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
class Case1() {
|
||||
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("local extension marker.foo")
|
||||
|
||||
fun test() {
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
}
|
||||
|
||||
fun case1() {
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 2
|
||||
class Case2() {
|
||||
fun test() {
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("local extension marker.foo")
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
}
|
||||
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("top level extension marker.foo")
|
||||
|
||||
fun case2() {
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 3
|
||||
fun case3() {
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("local extension marker.foo")
|
||||
Marker().<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 4
|
||||
fun case4(marker : Marker?) {
|
||||
marker?.<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 5
|
||||
fun case5(marker : Marker?) {
|
||||
fun bar(){
|
||||
fun Marker.<!EXTENSION_SHADOWED_BY_MEMBER!>foo<!>() = println("local extension marker.foo")
|
||||
marker?.<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
marker?.<!DEBUG_INFO_CALL("fqName: libPackage.Marker.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
+103
@@ -0,0 +1,103 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 2
|
||||
* RELEVANT PLACES: overload-resolution, c-level-partition -> paragraph 1 -> sentence 1
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 3 -> sentence 1
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 3 -> sentence 2
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 2 -> sentence 1
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 7 -> sentence 1
|
||||
* overload-resolution, callables-and-invoke-convention -> paragraph 7 -> sentence 2
|
||||
* overload-resolution, receivers -> paragraph 7 -> sentence 2
|
||||
* overload-resolution, receivers -> paragraph 7 -> sentence 3
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: The sets of local extension callables
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
class Case1() {
|
||||
fun foo() : Int =1
|
||||
|
||||
val foo = object : MarkerCase1 {}
|
||||
|
||||
fun innerFun() {
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case1.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
|
||||
inner class InnerClass0 {
|
||||
val foo = object : MarkerCase1 {}
|
||||
operator fun MarkerCase1.invoke() {}
|
||||
|
||||
fun innerClassFun() {
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case1.InnerClass0.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
}
|
||||
}
|
||||
|
||||
operator fun MarkerCase1.invoke() {}
|
||||
|
||||
inner class InnerClass1(){
|
||||
val foo = object : MarkerCase1 {}
|
||||
|
||||
fun nestedClassFun(){
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case1.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
interface MarkerCase1 {}
|
||||
|
||||
fun case1(){
|
||||
operator fun MarkerCase1.invoke() {}
|
||||
Case1().InnerClass0().<!DEBUG_INFO_CALL("fqName: case1.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
Case1().InnerClass1().<!DEBUG_INFO_CALL("fqName: case1.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 2
|
||||
open class Case2() {
|
||||
open fun fooCase2(): MarkerCase2 = object : MarkerCase2 {}
|
||||
|
||||
open val fooCase2 = object : MarkerCase2 {}
|
||||
|
||||
interface MarkerCase2 {}
|
||||
open operator fun MarkerCase2.invoke() {}
|
||||
|
||||
fun innerFun() {
|
||||
<!DEBUG_INFO_CALL("fqName: Case2.fooCase2; typeCall: function")!>fooCase2()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case2.fooCase2; typeCall: function")!>fooCase2()<!>
|
||||
}
|
||||
|
||||
inner class InnerClass0 : Case2() {
|
||||
override fun fooCase2(): MarkerCase2 {
|
||||
return object : MarkerCase2 {}
|
||||
}
|
||||
|
||||
override operator fun MarkerCase2.invoke() {}
|
||||
|
||||
fun innerClassFun() {
|
||||
this@Case2.<!DEBUG_INFO_CALL("fqName: Case2.fooCase2; typeCall: function")!>fooCase2()<!>
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case2.InnerClass0.fooCase2; typeCall: function")!>fooCase2()<!>
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
inner class InnerClass1() {
|
||||
val fooCase2 = object : MarkerCase2 {}
|
||||
|
||||
fun nestedClassFun() {
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case2.invoke; typeCall: variable&invoke")!>fooCase2()<!>
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
fun case2() {
|
||||
operator fun Case2.MarkerCase2.invoke() {}
|
||||
Case2().InnerClass0().<!DEBUG_INFO_CALL("fqName: Case2.InnerClass0.fooCase2; typeCall: function")!>fooCase2()<!>
|
||||
Case2().InnerClass1().<!DEBUG_INFO_CALL("fqName: case2.invoke; typeCall: variable&invoke")!>fooCase2()<!>
|
||||
}
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 2
|
||||
* RELEVANT PLACES: overload-resolution, c-level-partition -> paragraph 1 -> sentence 1
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 3 -> sentence 1
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 3 -> sentence 2
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 2 -> sentence 1
|
||||
* NUMBER: 2
|
||||
* DESCRIPTION: extension calls with explicit and implicit receiver
|
||||
* UNEXPECTED BEHAVIOUR
|
||||
* ISSUES: KT-36475
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
class Case1 {
|
||||
fun bar() {
|
||||
val foo: String.() -> Unit = {} // (1)
|
||||
fun String.foo(): Unit {} // (2)
|
||||
"1".<!DEBUG_INFO_CALL("fqName: Case1.bar.foo; typeCall: extension function")!>foo()<!> // resolves to (2)
|
||||
with("2") {
|
||||
foo() //resolves to (1) !!!
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case1.bar.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
}
|
||||
"".run {
|
||||
<!DEBUG_INFO_CALL("fqName: kotlin.Function1.invoke; typeCall: variable&invoke")!>foo()<!> //resolves to (1) !!!
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case1.bar.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
}
|
||||
"".apply {
|
||||
<!DEBUG_INFO_CALL("fqName: kotlin.Function1.invoke; typeCall: variable&invoke")!>foo()<!> //resolves to (1) !!!
|
||||
this.<!DEBUG_INFO_CALL("fqName: Case1.bar.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
}
|
||||
"".also {
|
||||
it.<!DEBUG_INFO_CALL("fqName: Case1.bar.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
}
|
||||
"".let {
|
||||
it.<!DEBUG_INFO_CALL("fqName: Case1.bar.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class B {
|
||||
val foo: String.() -> Unit = {} // (1)
|
||||
fun String.foo(): Unit {} // (2)
|
||||
fun bar() {
|
||||
"1".<!DEBUG_INFO_CALL("fqName: B.foo; typeCall: extension function")!>foo()<!> // resolves to (2)
|
||||
val <!UNUSED_VARIABLE!>str<!> = "1"
|
||||
with("2") {
|
||||
<!DEBUG_INFO_CALL("fqName: B.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
this.<!DEBUG_INFO_CALL("fqName: B.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
}
|
||||
"".run {
|
||||
<!DEBUG_INFO_CALL("fqName: B.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
this.<!DEBUG_INFO_CALL("fqName: B.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
}
|
||||
"".apply {
|
||||
<!DEBUG_INFO_CALL("fqName: B.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
this.<!DEBUG_INFO_CALL("fqName: B.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
}
|
||||
"".also {
|
||||
it.<!DEBUG_INFO_CALL("fqName: B.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
}
|
||||
"".let {
|
||||
it.<!DEBUG_INFO_CALL("fqName: B.foo; typeCall: extension function")!>foo()<!> //resolves to (2)
|
||||
}
|
||||
}
|
||||
}
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 2
|
||||
* RELEVANT PLACES: overload-resolution, c-level-partition -> paragraph 1 -> sentence 1
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 3 -> sentence 1
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 2 -> sentence 1
|
||||
* NUMBER: 3
|
||||
* DESCRIPTION: set of non-extension member callables only
|
||||
*/
|
||||
// TESTCASE NUMBER: 1
|
||||
class Case1 {
|
||||
operator fun String.invoke() :String{ return this} //fqName: Case1.invoke; typeCall: function
|
||||
fun String.foo() : String = this //fqName: Case1.foo; typeCall: function;
|
||||
fun bar() {
|
||||
"".<!DEBUG_INFO_CALL("fqName: Case1.foo; typeCall: extension function")!>foo()<!>
|
||||
"".<!DEBUG_INFO_CALL("fqName: Case1.invoke; typeCall: operator extension function")!>invoke()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: Case1.invoke; typeCall: operator extension function")!>""()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: Case1.invoke; typeCall: operator extension function")!>""()()()() ()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: Case1.invoke; typeCall: operator extension function")!>""().invoke()()()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: Case1.invoke; typeCall: operator extension function")!>""().foo()().invoke()()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: Case1.invoke; typeCall: operator extension function")!>"1".foo()()<!>
|
||||
<!DEBUG_INFO_CALL("fqName: Case1.invoke; typeCall: operator extension function")!>"1"()().invoke()()<!>.<!DEBUG_INFO_CALL("fqName: Case1.foo; typeCall: extension function")!>foo()<!>
|
||||
}
|
||||
}
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 2
|
||||
* RELEVANT PLACES: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 3
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 4
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 5
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 11 -> sentence 1
|
||||
* overload-resolution, receivers -> paragraph 5 -> sentence 1
|
||||
* NUMBER: 4
|
||||
* DESCRIPTION: sets of local, explicitly imported, declared in the package scope and star-imported extension callables
|
||||
*/
|
||||
|
||||
// FILE: Extensions.kt
|
||||
package libPackage
|
||||
|
||||
public fun String?.orEmpty(): String = "my Extension for $this"
|
||||
|
||||
// FILE: TestCase1.kt
|
||||
|
||||
package sentence3
|
||||
|
||||
import libPackage.*
|
||||
import libPackage.orEmpty
|
||||
|
||||
private fun String?.orEmpty(): String = "my top-level (pack scope) Extension for $this"
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
class Case1() {
|
||||
fun String?.orEmpty(): String = "my local extension for $this"
|
||||
fun case1(s: String?) {
|
||||
s.<!DEBUG_INFO_CALL("fqName: sentence3.Case1.orEmpty; typeCall: extension function")!>orEmpty()<!>
|
||||
}
|
||||
}
|
||||
|
||||
// FILE: TestCase2.kt
|
||||
package sentence3
|
||||
import libPackage.*
|
||||
//import libPackage.orEmpty
|
||||
|
||||
private fun String?.orEmpty(): String = "my top-level (pack scope) Extension for $this"
|
||||
|
||||
// TESTCASE NUMBER: 2
|
||||
class Case2() {
|
||||
fun String?.orEmpty(): String = "my local extension for $this"
|
||||
fun case2(s: String?) {
|
||||
s.<!DEBUG_INFO_CALL("fqName: sentence3.Case2.orEmpty; typeCall: extension function")!>orEmpty()<!>
|
||||
}
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 3
|
||||
class Case3() {
|
||||
fun String?.orEmpty(): String = "my local extension for $this"
|
||||
fun case3(s: String?) {
|
||||
s.<!DEBUG_INFO_CALL("fqName: sentence3.Case3.orEmpty; typeCall: extension function")!>orEmpty()<!>
|
||||
fun innerFirst(s: String?){
|
||||
fun String?.orEmpty(): String = "my local inner extension for $this"
|
||||
<!DEBUG_INFO_CALL("fqName: sentence3.Case3.case3.innerFirst.s; typeCall: typeCall is unknown")!>s<!>?.<!DEBUG_INFO_CALL("fqName: sentence3.Case3.case3.innerFirst.orEmpty; typeCall: extension function")!>orEmpty()<!>
|
||||
}
|
||||
fun innerSecond(){
|
||||
fun String?.orEmpty(): String = "my local inner extension for $this"
|
||||
s.<!DEBUG_INFO_CALL("fqName: sentence3.Case3.case3.innerSecond.orEmpty; typeCall: extension function")!>orEmpty()<!>
|
||||
}
|
||||
s.<!DEBUG_INFO_CALL("fqName: sentence3.Case3.orEmpty; typeCall: extension function")!>orEmpty()<!>
|
||||
}
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE:overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 3
|
||||
* RELEVANT PLACES: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 4
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 5
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 11 -> sentence 1
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: sets of explicitly imported, declared in the package scope and star-imported extension callables
|
||||
*/
|
||||
|
||||
// FILE: Extensions.kt
|
||||
package libPackage
|
||||
|
||||
public fun String?.orEmpty(): String = "my Extension for $this"
|
||||
|
||||
// FILE: TestCase1.kt
|
||||
package sentence3
|
||||
|
||||
import libPackage.*
|
||||
import libPackage.orEmpty
|
||||
|
||||
|
||||
private fun String?.orEmpty(): String = "my top level extension for $this"
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case1(s: String?) {
|
||||
s.<!DEBUG_INFO_CALL("fqName: libPackage.orEmpty; typeCall: extension function")!>orEmpty()<!>
|
||||
}
|
||||
|
||||
+122
@@ -0,0 +1,122 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 4
|
||||
* RELEVANT PLACES: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 9 -> sentence 1
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: sets of extension callables declared in the package scope
|
||||
*/
|
||||
|
||||
package tests.diag
|
||||
|
||||
// TESTCASE NUMBER: 1, 2
|
||||
operator fun Int.invoke() {}
|
||||
|
||||
// TESTCASE NUMBER: 3, 4
|
||||
interface Marker {
|
||||
operator fun invoke() {}
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
class Case1 {
|
||||
val foo: Int = 1
|
||||
}
|
||||
|
||||
fun case1() {
|
||||
Case1().<!DEBUG_INFO_CALL("fqName: tests.diag.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
val a = Case1()
|
||||
a.<!DEBUG_INFO_CALL("fqName: tests.diag.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
var b = Case1()
|
||||
b.<!DEBUG_INFO_CALL("fqName: tests.diag.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 2
|
||||
class Case2 {
|
||||
val foo: Int = 1
|
||||
fun foo(): Int = 1
|
||||
}
|
||||
|
||||
fun case2() {
|
||||
Case2().<!DEBUG_INFO_CALL("fqName: tests.diag.Case2.foo; typeCall: function")!>foo()<!>
|
||||
val a = Case2()
|
||||
a.<!DEBUG_INFO_CALL("fqName: tests.diag.Case2.foo; typeCall: function")!>foo()<!>
|
||||
var b = Case2()
|
||||
b.<!DEBUG_INFO_CALL("fqName: tests.diag.Case2.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 3
|
||||
class Case3() {
|
||||
val foo = object : Marker {}
|
||||
fun foo(): Int = 1
|
||||
|
||||
fun f() {
|
||||
this.<!DEBUG_INFO_CALL("fqName: tests.diag.Case3.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
}
|
||||
|
||||
fun case3() {
|
||||
Case3().<!DEBUG_INFO_CALL("fqName: tests.diag.Case3.foo; typeCall: function")!>foo()<!>
|
||||
val a = Case3()
|
||||
a.<!DEBUG_INFO_CALL("fqName: tests.diag.Case3.foo; typeCall: function")!>foo()<!>
|
||||
var b = Case3()
|
||||
b.<!DEBUG_INFO_CALL("fqName: tests.diag.Case3.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 4
|
||||
class Case4() {
|
||||
val foo = object : Marker {}
|
||||
|
||||
fun f() {
|
||||
this.<!DEBUG_INFO_CALL("fqName: tests.diag.Marker.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
}
|
||||
}
|
||||
|
||||
fun case4() {
|
||||
Case4().<!DEBUG_INFO_CALL("fqName: tests.diag.Marker.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
val a = Case4()
|
||||
a.<!DEBUG_INFO_CALL("fqName: tests.diag.Marker.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
var b = Case4()
|
||||
b.<!DEBUG_INFO_CALL("fqName: tests.diag.Marker.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
}
|
||||
|
||||
|
||||
// TESTCASE NUMBER: 5
|
||||
class Case5() {
|
||||
companion object foo {
|
||||
operator fun invoke() {}
|
||||
}
|
||||
|
||||
fun innerFun() = this.<!DEBUG_INFO_CALL("fqName: tests.diag.Case5.foo; typeCall: function")!>foo()<!>
|
||||
|
||||
fun foo(): Int = 1
|
||||
|
||||
}
|
||||
|
||||
fun case5() {
|
||||
Case5().<!DEBUG_INFO_CALL("fqName: tests.diag.Case5.foo; typeCall: function")!>foo()<!>
|
||||
val a = Case5()
|
||||
a.<!DEBUG_INFO_CALL("fqName: tests.diag.Case5.foo; typeCall: function")!>foo()<!>
|
||||
|
||||
var b = Case5()
|
||||
b.<!DEBUG_INFO_CALL("fqName: tests.diag.Case5.foo; typeCall: function")!>foo()<!>
|
||||
}
|
||||
|
||||
|
||||
// TESTCASE NUMBER: 6
|
||||
class Case6() {
|
||||
companion object foo {
|
||||
operator fun invoke() {}
|
||||
}
|
||||
|
||||
fun innerFun() = <!DEBUG_INFO_CALL("fqName: tests.diag.Case6.foo.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
}
|
||||
|
||||
fun case6() {
|
||||
Case6.<!DEBUG_INFO_CALL("fqName: tests.diag.Case6.foo.invoke; typeCall: variable&invoke")!>foo()<!>
|
||||
}
|
||||
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 4
|
||||
* RELEVANT PLACES: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 5
|
||||
* overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 11 -> sentence 1
|
||||
* NUMBER: 2
|
||||
* DESCRIPTION: sets of declared in the package scope and star-imported extension callables
|
||||
*/
|
||||
|
||||
// FILE: Extensions.kt
|
||||
package libPackage
|
||||
|
||||
public fun String?.orEmpty(): String = "my Extension for $this"
|
||||
|
||||
// FILE: TestCase2.kt
|
||||
package sentence3
|
||||
|
||||
import libPackage.*
|
||||
//import libPackage.orEmpty
|
||||
|
||||
private fun String?.orEmpty(): String = "my top level extension for $this"
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case2(s: String?) {
|
||||
s.<!DEBUG_INFO_CALL("fqName: sentence3.orEmpty; typeCall: extension function")!>orEmpty()<!>
|
||||
}
|
||||
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 5
|
||||
* RELEVANT PLACES: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 11 -> sentence 1
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: set of star-imported extension callables
|
||||
*/
|
||||
|
||||
// FILE: Extensions.kt
|
||||
package libPackage
|
||||
|
||||
public fun String?.orEmpty(): String = "my Extension for $this"
|
||||
|
||||
// FILE: TestCase2.kt
|
||||
package sentence3
|
||||
|
||||
import libPackage.*
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case2(s: String?) {
|
||||
s.<!DEBUG_INFO_CALL("fqName: libPackage.orEmpty; typeCall: extension function")!>orEmpty()<!>
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE -UNUSED_VALUE -UNUSED_PARAMETER -UNUSED_EXPRESSION
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
|
||||
*
|
||||
* SPEC VERSION: 0.1-268
|
||||
* PLACE: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 6 -> sentence 6
|
||||
* RELEVANT PLACES: overload-resolution, building-the-overload-candidate-set-ocs, call-with-an-explicit-receiver -> paragraph 11 -> sentence 1
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: set of implicitly-imported extension callables
|
||||
*/
|
||||
|
||||
// FILE: Extensions.kt
|
||||
package libPackage
|
||||
|
||||
private fun String?.orEmpty(): String = "my private Extension for $this"
|
||||
|
||||
// FILE: TestCase2.kt
|
||||
package sentence3
|
||||
import libPackage.* //nothing to import, extension is private
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case2(s: String) {
|
||||
s.<!DEBUG_INFO_CALL("fqName: kotlin.text.orEmpty; typeCall: inline extension function")!>orEmpty()<!>
|
||||
}
|
||||
+177
@@ -0,0 +1,177 @@
|
||||
{
|
||||
"6": {
|
||||
"pos": {
|
||||
"2": [
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 2,
|
||||
"description": "The sets of local extension callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 3,
|
||||
"description": "sets of local, explicitly imported, declared in the package scope and star-imported extension callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 3,
|
||||
"description": "The sets of non-extension member callables named f of type T;",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/1.3.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 3,
|
||||
"description": "sets of non-extension member callables, local, explicitly imported, declared in the package scope and star-imported extension callables",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/1.4.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "set of non-extension member callables only",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 5,
|
||||
"description": "sets of non-extension member callables, local, explicitly imported, declared in the package scope and star-imported extension callables",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/1.5.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "extension calls with explicit and implicit receiver",
|
||||
"unexpectedBehaviour": true
|
||||
}
|
||||
],
|
||||
"1": [
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "set of non-extension member callables only",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 3,
|
||||
"description": "The sets of non-extension member callables named f of type T;",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 3,
|
||||
"description": "sets of non-extension member callables, local, explicitly imported, declared in the package scope and star-imported extension callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 5,
|
||||
"description": "sets of non-extension member callables, local, explicitly imported, declared in the package scope and star-imported extension callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "sets of non-extension member callables only",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
],
|
||||
"3": [
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 3,
|
||||
"description": "sets of local, explicitly imported, declared in the package scope and star-imported extension callables",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/2.4.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "sets of explicitly imported, declared in the package scope and star-imported extension callables",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
],
|
||||
"4": [
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "sets of explicitly imported, declared in the package scope and star-imported extension callables",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/3.1.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 6,
|
||||
"description": "sets of extension callables declared in the package scope",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "sets of declared in the package scope and star-imported extension callables",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
],
|
||||
"5": [
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "set of star-imported extension callables",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "sets of declared in the package scope and star-imported extension callables",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/4.2.kt",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
],
|
||||
"6": [
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "set of implicitly-imported extension callables",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"9": {
|
||||
"pos": {
|
||||
"1": [
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 6,
|
||||
"description": "sets of extension callables declared in the package scope",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/4.1.kt",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"11": {
|
||||
"pos": {
|
||||
"1": [
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "set of star-imported extension callables",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/5.1.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "set of implicitly-imported extension callables",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/6.1.kt",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Vendored
+43
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"1": {
|
||||
"pos": {
|
||||
"1": [
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 2,
|
||||
"description": "The sets of local extension callables",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/2.1.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "set of non-extension member callables only",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/1.2.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "set of non-extension member callables only",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/2.3.kt",
|
||||
"unexpectedBehaviour": false
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "extension calls with explicit and implicit receiver",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/2.2.kt",
|
||||
"unexpectedBehaviour": true
|
||||
},
|
||||
{
|
||||
"specVersion": "0.1-268",
|
||||
"casesNumber": 1,
|
||||
"description": "sets of non-extension member callables only",
|
||||
"path": "compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/1.1.kt",
|
||||
"unexpectedBehaviour": false
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Generated
+137
-2
@@ -25,7 +25,7 @@ public class DiagnosticsTestSpecGenerated extends AbstractDiagnosticsTestSpec {
|
||||
}
|
||||
|
||||
public void testAllFilesPresentInDiagnostics() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/diagnostics"), Pattern.compile("^(.+)\\.kt$"), null, true, "helpers", "linked/type-inference", "linked/type-system/type-kinds/type-parameters", "linked/type-system/subtyping", "linked/control--and-data-flow-analysis.control-flow-graph.expressions-1.conditional-expressions", "linked/declarations/classifier-declaration/classifier-initialization", "linked/declarations/function-declaration", "linked/declarations/property-declaration/property-initialization", "linked/annotations", "linked/statements/assignments/simple-assignments", "linked/inheritance", "linked/expressions/function-literals", "linked/expressions/call-and-property-access-expressions", "linked/overloadable-operators", "linked/overload-resolution", "linked/control--and-data-flow-analysis/performing-analysis-on-the-control-flow-graph");
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/diagnostics"), Pattern.compile("^(.+)\\.kt$"), null, true, "helpers", "linked/type-inference", "linked/type-system/type-kinds/type-parameters", "linked/type-system/subtyping", "linked/control--and-data-flow-analysis.control-flow-graph.expressions-1.conditional-expressions", "linked/declarations/classifier-declaration/classifier-initialization", "linked/declarations/function-declaration", "linked/declarations/property-declaration/property-initialization", "linked/annotations", "linked/statements/assignments/simple-assignments", "linked/inheritance", "linked/expressions/function-literals", "linked/expressions/call-and-property-access-expressions", "linked/overloadable-operators", "linked/overload-resolution/c-level-partition", "linked/overload-resolution/determining-function-applicability-for-a-specific-call", "linked/control--and-data-flow-analysis/performing-analysis-on-the-control-flow-graph");
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/tests-spec/testData/diagnostics/linked")
|
||||
@@ -37,7 +37,7 @@ public class DiagnosticsTestSpecGenerated extends AbstractDiagnosticsTestSpec {
|
||||
}
|
||||
|
||||
public void testAllFilesPresentInLinked() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/diagnostics/linked"), Pattern.compile("^(.+)\\.kt$"), null, true, "type-inference", "type-system/type-kinds/type-parameters", "type-system/subtyping", "control--and-data-flow-analysis.control-flow-graph.expressions-1.conditional-expressions", "declarations/classifier-declaration/classifier-initialization", "declarations/function-declaration", "declarations/property-declaration/property-initialization", "annotations", "statements/assignments/simple-assignments", "inheritance", "expressions/function-literals", "expressions/call-and-property-access-expressions", "overloadable-operators", "overload-resolution", "control--and-data-flow-analysis/performing-analysis-on-the-control-flow-graph");
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/diagnostics/linked"), Pattern.compile("^(.+)\\.kt$"), null, true, "type-inference", "type-system/type-kinds/type-parameters", "type-system/subtyping", "control--and-data-flow-analysis.control-flow-graph.expressions-1.conditional-expressions", "declarations/classifier-declaration/classifier-initialization", "declarations/function-declaration", "declarations/property-declaration/property-initialization", "annotations", "statements/assignments/simple-assignments", "inheritance", "expressions/function-literals", "expressions/call-and-property-access-expressions", "overloadable-operators", "overload-resolution/c-level-partition", "overload-resolution/determining-function-applicability-for-a-specific-call", "control--and-data-flow-analysis/performing-analysis-on-the-control-flow-graph");
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/tests-spec/testData/diagnostics/linked/control--and-data-flow-analysis")
|
||||
@@ -3371,6 +3371,141 @@ public class DiagnosticsTestSpecGenerated extends AbstractDiagnosticsTestSpec {
|
||||
}
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/tests-spec/testData/diagnostics/linked/overload-resolution")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class Overload_resolution extends AbstractDiagnosticsTestSpec {
|
||||
private void runTest(String testDataFilePath) throws Exception {
|
||||
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
|
||||
}
|
||||
|
||||
public void testAllFilesPresentInOverload_resolution() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/diagnostics/linked/overload-resolution"), Pattern.compile("^(.+)\\.kt$"), null, true, "c-level-partition", "determining-function-applicability-for-a-specific-call");
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class Building_the_overload_candidate_set_ocs extends AbstractDiagnosticsTestSpec {
|
||||
private void runTest(String testDataFilePath) throws Exception {
|
||||
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
|
||||
}
|
||||
|
||||
public void testAllFilesPresentInBuilding_the_overload_candidate_set_ocs() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class Call_with_an_explicit_receiver extends AbstractDiagnosticsTestSpec {
|
||||
private void runTest(String testDataFilePath) throws Exception {
|
||||
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
|
||||
}
|
||||
|
||||
public void testAllFilesPresentInCall_with_an_explicit_receiver() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class P_6 extends AbstractDiagnosticsTestSpec {
|
||||
private void runTest(String testDataFilePath) throws Exception {
|
||||
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
|
||||
}
|
||||
|
||||
public void testAllFilesPresentInP_6() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class Pos extends AbstractDiagnosticsTestSpec {
|
||||
private void runTest(String testDataFilePath) throws Exception {
|
||||
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
|
||||
}
|
||||
|
||||
@TestMetadata("1.1.kt")
|
||||
public void test1_1() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/1.1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.2.kt")
|
||||
public void test1_2() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/1.2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.3.kt")
|
||||
public void test1_3() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/1.3.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.4.kt")
|
||||
public void test1_4() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/1.4.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.5.kt")
|
||||
public void test1_5() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/1.5.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("2.1.kt")
|
||||
public void test2_1() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/2.1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("2.2.kt")
|
||||
public void test2_2() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/2.2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("2.3.kt")
|
||||
public void test2_3() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/2.3.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("2.4.kt")
|
||||
public void test2_4() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/2.4.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("3.1.kt")
|
||||
public void test3_1() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/3.1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("4.1.kt")
|
||||
public void test4_1() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/4.1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("4.2.kt")
|
||||
public void test4_2() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/4.2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("5.1.kt")
|
||||
public void test5_1() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/5.1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("6.1.kt")
|
||||
public void test6_1() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos/6.1.kt");
|
||||
}
|
||||
|
||||
public void testAllFilesPresentInPos() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/diagnostics/linked/overload-resolution/building-the-overload-candidate-set-ocs/call-with-an-explicit-receiver/p-6/pos"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/tests-spec/testData/diagnostics/linked/statements")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
|
||||
Generated
+15
-20
@@ -3317,19 +3317,19 @@ public class BlackBoxCodegenTestSpecGenerated extends AbstractBlackBoxCodegenTes
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6")
|
||||
@TestMetadata("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class P_6 extends AbstractBlackBoxCodegenTestSpec {
|
||||
public static class P_5 extends AbstractBlackBoxCodegenTestSpec {
|
||||
private void runTest(String testDataFilePath) throws Exception {
|
||||
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
|
||||
}
|
||||
|
||||
public void testAllFilesPresentInP_6() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
public void testAllFilesPresentInP_5() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos")
|
||||
@TestMetadata("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class Pos extends AbstractBlackBoxCodegenTestSpec {
|
||||
@@ -3339,56 +3339,51 @@ public class BlackBoxCodegenTestSpecGenerated extends AbstractBlackBoxCodegenTes
|
||||
|
||||
@TestMetadata("1.1.kt")
|
||||
public void test1_1() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.1.kt");
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.10.kt")
|
||||
public void test1_10() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.10.kt");
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.10.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.2.kt")
|
||||
public void test1_2() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.3.kt")
|
||||
public void test1_3() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.3.kt");
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.4.kt")
|
||||
public void test1_4() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.4.kt");
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.4.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.5.kt")
|
||||
public void test1_5() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.5.kt");
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.5.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.6.kt")
|
||||
public void test1_6() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.6.kt");
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.6.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.7.kt")
|
||||
public void test1_7() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.7.kt");
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.7.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.8.kt")
|
||||
public void test1_8() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.8.kt");
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.8.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("1.9.kt")
|
||||
public void test1_9() throws Exception {
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos/1.9.kt");
|
||||
runTest("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos/1.9.kt");
|
||||
}
|
||||
|
||||
public void testAllFilesPresentInPos() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-6/pos"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/tests-spec/testData/codegen/box/linked/overload-resolution/callables-and-invoke-convention/p-5/pos"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user