Add FIR enhancement tests, fix some exceptions / problems around them
Test data and tests themselves are based on compiler/testData/loadJava/compiledJava
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
<T> public abstract interface Comparator : R|java/lang/Object| {
|
||||
public abstract operator function compare(o1: R|ft<T, T?>|!, o2: R|ft<T, T?>|!): R|kotlin/Int|
|
||||
|
||||
public abstract operator function equals(obj: R|ft<java/lang/Object, java/lang/Object?>|!): R|kotlin/Boolean|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public final class DifferentParametersCount : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public final class FakeStaticOverrides : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
public abstract interface FilenameFilter : R|java/lang/Object| {
|
||||
public abstract operator function accept(dir: R|ft<java/io/File, java/io/File?>|!, name: R|ft<java/lang/String, java/lang/String?>|!): R|kotlin/Boolean|
|
||||
|
||||
}
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
<T> public abstract interface GenericInterfaceParameterWithSelfBound : R|java/lang/Object| {
|
||||
public abstract operator function method(t: R|ft<T, T?>|!): R|ft<T, T?>|!
|
||||
|
||||
}
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
<A, B> public abstract interface GenericInterfaceParametersWithBounds : R|java/lang/Object| {
|
||||
public abstract operator function method(a: R|kotlin/Array<ft<A, A?>>|, b: R|ft<B, B?>|!): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
public abstract interface GenericMethodParameters : R|java/lang/Object| {
|
||||
public abstract operator function method(a: R|kotlin/Array<ft<A, A?>>|, b: R|ft<B, B?>|!): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
public abstract interface InterfaceWithObjectMethod : R|java/lang/Object| {
|
||||
public abstract operator function toString(): R|ft<java/lang/String, java/lang/String?>|!
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface Nested : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
public abstract interface Runnable : R|java/lang/Object| {
|
||||
public abstract operator function run(): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface SamSubinterfaceOfTwo : R|java/lang/Object| {
|
||||
}
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
public abstract interface SamSubinterfaceOverridding : R|java/lang/Runnable| {
|
||||
public abstract operator function run(): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public final class StaticOverrides : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface SubstitutedSamInterface : R|java/util/Comparator<java/lang/String>| {
|
||||
}
|
||||
Vendored
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface SubstitutedSamInterfaceSubclassOfBuiltin : R|java/lang/Comparable<test/SubstitutedSamInterfaceSubclassOfBuiltin>| {
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
public abstract interface VarargParameter : R|java/lang/Object| {
|
||||
public abstract operator function f(vararg strings: R|kotlin/Array<ft<java/lang/String, java/lang/String?>>|): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
public open class AmbiguousAdapters : R|java/lang/Object| {
|
||||
public open operator function foo(r: R|ft<java/lang/Runnable, java/lang/Runnable?>|!): R|kotlin/Unit|
|
||||
|
||||
public open operator function foo(c: R|ft<java/io/Closeable, java/io/Closeable?>|!): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
public open class Basic : R|java/lang/Object| {
|
||||
public open operator function foo(r: R|ft<java/lang/Runnable, java/lang/Runnable?>|!): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public open class Constructor : R|java/lang/Object| {
|
||||
}
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
public open class ConstructorWithAnnotations : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface DeepSamLoop : R|java/lang/Object| {
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// SKIP_IN_FIR_TEST
|
||||
package test;
|
||||
|
||||
class NoSamForTypeParameter<K extends Runnable> {
|
||||
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// SKIP_IN_FIR_TEST
|
||||
package test;
|
||||
|
||||
class NoSamForTypeParameter {
|
||||
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
public open class NonTrivialFunctionType : R|java/lang/Object| {
|
||||
public open operator function foo(filenameFilter: R|ft<java/io/FilenameFilter, java/io/FilenameFilter?>|!): R|kotlin/Unit|
|
||||
|
||||
public open operator function foo(comparator: R|ft<java/util/Comparator<ft<java/lang/String, java/lang/String?>>, java/util/Comparator<ft<java/lang/String, java/lang/String?>>>|): R|kotlin/Unit|
|
||||
|
||||
public open operator function wildcardUnbound(comparator: R|ft<java/util/Comparator<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:?>, java/util/Comparator<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:?>?>|!): R|kotlin/Unit|
|
||||
|
||||
public open operator function wildcardBound(comparator: R|ft<java/util/Comparator<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:? super CharSequence>, java/util/Comparator<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:? super CharSequence>?>|!): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
public open class PrivateSamAdapter : R|java/lang/Object| {
|
||||
private open operator function samAdapter(r: R|ft<test/PrivateSamAdapter.SamInterface, test/PrivateSamAdapter.SamInterface?>|!): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
public abstract interface SelfAsParameter : R|java/lang/Object| {
|
||||
public abstract operator function foo(p: R|ft<test/SelfAsParameter, test/SelfAsParameter?>|!): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
public open class SeveralSamParameters : R|java/lang/Object| {
|
||||
}
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
<T> public open class TypeParameterOfClass : R|java/lang/Object| {
|
||||
public open operator function foo(comparator: R|ft<java/util/Comparator<ft<T, T?>>, java/util/Comparator<ft<T, T?>>>|): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
public open class TypeParameterOfMethod : R|java/lang/Object| {
|
||||
}
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
<T> public open class TypeParameterOfOuterClass : R|java/lang/Object| {
|
||||
}
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface AdapterDoesntOverrideDeclaration : R|java/lang/Object| {
|
||||
}
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritedAdapterAndDeclaration : R|java/lang/Object| {
|
||||
}
|
||||
Vendored
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritedAmbiguousAdapters : R|java/lang/Object| {
|
||||
}
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritedAndOverriddenAmbiguousAdapters : R|java/lang/Object| {
|
||||
}
|
||||
Vendored
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritedOverridden : R|java/lang/Object| {
|
||||
}
|
||||
Vendored
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritedOverriddenAdapter : R|java/lang/Object| {
|
||||
}
|
||||
Vendored
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritedSameAdapters : R|java/lang/Object| {
|
||||
}
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritedSameAdaptersWithSubstitution : R|java/lang/Object| {
|
||||
}
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritedSimple : R|java/lang/Object| {
|
||||
}
|
||||
compiler/testData/loadJava/compiledJava/sam/adapters/inheritance/OverriddenAmbiguousAdapters.fir.txt
Vendored
+2
@@ -0,0 +1,2 @@
|
||||
public abstract interface OverriddenAmbiguousAdapters : R|java/lang/Object| {
|
||||
}
|
||||
Reference in New Issue
Block a user