Merge remote-tracking branch 'origin/master'
This commit is contained in:
+5
@@ -1349,6 +1349,11 @@ public class Fir2IrTextTestGenerated extends AbstractFir2IrTextTest {
|
|||||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/ir/irText/expressions/callableReferences"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/ir/irText/expressions/callableReferences"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("boundInnerGenericConstructor.kt")
|
||||||
|
public void testBoundInnerGenericConstructor() throws Exception {
|
||||||
|
runTest("compiler/testData/ir/irText/expressions/callableReferences/boundInnerGenericConstructor.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("constructorWithAdaptedArguments.kt")
|
@TestMetadata("constructorWithAdaptedArguments.kt")
|
||||||
public void testConstructorWithAdaptedArguments() throws Exception {
|
public void testConstructorWithAdaptedArguments() throws Exception {
|
||||||
runTest("compiler/testData/ir/irText/expressions/callableReferences/constructorWithAdaptedArguments.kt");
|
runTest("compiler/testData/ir/irText/expressions/callableReferences/constructorWithAdaptedArguments.kt");
|
||||||
|
|||||||
Generated
-5
@@ -970,11 +970,6 @@ public class FirOldFrontendDiagnosticsTestGenerated extends AbstractFirOldFronte
|
|||||||
runTest("compiler/testData/diagnostics/tests/annotations/javaUnrepeatable.kt");
|
runTest("compiler/testData/diagnostics/tests/annotations/javaUnrepeatable.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
@TestMetadata("kotlinAnnotationOnJavaInterface.kt")
|
|
||||||
public void testKotlinAnnotationOnJavaInterface() throws Exception {
|
|
||||||
runTest("compiler/testData/diagnostics/tests/annotations/kotlinAnnotationOnJavaInterface.kt");
|
|
||||||
}
|
|
||||||
|
|
||||||
@TestMetadata("kt1860-negative.kt")
|
@TestMetadata("kt1860-negative.kt")
|
||||||
public void testKt1860_negative() throws Exception {
|
public void testKt1860_negative() throws Exception {
|
||||||
runTest("compiler/testData/diagnostics/tests/annotations/kt1860-negative.kt");
|
runTest("compiler/testData/diagnostics/tests/annotations/kt1860-negative.kt");
|
||||||
|
|||||||
+2
-2
@@ -218,8 +218,8 @@ class ReflectionReferencesGenerator(statementGenerator: StatementGenerator) : St
|
|||||||
|
|
||||||
context.callToSubstitutedDescriptorMap[irAdapteeCallInner] = resolvedDescriptor
|
context.callToSubstitutedDescriptorMap[irAdapteeCallInner] = resolvedDescriptor
|
||||||
|
|
||||||
val irDispatchReceiver = dispatchReceiverValue?.load()
|
val irDispatchReceiver = dispatchReceiverValue?.loadIfExists()
|
||||||
val irExtensionReceiver = extensionReceiverValue?.load()
|
val irExtensionReceiver = extensionReceiverValue?.loadIfExists()
|
||||||
|
|
||||||
if (irDispatchReceiver != null) {
|
if (irDispatchReceiver != null) {
|
||||||
if (irDispatchReceiver.isSafeToUseWithoutCopying()) {
|
if (irDispatchReceiver.isSafeToUseWithoutCopying()) {
|
||||||
|
|||||||
@@ -418,8 +418,8 @@ inline fun <T> runReadAction(crossinline runnable: () -> T): T {
|
|||||||
return ApplicationManager.getApplication().runReadAction(Computable { runnable() })
|
return ApplicationManager.getApplication().runReadAction(Computable { runnable() })
|
||||||
}
|
}
|
||||||
|
|
||||||
fun KtClassOrObject.safeIsLocal(): Boolean = runReadAction { this.isLocal }
|
inline fun KtClassOrObject.safeIsLocal(): Boolean = runReadAction { this.isLocal }
|
||||||
|
|
||||||
fun KtFile.safeIsScript() = runReadAction { this.isScript() }
|
inline fun KtFile.safeIsScript() = runReadAction { this.isScript() }
|
||||||
|
|
||||||
fun KtFile.safeScript() = runReadAction { this.script }
|
inline fun KtFile.safeScript() = runReadAction { this.script }
|
||||||
-12
@@ -1,12 +0,0 @@
|
|||||||
// Issue: KT-35856
|
|
||||||
|
|
||||||
// FILE: Bar.java
|
|
||||||
@Anno
|
|
||||||
public interface Bar {}
|
|
||||||
|
|
||||||
// FILE: Foo.kt
|
|
||||||
@Target(AnnotationTarget.FILE, AnnotationTarget.CLASS)
|
|
||||||
@Retention(AnnotationRetention.BINARY)
|
|
||||||
annotation class Anno
|
|
||||||
|
|
||||||
class Foo : Bar
|
|
||||||
-12
@@ -1,12 +0,0 @@
|
|||||||
// Issue: KT-35856
|
|
||||||
|
|
||||||
// FILE: Bar.java
|
|
||||||
@Anno
|
|
||||||
public interface Bar {}
|
|
||||||
|
|
||||||
// FILE: Foo.kt
|
|
||||||
@Target(AnnotationTarget.FILE, AnnotationTarget.CLASS)
|
|
||||||
@Retention(AnnotationRetention.BINARY)
|
|
||||||
annotation class Anno
|
|
||||||
|
|
||||||
class Foo : Bar
|
|
||||||
-21
@@ -1,21 +0,0 @@
|
|||||||
package
|
|
||||||
|
|
||||||
@kotlin.annotation.Target(allowedTargets = {AnnotationTarget.FILE, AnnotationTarget.CLASS}) @kotlin.annotation.Retention(value = AnnotationRetention.BINARY) public final annotation class Anno : kotlin.Annotation {
|
|
||||||
public constructor Anno()
|
|
||||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
|
||||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
|
||||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
|
||||||
}
|
|
||||||
|
|
||||||
@Anno public interface Bar {
|
|
||||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
|
||||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
|
||||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
|
||||||
}
|
|
||||||
|
|
||||||
public final class Foo : Bar {
|
|
||||||
public constructor Foo()
|
|
||||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
|
||||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
|
||||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
|
||||||
}
|
|
||||||
Vendored
+91
@@ -0,0 +1,91 @@
|
|||||||
|
FILE fqName:test fileName:/boundInnerGenericConstructor.kt
|
||||||
|
CLASS CLASS name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||||
|
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.Foo
|
||||||
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
CONSTRUCTOR visibility:public <> () returnType:test.Foo<T of test.Foo> [primary]
|
||||||
|
BLOCK_BODY
|
||||||
|
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
||||||
|
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||||
|
CLASS CLASS name:Inner modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]
|
||||||
|
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.Foo.Inner
|
||||||
|
TYPE_PARAMETER name:P index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
CONSTRUCTOR visibility:public <> (a:T of test.Foo, b:P of test.Foo.Inner) returnType:test.Foo.Inner<P of test.Foo.Inner> [primary]
|
||||||
|
VALUE_PARAMETER name:a index:0 type:T of test.Foo
|
||||||
|
VALUE_PARAMETER name:b index:1 type:P of test.Foo.Inner
|
||||||
|
BLOCK_BODY
|
||||||
|
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
||||||
|
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Inner modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]'
|
||||||
|
PROPERTY name:a visibility:public modality:FINAL [val]
|
||||||
|
FIELD PROPERTY_BACKING_FIELD name:a type:T of test.Foo visibility:private [final]
|
||||||
|
EXPRESSION_BODY
|
||||||
|
GET_VAR 'a: T of test.Foo declared in test.Foo.Inner.<init>' type=T of test.Foo origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||||
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:public modality:FINAL <> ($this:test.Foo.Inner) returnType:T of test.Foo
|
||||||
|
correspondingProperty: PROPERTY name:a visibility:public modality:FINAL [val]
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:test.Foo.Inner
|
||||||
|
BLOCK_BODY
|
||||||
|
RETURN type=kotlin.Nothing from='public final fun <get-a> (): T of test.Foo declared in test.Foo.Inner'
|
||||||
|
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:T of test.Foo visibility:private [final]' type=T of test.Foo origin=null
|
||||||
|
receiver: GET_VAR '<this>: test.Foo.Inner declared in test.Foo.Inner.<get-a>' type=test.Foo.Inner origin=null
|
||||||
|
PROPERTY name:b visibility:public modality:FINAL [val]
|
||||||
|
FIELD PROPERTY_BACKING_FIELD name:b type:P of test.Foo.Inner visibility:private [final]
|
||||||
|
EXPRESSION_BODY
|
||||||
|
GET_VAR 'b: P of test.Foo.Inner declared in test.Foo.Inner.<init>' type=P of test.Foo.Inner origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||||
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-b> visibility:public modality:FINAL <> ($this:test.Foo.Inner) returnType:P of test.Foo.Inner
|
||||||
|
correspondingProperty: PROPERTY name:b visibility:public modality:FINAL [val]
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:test.Foo.Inner
|
||||||
|
BLOCK_BODY
|
||||||
|
RETURN type=kotlin.Nothing from='public final fun <get-b> (): P of test.Foo.Inner declared in test.Foo.Inner'
|
||||||
|
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:b type:P of test.Foo.Inner visibility:private [final]' type=P of test.Foo.Inner origin=null
|
||||||
|
receiver: GET_VAR '<this>: test.Foo.Inner declared in test.Foo.Inner.<get-b>' type=test.Foo.Inner origin=null
|
||||||
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
|
overridden:
|
||||||
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||||
|
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||||
|
overridden:
|
||||||
|
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||||
|
overridden:
|
||||||
|
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
|
overridden:
|
||||||
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||||
|
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||||
|
overridden:
|
||||||
|
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||||
|
overridden:
|
||||||
|
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
FUN name:foo visibility:public modality:FINAL <A, B> (a:A of test.foo, b:B of test.foo, x:kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<A of test.foo, B of test.foo>>) returnType:test.Foo.Inner<A of test.foo, B of test.foo> [inline]
|
||||||
|
TYPE_PARAMETER name:A index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
TYPE_PARAMETER name:B index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
VALUE_PARAMETER name:a index:0 type:A of test.foo
|
||||||
|
VALUE_PARAMETER name:b index:1 type:B of test.foo
|
||||||
|
VALUE_PARAMETER name:x index:2 type:kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<A of test.foo, B of test.foo>>
|
||||||
|
BLOCK_BODY
|
||||||
|
RETURN type=kotlin.Nothing from='public final fun foo <A, B> (a: A of test.foo, b: B of test.foo, x: kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<A of test.foo, B of test.foo>>): test.Foo.Inner<A of test.foo, B of test.foo> [inline] declared in test'
|
||||||
|
CALL 'public abstract fun invoke (p1: A of test.foo, p2: B of test.foo): test.Foo.Inner<A of test.foo, B of test.foo> [operator] declared in kotlin.Function2' type=test.Foo.Inner<A of test.foo, B of test.foo> origin=null
|
||||||
|
$this: GET_VAR 'x: kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<A of test.foo, B of test.foo>> declared in test.foo' type=kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<A of test.foo, B of test.foo>> origin=null
|
||||||
|
p1: GET_VAR 'a: A of test.foo declared in test.foo' type=A of test.foo origin=null
|
||||||
|
p2: GET_VAR 'b: B of test.foo declared in test.foo' type=B of test.foo origin=null
|
||||||
|
FUN name:box visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||||
|
BLOCK_BODY
|
||||||
|
VAR name:z type:test.Foo<kotlin.String> [val]
|
||||||
|
CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in test.Foo' type=test.Foo<kotlin.String> origin=null
|
||||||
|
<class: T>: kotlin.String
|
||||||
|
VAR name:foo type:IrErrorType [val]
|
||||||
|
ERROR_CALL 'Unresolved reference: <Inapplicable(INAPPLICABLE): [test/foo]>#' type=IrErrorType
|
||||||
|
CONST String type=kotlin.String value="O"
|
||||||
|
CONST String type=kotlin.String value="K"
|
||||||
|
FUNCTION_REFERENCE 'public constructor <init> (a: T of test.Foo, b: P of test.Foo.Inner) [primary] declared in test.Foo.Inner' type=kotlin.reflect.KFunction2<T of test.Foo, kotlin.Any?, test.Foo.Inner<kotlin.Any?>> origin=null reflectionTarget=<same>
|
||||||
|
RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in test'
|
||||||
|
CALL 'public final fun plus (other: kotlin.Any?): kotlin.String [operator] declared in kotlin' type=kotlin.String origin=null
|
||||||
|
$receiver: ERROR_CALL 'Unresolved reference: <Unresolved name: a>#' type=IrErrorType
|
||||||
|
other: ERROR_CALL 'Unresolved reference: <Unresolved name: b>#' type=IrErrorType
|
||||||
+13
@@ -0,0 +1,13 @@
|
|||||||
|
package test
|
||||||
|
|
||||||
|
class Foo<T> {
|
||||||
|
inner class Inner<P>(val a: T, val b: P)
|
||||||
|
}
|
||||||
|
|
||||||
|
inline fun <A, B> foo(a: A, b: B, x: (A, B) -> Foo<A>.Inner<B>): Foo<A>.Inner<B> = x(a, b)
|
||||||
|
|
||||||
|
fun box(): String {
|
||||||
|
val z = Foo<String>()
|
||||||
|
val foo = foo("O", "K", z::Inner)
|
||||||
|
return foo.a + foo.b
|
||||||
|
}
|
||||||
Vendored
+98
@@ -0,0 +1,98 @@
|
|||||||
|
FILE fqName:test fileName:/boundInnerGenericConstructor.kt
|
||||||
|
CLASS CLASS name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||||
|
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.Foo<T of test.Foo>
|
||||||
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
CONSTRUCTOR visibility:public <> () returnType:test.Foo<T of test.Foo> [primary]
|
||||||
|
BLOCK_BODY
|
||||||
|
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
||||||
|
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||||
|
CLASS CLASS name:Inner modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]
|
||||||
|
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.Foo.Inner<P of test.Foo.Inner, T of test.Foo>
|
||||||
|
TYPE_PARAMETER name:P index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
CONSTRUCTOR visibility:public <> ($this:test.Foo<T of test.Foo>, a:T of test.Foo, b:P of test.Foo.Inner) returnType:test.Foo.Inner<P of test.Foo.Inner, T of test.Foo> [primary]
|
||||||
|
$outer: VALUE_PARAMETER name:<this> type:test.Foo<T of test.Foo>
|
||||||
|
VALUE_PARAMETER name:a index:0 type:T of test.Foo
|
||||||
|
VALUE_PARAMETER name:b index:1 type:P of test.Foo.Inner
|
||||||
|
BLOCK_BODY
|
||||||
|
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
||||||
|
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Inner modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]'
|
||||||
|
PROPERTY name:a visibility:public modality:FINAL [val]
|
||||||
|
FIELD PROPERTY_BACKING_FIELD name:a type:T of test.Foo visibility:private [final]
|
||||||
|
EXPRESSION_BODY
|
||||||
|
GET_VAR 'a: T of test.Foo declared in test.Foo.Inner.<init>' type=T of test.Foo origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||||
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:public modality:FINAL <> ($this:test.Foo.Inner<P of test.Foo.Inner, T of test.Foo>) returnType:T of test.Foo
|
||||||
|
correspondingProperty: PROPERTY name:a visibility:public modality:FINAL [val]
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:test.Foo.Inner<P of test.Foo.Inner, T of test.Foo>
|
||||||
|
BLOCK_BODY
|
||||||
|
RETURN type=kotlin.Nothing from='public final fun <get-a> (): T of test.Foo declared in test.Foo.Inner'
|
||||||
|
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:T of test.Foo visibility:private [final]' type=T of test.Foo origin=null
|
||||||
|
receiver: GET_VAR '<this>: test.Foo.Inner<P of test.Foo.Inner, T of test.Foo> declared in test.Foo.Inner.<get-a>' type=test.Foo.Inner<P of test.Foo.Inner, T of test.Foo> origin=null
|
||||||
|
PROPERTY name:b visibility:public modality:FINAL [val]
|
||||||
|
FIELD PROPERTY_BACKING_FIELD name:b type:P of test.Foo.Inner visibility:private [final]
|
||||||
|
EXPRESSION_BODY
|
||||||
|
GET_VAR 'b: P of test.Foo.Inner declared in test.Foo.Inner.<init>' type=P of test.Foo.Inner origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||||
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-b> visibility:public modality:FINAL <> ($this:test.Foo.Inner<P of test.Foo.Inner, T of test.Foo>) returnType:P of test.Foo.Inner
|
||||||
|
correspondingProperty: PROPERTY name:b visibility:public modality:FINAL [val]
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:test.Foo.Inner<P of test.Foo.Inner, T of test.Foo>
|
||||||
|
BLOCK_BODY
|
||||||
|
RETURN type=kotlin.Nothing from='public final fun <get-b> (): P of test.Foo.Inner declared in test.Foo.Inner'
|
||||||
|
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:b type:P of test.Foo.Inner visibility:private [final]' type=P of test.Foo.Inner origin=null
|
||||||
|
receiver: GET_VAR '<this>: test.Foo.Inner<P of test.Foo.Inner, T of test.Foo> declared in test.Foo.Inner.<get-b>' type=test.Foo.Inner<P of test.Foo.Inner, T of test.Foo> origin=null
|
||||||
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
|
overridden:
|
||||||
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||||
|
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||||
|
overridden:
|
||||||
|
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||||
|
overridden:
|
||||||
|
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
|
overridden:
|
||||||
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||||
|
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||||
|
overridden:
|
||||||
|
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||||
|
overridden:
|
||||||
|
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||||
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
|
FUN name:foo visibility:public modality:FINAL <A, B> (a:A of test.foo, b:B of test.foo, x:kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>>) returnType:test.Foo.Inner<B of test.foo, A of test.foo> [inline]
|
||||||
|
TYPE_PARAMETER name:A index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
TYPE_PARAMETER name:B index:1 variance: superTypes:[kotlin.Any?]
|
||||||
|
VALUE_PARAMETER name:a index:0 type:A of test.foo
|
||||||
|
VALUE_PARAMETER name:b index:1 type:B of test.foo
|
||||||
|
VALUE_PARAMETER name:x index:2 type:kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>>
|
||||||
|
BLOCK_BODY
|
||||||
|
RETURN type=kotlin.Nothing from='public final fun foo <A, B> (a: A of test.foo, b: B of test.foo, x: kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>>): test.Foo.Inner<B of test.foo, A of test.foo> [inline] declared in test'
|
||||||
|
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function2, p2: P2 of kotlin.Function2): R of kotlin.Function2 [operator] declared in kotlin.Function2' type=test.Foo.Inner<B of test.foo, A of test.foo> origin=INVOKE
|
||||||
|
$this: GET_VAR 'x: kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>> declared in test.foo' type=kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>> origin=VARIABLE_AS_FUNCTION
|
||||||
|
p1: GET_VAR 'a: A of test.foo declared in test.foo' type=A of test.foo origin=null
|
||||||
|
p2: GET_VAR 'b: B of test.foo declared in test.foo' type=B of test.foo origin=null
|
||||||
|
FUN name:box visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||||
|
BLOCK_BODY
|
||||||
|
VAR name:z type:test.Foo<kotlin.String> [val]
|
||||||
|
CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in test.Foo' type=test.Foo<kotlin.String> origin=null
|
||||||
|
<class: T>: kotlin.String
|
||||||
|
VAR name:foo type:test.Foo.Inner<kotlin.String, kotlin.String> [val]
|
||||||
|
CALL 'public final fun foo <A, B> (a: A of test.foo, b: B of test.foo, x: kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>>): test.Foo.Inner<B of test.foo, A of test.foo> [inline] declared in test' type=test.Foo.Inner<kotlin.String, kotlin.String> origin=null
|
||||||
|
<A>: kotlin.String
|
||||||
|
<B>: kotlin.String
|
||||||
|
a: CONST String type=kotlin.String value="O"
|
||||||
|
b: CONST String type=kotlin.String value="K"
|
||||||
|
x: FUNCTION_REFERENCE 'public constructor <init> (a: T of test.Foo, b: P of test.Foo.Inner) [primary] declared in test.Foo.Inner' type=kotlin.reflect.KFunction2<@[ParameterName(name = 'a')] kotlin.String, @[ParameterName(name = 'b')] kotlin.String, test.Foo.Inner<kotlin.String, kotlin.String>> origin=null reflectionTarget=<same>
|
||||||
|
<P>: kotlin.String
|
||||||
|
$this: GET_VAR 'val z: test.Foo<kotlin.String> [val] declared in test.box' type=test.Foo<kotlin.String> origin=null
|
||||||
|
RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in test'
|
||||||
|
CALL 'public final fun plus (other: kotlin.Any?): kotlin.String [operator] declared in kotlin.String' type=kotlin.String origin=PLUS
|
||||||
|
$this: CALL 'public final fun <get-a> (): T of test.Foo declared in test.Foo.Inner' type=kotlin.String origin=GET_PROPERTY
|
||||||
|
$this: GET_VAR 'val foo: test.Foo.Inner<kotlin.String, kotlin.String> [val] declared in test.box' type=test.Foo.Inner<kotlin.String, kotlin.String> origin=null
|
||||||
|
other: CALL 'public final fun <get-b> (): P of test.Foo.Inner declared in test.Foo.Inner' type=kotlin.String origin=GET_PROPERTY
|
||||||
|
$this: GET_VAR 'val foo: test.Foo.Inner<kotlin.String, kotlin.String> [val] declared in test.box' type=test.Foo.Inner<kotlin.String, kotlin.String> origin=null
|
||||||
@@ -977,11 +977,6 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTest {
|
|||||||
runTest("compiler/testData/diagnostics/tests/annotations/javaUnrepeatable.kt");
|
runTest("compiler/testData/diagnostics/tests/annotations/javaUnrepeatable.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
@TestMetadata("kotlinAnnotationOnJavaInterface.kt")
|
|
||||||
public void testKotlinAnnotationOnJavaInterface() throws Exception {
|
|
||||||
runTest("compiler/testData/diagnostics/tests/annotations/kotlinAnnotationOnJavaInterface.kt");
|
|
||||||
}
|
|
||||||
|
|
||||||
@TestMetadata("kt1860-negative.kt")
|
@TestMetadata("kt1860-negative.kt")
|
||||||
public void testKt1860_negative() throws Exception {
|
public void testKt1860_negative() throws Exception {
|
||||||
runTest("compiler/testData/diagnostics/tests/annotations/kt1860-negative.kt");
|
runTest("compiler/testData/diagnostics/tests/annotations/kt1860-negative.kt");
|
||||||
|
|||||||
Generated
-5
@@ -972,11 +972,6 @@ public class DiagnosticsUsingJavacTestGenerated extends AbstractDiagnosticsUsing
|
|||||||
runTest("compiler/testData/diagnostics/tests/annotations/javaUnrepeatable.kt");
|
runTest("compiler/testData/diagnostics/tests/annotations/javaUnrepeatable.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
@TestMetadata("kotlinAnnotationOnJavaInterface.kt")
|
|
||||||
public void testKotlinAnnotationOnJavaInterface() throws Exception {
|
|
||||||
runTest("compiler/testData/diagnostics/tests/annotations/kotlinAnnotationOnJavaInterface.kt");
|
|
||||||
}
|
|
||||||
|
|
||||||
@TestMetadata("kt1860-negative.kt")
|
@TestMetadata("kt1860-negative.kt")
|
||||||
public void testKt1860_negative() throws Exception {
|
public void testKt1860_negative() throws Exception {
|
||||||
runTest("compiler/testData/diagnostics/tests/annotations/kt1860-negative.kt");
|
runTest("compiler/testData/diagnostics/tests/annotations/kt1860-negative.kt");
|
||||||
|
|||||||
@@ -1348,6 +1348,11 @@ public class IrTextTestCaseGenerated extends AbstractIrTextTestCase {
|
|||||||
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/ir/irText/expressions/callableReferences"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/ir/irText/expressions/callableReferences"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("boundInnerGenericConstructor.kt")
|
||||||
|
public void testBoundInnerGenericConstructor() throws Exception {
|
||||||
|
runTest("compiler/testData/ir/irText/expressions/callableReferences/boundInnerGenericConstructor.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("constructorWithAdaptedArguments.kt")
|
@TestMetadata("constructorWithAdaptedArguments.kt")
|
||||||
public void testConstructorWithAdaptedArguments() throws Exception {
|
public void testConstructorWithAdaptedArguments() throws Exception {
|
||||||
runTest("compiler/testData/ir/irText/expressions/callableReferences/constructorWithAdaptedArguments.kt");
|
runTest("compiler/testData/ir/irText/expressions/callableReferences/constructorWithAdaptedArguments.kt");
|
||||||
|
|||||||
@@ -112,8 +112,6 @@ enum class LanguageFeature(
|
|||||||
ProperComputationOrderOfTailrecDefaultParameters(KOTLIN_1_4),
|
ProperComputationOrderOfTailrecDefaultParameters(KOTLIN_1_4),
|
||||||
AllowNullableArrayArgsInMain(KOTLIN_1_4),
|
AllowNullableArrayArgsInMain(KOTLIN_1_4),
|
||||||
TrailingCommas(KOTLIN_1_4),
|
TrailingCommas(KOTLIN_1_4),
|
||||||
ProhibitInvisibleAbstractMethodsInSuperclasses(KOTLIN_1_4, kind = BUG_FIX),
|
|
||||||
ProhibitNonReifiedArraysAsReifiedTypeArguments(KOTLIN_1_4, kind = BUG_FIX),
|
|
||||||
ProhibitProtectedCallFromInline(KOTLIN_1_4, kind = BUG_FIX),
|
ProhibitProtectedCallFromInline(KOTLIN_1_4, kind = BUG_FIX),
|
||||||
ProperFinally(KOTLIN_1_4, kind = BUG_FIX),
|
ProperFinally(KOTLIN_1_4, kind = BUG_FIX),
|
||||||
AllowAssigningArrayElementsToVarargsInNamedFormForFunctions(KOTLIN_1_4),
|
AllowAssigningArrayElementsToVarargsInNamedFormForFunctions(KOTLIN_1_4),
|
||||||
@@ -128,13 +126,13 @@ enum class LanguageFeature(
|
|||||||
FunctionalInterfaceConversion(KOTLIN_1_4, kind = UNSTABLE_FEATURE),
|
FunctionalInterfaceConversion(KOTLIN_1_4, kind = UNSTABLE_FEATURE),
|
||||||
|
|
||||||
ProhibitSpreadOnSignaturePolymorphicCall(KOTLIN_1_5, kind = BUG_FIX),
|
ProhibitSpreadOnSignaturePolymorphicCall(KOTLIN_1_5, kind = BUG_FIX),
|
||||||
|
ProhibitInvisibleAbstractMethodsInSuperclasses(KOTLIN_1_5, kind = BUG_FIX),
|
||||||
|
ProhibitNonReifiedArraysAsReifiedTypeArguments(KOTLIN_1_5, kind = BUG_FIX),
|
||||||
|
ProhibitVarargAsArrayAfterSamArgument(KOTLIN_1_5, kind = BUG_FIX),
|
||||||
|
|
||||||
// Temporarily disabled, see KT-27084/KT-22379
|
// Temporarily disabled, see KT-27084/KT-22379
|
||||||
SoundSmartcastFromLoopConditionForLoopAssignedVariables(sinceVersion = null, kind = BUG_FIX),
|
SoundSmartcastFromLoopConditionForLoopAssignedVariables(sinceVersion = null, kind = BUG_FIX),
|
||||||
|
|
||||||
// TODO: set `sinceVersion` to KOTLIN_1_5
|
|
||||||
ProhibitVarargAsArrayAfterSamArgument(sinceVersion = null, kind = BUG_FIX),
|
|
||||||
|
|
||||||
// Experimental features
|
// Experimental features
|
||||||
|
|
||||||
Coroutines(
|
Coroutines(
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ public class KotlinCompilerVersion {
|
|||||||
// Binaries produced by this compiler with that language version (or any future language version) are going to be marked
|
// Binaries produced by this compiler with that language version (or any future language version) are going to be marked
|
||||||
// as "pre-release" and will not be loaded by release versions of the compiler.
|
// as "pre-release" and will not be loaded by release versions of the compiler.
|
||||||
// Change this value before and after every major release
|
// Change this value before and after every major release
|
||||||
private static final boolean IS_PRE_RELEASE = false;
|
private static final boolean IS_PRE_RELEASE = true;
|
||||||
|
|
||||||
public static final String TEST_IS_PRE_RELEASE_SYSTEM_PROPERTY = "kotlin.test.is.pre.release";
|
public static final String TEST_IS_PRE_RELEASE_SYSTEM_PROPERTY = "kotlin.test.is.pre.release";
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user