K2 Scripting tests: adding tests on script decls visibility
fixes (makes it stable) behavior of the script top-level declarations visibility in K2 scripts
This commit is contained in:
committed by
Space Team
parent
e5a6900458
commit
cdf4b17052
+57
@@ -0,0 +1,57 @@
|
||||
FILE: script.kts
|
||||
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
|
||||
SCRIPT: <script-script.kts>
|
||||
lval args: R|kotlin/Array<kotlin/String>|
|
||||
|
||||
public final val a: R|kotlin/Int| = Int(42)
|
||||
public get(): R|kotlin/Int|
|
||||
|
||||
public final class A : R|kotlin/Any| {
|
||||
public constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public final enum class E : R|kotlin/Enum<E>| {
|
||||
private constructor(): R|E| {
|
||||
super<R|kotlin/Enum<E>|>()
|
||||
}
|
||||
|
||||
public final static enum entry V: R|E|
|
||||
public final static fun values(): R|kotlin/Array<E>| {
|
||||
}
|
||||
|
||||
public final static fun valueOf(value: R|kotlin/String|): R|E| {
|
||||
}
|
||||
|
||||
public final static val entries: R|kotlin/enums/EnumEntries<E>|
|
||||
public get(): R|kotlin/enums/EnumEntries<E>|
|
||||
|
||||
}
|
||||
|
||||
public final object O : R|kotlin/Any| {
|
||||
private constructor(): R|O| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final val v: R|kotlin/Int| = Int(42)
|
||||
public get(): R|kotlin/Int|
|
||||
|
||||
}
|
||||
|
||||
public final fun foo(): R|kotlin/Int| {
|
||||
^foo Int(42)
|
||||
}
|
||||
|
||||
FILE: main.kt
|
||||
public final val b: R|kotlin/Int| = R|/a|
|
||||
public get(): R|kotlin/Int|
|
||||
public final val ca: R|A| = R|/A.A|()
|
||||
public get(): R|A|
|
||||
public final val ev: R|E| = Q|E|.R|/E.V|
|
||||
public get(): R|E|
|
||||
public final val ov: R|kotlin/Int| = Q|O|.R|/O.v|
|
||||
public get(): R|kotlin/Int|
|
||||
public final val rfoo: R|kotlin/Int| = R|/foo|()
|
||||
public get(): R|kotlin/Int|
|
||||
Vendored
+28
@@ -0,0 +1,28 @@
|
||||
|
||||
// FILE: script.kts
|
||||
|
||||
val a = 42
|
||||
|
||||
class A
|
||||
|
||||
enum class E {
|
||||
V
|
||||
}
|
||||
|
||||
object O {
|
||||
val v = 42
|
||||
}
|
||||
|
||||
fun foo() = 42
|
||||
|
||||
// FILE: main.kt
|
||||
|
||||
val b = a
|
||||
|
||||
val ca = A()
|
||||
|
||||
val ev = E.V
|
||||
|
||||
val ov = O.v
|
||||
|
||||
val rfoo = foo()
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
FILE: script1.kts
|
||||
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
|
||||
SCRIPT: <script-script1.kts>
|
||||
lval args: R|kotlin/Array<kotlin/String>|
|
||||
|
||||
public final val a: R|kotlin/Int| = Int(42)
|
||||
public get(): R|kotlin/Int|
|
||||
|
||||
FILE: script2.kts
|
||||
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
|
||||
SCRIPT: <script-script2.kts>
|
||||
lval args: R|kotlin/Array<kotlin/String>|
|
||||
|
||||
public final val a: R|kotlin/String| = String(42)
|
||||
public get(): R|kotlin/String|
|
||||
|
||||
FILE: main.kt
|
||||
public final fun foo(): <ERROR TYPE REF: Ambiguity: a, [/a, /a]> {
|
||||
^foo <Ambiguity: a, [/a, /a]>#
|
||||
}
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
|
||||
// FILE: script1.kts
|
||||
|
||||
val a = 42
|
||||
|
||||
// FILE: script2.kts
|
||||
|
||||
val a = "42"
|
||||
|
||||
// FILE: main.kt
|
||||
|
||||
fun foo() = <!OVERLOAD_RESOLUTION_AMBIGUITY!>a<!>
|
||||
Reference in New Issue
Block a user