diff --git a/j2k/tests/test/org/jetbrains/jet/j2k/test/AbstractJavaToKotlinConverterSingleFileTest.kt b/j2k/tests/test/org/jetbrains/jet/j2k/test/AbstractJavaToKotlinConverterSingleFileTest.kt index 44f51ca8db8..78bcb467e94 100644 --- a/j2k/tests/test/org/jetbrains/jet/j2k/test/AbstractJavaToKotlinConverterSingleFileTest.kt +++ b/j2k/tests/test/org/jetbrains/jet/j2k/test/AbstractJavaToKotlinConverterSingleFileTest.kt @@ -32,6 +32,10 @@ import org.jetbrains.jet.plugin.JetWithJdkAndRuntimeLightProjectDescriptor import com.intellij.psi.PsiJavaFile import org.jetbrains.jet.j2k.IdeaReferenceSearcher import org.jetbrains.jet.j2k.JavaToKotlinConverter +import org.jetbrains.jet.lang.psi.JetFile +import org.jetbrains.jet.plugin.caches.resolve.getAnalysisResults +import org.jetbrains.jet.lang.diagnostics.Severity +import org.jetbrains.jet.lang.diagnostics.rendering.DefaultErrorMessages public abstract class AbstractJavaToKotlinConverterSingleFileTest() : AbstractJavaToKotlinConverterTest() { val testHeaderPattern = Pattern.compile("//(element|expression|statement|method|class|file|comp)\n") @@ -80,8 +84,18 @@ public abstract class AbstractJavaToKotlinConverterSingleFileTest() : AbstractJa val reformatInFun = prefix in setOf("element", "expression", "statement") - val actual = reformat(rawConverted, project, reformatInFun) + var actual = reformat(rawConverted, project, reformatInFun) val kotlinPath = javaPath.replace(".java", ".kt") + + if (prefix == "file") { + val diagnostics = createKotlinFile(actual).getAnalysisResults().getBindingContext().getDiagnostics() + val errors = diagnostics.filter { it.getSeverity() == Severity.ERROR } + if (!errors.isEmpty()) { + val header = errors.map { "// ERROR: " + DefaultErrorMessages.RENDERER.render(it).replace('\n', ' ') }.joinToString("\n", postfix = "\n") + actual = header + actual + } + } + val expectedFile = File(kotlinPath) JetTestUtils.assertEqualsToFile(expectedFile, actual) } @@ -146,4 +160,8 @@ public abstract class AbstractJavaToKotlinConverterSingleFileTest() : AbstractJa private fun createJavaFile(text: String): PsiJavaFile { return myFixture.configureByText("converterTestFile.java", text) as PsiJavaFile } + + private fun createKotlinFile(text: String): JetFile { + return myFixture.configureByText("converterTestFile.kt", text) as JetFile + } } diff --git a/j2k/tests/testData/JavaApi.java b/j2k/tests/testData/JavaApi.java index 5f62153ef3f..27e97d9e614 100644 --- a/j2k/tests/testData/JavaApi.java +++ b/j2k/tests/testData/JavaApi.java @@ -59,6 +59,6 @@ public class WithVarargConstructor { public WithVarargConstructor(int p, Object... objects) { } } -class T { +public class T { public Set set; } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/annotations/annotationInterface3.kt b/j2k/tests/testData/fileOrElement/annotations/annotationInterface3.kt index eb0e44aaeaf..daff787669f 100644 --- a/j2k/tests/testData/fileOrElement/annotations/annotationInterface3.kt +++ b/j2k/tests/testData/fileOrElement/annotations/annotationInterface3.kt @@ -1,3 +1,4 @@ +// ERROR: Body is not allowed for annotation class annotation class Anon(public val value: String) { public enum class E { diff --git a/j2k/tests/testData/fileOrElement/anonymousBlock/oneStaticAnonBlock.java b/j2k/tests/testData/fileOrElement/anonymousBlock/oneStaticAnonBlock.java index c86774f1642..36b254b1c35 100644 --- a/j2k/tests/testData/fileOrElement/anonymousBlock/oneStaticAnonBlock.java +++ b/j2k/tests/testData/fileOrElement/anonymousBlock/oneStaticAnonBlock.java @@ -1,5 +1,5 @@ class Test { - String str; + static String str; static { str = "Ola"; } diff --git a/j2k/tests/testData/fileOrElement/anonymousBlock/oneStaticAnonBlock.kt b/j2k/tests/testData/fileOrElement/anonymousBlock/oneStaticAnonBlock.kt index 25613503183..3a01c285f88 100644 --- a/j2k/tests/testData/fileOrElement/anonymousBlock/oneStaticAnonBlock.kt +++ b/j2k/tests/testData/fileOrElement/anonymousBlock/oneStaticAnonBlock.kt @@ -1,7 +1,6 @@ class Test { - var str: String - class object { + var str: String { str = "Ola" } diff --git a/j2k/tests/testData/fileOrElement/assignmentExpression/nullability-settings.java b/j2k/tests/testData/fileOrElement/assignmentExpression/nullability-settings.java index 933ce771a98..2328ea5cff9 100644 --- a/j2k/tests/testData/fileOrElement/assignmentExpression/nullability-settings.java +++ b/j2k/tests/testData/fileOrElement/assignmentExpression/nullability-settings.java @@ -1,10 +1,10 @@ // !forceNotNullTypes: false // !specifyLocalVariableTypeByDefault: true -import java.util.BitSet; +import java.util.HashSet; class Foo { - void foo(BitSet o) { - BitSet o2 = o; + void foo(HashSet o) { + HashSet o2 = o; int foo = 0; foo = o2.size(); } diff --git a/j2k/tests/testData/fileOrElement/assignmentExpression/nullability-settings.kt b/j2k/tests/testData/fileOrElement/assignmentExpression/nullability-settings.kt index 3c0d0453f8f..26851db9e21 100644 --- a/j2k/tests/testData/fileOrElement/assignmentExpression/nullability-settings.kt +++ b/j2k/tests/testData/fileOrElement/assignmentExpression/nullability-settings.kt @@ -1,10 +1,10 @@ // !forceNotNullTypes: false // !specifyLocalVariableTypeByDefault: true -import java.util.BitSet +import java.util.HashSet class Foo { - fun foo(o: BitSet?) { - val o2: BitSet? = o + fun foo(o: HashSet?) { + val o2: HashSet? = o var foo: Int = 0 foo = o2!!.size() } diff --git a/j2k/tests/testData/fileOrElement/assignmentExpression/nullability.java b/j2k/tests/testData/fileOrElement/assignmentExpression/nullability.java index 0cc857d9476..ca6948a36d9 100644 --- a/j2k/tests/testData/fileOrElement/assignmentExpression/nullability.java +++ b/j2k/tests/testData/fileOrElement/assignmentExpression/nullability.java @@ -1,8 +1,8 @@ -import java.util.BitSet; +import java.util.HashSet; class Foo { - void foo(BitSet o) { - BitSet o2 = o; + void foo(HashSet o) { + HashSet o2 = o; int foo = 0; foo = o2.size(); } diff --git a/j2k/tests/testData/fileOrElement/assignmentExpression/nullability.kt b/j2k/tests/testData/fileOrElement/assignmentExpression/nullability.kt index 26790bf29ec..20af0a1b1ce 100644 --- a/j2k/tests/testData/fileOrElement/assignmentExpression/nullability.kt +++ b/j2k/tests/testData/fileOrElement/assignmentExpression/nullability.kt @@ -1,7 +1,7 @@ -import java.util.BitSet +import java.util.HashSet class Foo { - fun foo(o: BitSet) { + fun foo(o: HashSet) { val o2 = o var foo = 0 foo = o2.size() diff --git a/j2k/tests/testData/fileOrElement/boxedType/kt-671.kt b/j2k/tests/testData/fileOrElement/boxedType/kt-671.kt index d715edffaee..a49a57a255c 100644 --- a/j2k/tests/testData/fileOrElement/boxedType/kt-671.kt +++ b/j2k/tests/testData/fileOrElement/boxedType/kt-671.kt @@ -1,3 +1,4 @@ +// ERROR: None of the following functions can be called with the arguments supplied: public open fun valueOf(p0: kotlin.String!, p1: kotlin.Int): kotlin.Short! defined in java.lang.Short public open fun valueOf(p0: kotlin.String!): kotlin.Short! defined in java.lang.Short public open fun valueOf(p0: kotlin.Short): kotlin.Short! defined in java.lang.Short package demo class Test { diff --git a/j2k/tests/testData/fileOrElement/callChainExpression/libraryFieldCall.java b/j2k/tests/testData/fileOrElement/callChainExpression/libraryFieldCall.java index 2278e35a1bc..3968d8a6274 100644 --- a/j2k/tests/testData/fileOrElement/callChainExpression/libraryFieldCall.java +++ b/j2k/tests/testData/fileOrElement/callChainExpression/libraryFieldCall.java @@ -4,6 +4,6 @@ class Library { class User { void main() { - Library.ourOut.print(); + Library.ourOut.print(1); } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/callChainExpression/libraryFieldCall.kt b/j2k/tests/testData/fileOrElement/callChainExpression/libraryFieldCall.kt index 5ba0c1e951f..22913c1692a 100644 --- a/j2k/tests/testData/fileOrElement/callChainExpression/libraryFieldCall.kt +++ b/j2k/tests/testData/fileOrElement/callChainExpression/libraryFieldCall.kt @@ -1,3 +1,4 @@ +// ERROR: Property must be initialized or be abstract class Library { class object { val ourOut: java.io.PrintStream @@ -6,6 +7,6 @@ class Library { class User { fun main() { - Library.ourOut.print() + Library.ourOut.print(1) } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/callChainExpression/libraryStringFieldCall.java b/j2k/tests/testData/fileOrElement/callChainExpression/libraryStringFieldCall.java index 67d826da1d9..bfb1905359f 100644 --- a/j2k/tests/testData/fileOrElement/callChainExpression/libraryStringFieldCall.java +++ b/j2k/tests/testData/fileOrElement/callChainExpression/libraryStringFieldCall.java @@ -4,6 +4,6 @@ class Library { class User { void main() { - Library.myString.isEmpty(); + new Library().myString.isEmpty(); } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/callChainExpression/libraryStringFieldCall.kt b/j2k/tests/testData/fileOrElement/callChainExpression/libraryStringFieldCall.kt index 07f72f3e985..d123ca88db0 100644 --- a/j2k/tests/testData/fileOrElement/callChainExpression/libraryStringFieldCall.kt +++ b/j2k/tests/testData/fileOrElement/callChainExpression/libraryStringFieldCall.kt @@ -1,9 +1,10 @@ +// ERROR: Property must be initialized or be abstract class Library { public val myString: String } class User { fun main() { - Library.myString.isEmpty() + Library().myString.isEmpty() } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/class/kt-639.kt b/j2k/tests/testData/fileOrElement/class/kt-639.kt index 765ecefb7af..ad65781f5ef 100644 --- a/j2k/tests/testData/fileOrElement/class/kt-639.kt +++ b/j2k/tests/testData/fileOrElement/class/kt-639.kt @@ -1,3 +1,10 @@ +// ERROR: 'internal fun Test(): demo.Test' is already defined in demo +// ERROR: 'public constructor Test()' is already defined in demo +// ERROR: Overload resolution ambiguity: internal fun Test(): demo.Test defined in demo public constructor Test() defined in demo.Test +// ERROR: Overload resolution ambiguity: internal fun Test(): demo.Test defined in demo public constructor Test() defined in demo.Test +// ERROR: Type inference failed: Not enough information to infer parameter K in constructor HashMap(p0: kotlin.Int) Please specify it explicitly. +// ERROR: Type inference failed: Not enough information to infer parameter K in constructor HashMap(p0: kotlin.Int) Please specify it explicitly. +// ERROR: Overload resolution ambiguity: internal fun Test(): demo.Test defined in demo public constructor Test() defined in demo.Test package demo import java.util.HashMap diff --git a/j2k/tests/testData/fileOrElement/comments/comments.kt b/j2k/tests/testData/fileOrElement/comments/comments.kt index a8be2acf5c1..ca1be75d12f 100644 --- a/j2k/tests/testData/fileOrElement/comments/comments.kt +++ b/j2k/tests/testData/fileOrElement/comments/comments.kt @@ -1,3 +1,4 @@ +// ERROR: Class 'A' must be declared abstract or implement abstract member public abstract fun run(): kotlin.Unit defined in java.lang.Runnable package foo // we use package 'foo' diff --git a/j2k/tests/testData/fileOrElement/comments/comments2.java b/j2k/tests/testData/fileOrElement/comments/comments2.java index 16723f3aca7..84cf7c5baf2 100644 --- a/j2k/tests/testData/fileOrElement/comments/comments2.java +++ b/j2k/tests/testData/fileOrElement/comments/comments2.java @@ -11,9 +11,9 @@ class A { private/*it's private*/ int field = 0; - public /*it's public*/ char foo() { } + public /*it's public*/ char foo(String s) { } - protected/*it's protected*/ void foo() { } + protected/*it's protected*/ void foo(char c) { } public/*it's public*/ static/*and static*/ final/*and final*/ int C = 1; } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/comments/comments2.kt b/j2k/tests/testData/fileOrElement/comments/comments2.kt index 8ea0d2c3381..7323e81ea3a 100644 --- a/j2k/tests/testData/fileOrElement/comments/comments2.kt +++ b/j2k/tests/testData/fileOrElement/comments/comments2.kt @@ -1,3 +1,5 @@ +// ERROR: A 'return' expression required in a function with a block body ('{...}') +// ERROR: A 'return' expression required in a function with a block body ('{...}') package foo class A { @@ -13,10 +15,10 @@ class A { private /*it's private*/ val field = 0 - public /*it's public*/ fun foo(): Char { + public /*it's public*/ fun foo(s: String): Char { } - protected /*it's protected*/ fun foo() { + protected /*it's protected*/ fun foo(c: Char) { } class object { diff --git a/j2k/tests/testData/fileOrElement/constructors/artificialPrimary.kt b/j2k/tests/testData/fileOrElement/constructors/artificialPrimary.kt index cacf0801ad2..0fe04149603 100644 --- a/j2k/tests/testData/fileOrElement/constructors/artificialPrimary.kt +++ b/j2k/tests/testData/fileOrElement/constructors/artificialPrimary.kt @@ -1,3 +1,7 @@ +// ERROR: 'public fun Test(s: kotlin.String): Test' is already defined in root package +// ERROR: 'public constructor Test(s: kotlin.String)' is already defined in root package +// ERROR: None of the following functions can be called with the arguments supplied: public fun Test(): Test defined in root package public fun Test(s: kotlin.String): Test defined in root package public constructor Test(s: kotlin.String) defined in Test +// ERROR: Overload resolution ambiguity: public fun Test(s: kotlin.String): Test defined in root package public constructor Test(s: kotlin.String) defined in Test public fun Test(): Test { val __ = Test(null) __.b = true diff --git a/j2k/tests/testData/fileOrElement/constructors/fieldsInitializedFromParams7.kt b/j2k/tests/testData/fileOrElement/constructors/fieldsInitializedFromParams7.kt index 85a8853919b..c6939ccf941 100644 --- a/j2k/tests/testData/fileOrElement/constructors/fieldsInitializedFromParams7.kt +++ b/j2k/tests/testData/fileOrElement/constructors/fieldsInitializedFromParams7.kt @@ -1,3 +1,4 @@ +// ERROR: Property must be initialized or be abstract class C(x: Any, b: Boolean) { public var x: Any diff --git a/j2k/tests/testData/fileOrElement/constructors/fieldsInitializedFromParams8.kt b/j2k/tests/testData/fileOrElement/constructors/fieldsInitializedFromParams8.kt index 718f8e5127d..5a5161dd4f6 100644 --- a/j2k/tests/testData/fileOrElement/constructors/fieldsInitializedFromParams8.kt +++ b/j2k/tests/testData/fileOrElement/constructors/fieldsInitializedFromParams8.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from class Base(o: Any, l: Int) class C(private val string: String) : Base(string, string.length()) \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/constructors/genericIdentifier.kt b/j2k/tests/testData/fileOrElement/constructors/genericIdentifier.kt index 7b0132372d9..cf1a7bc3ab2 100644 --- a/j2k/tests/testData/fileOrElement/constructors/genericIdentifier.kt +++ b/j2k/tests/testData/fileOrElement/constructors/genericIdentifier.kt @@ -1,3 +1,9 @@ +// ERROR: 'public fun Identifier(name: T, isNullable: kotlin.Boolean): Identifier' is already defined in root package +// ERROR: 'public constructor Identifier(name: T, myHasDollar: kotlin.Boolean)' is already defined in root package +// ERROR: Cannot choose among the following candidates without completing type inference: public fun Identifier(name: T, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: T, myHasDollar: kotlin.Boolean) defined in Identifier +// ERROR: Cannot choose among the following candidates without completing type inference: public fun Identifier(name: T, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: T, myHasDollar: kotlin.Boolean) defined in Identifier +// ERROR: Cannot choose among the following candidates without completing type inference: public fun Identifier(name: T, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: T, myHasDollar: kotlin.Boolean) defined in Identifier +// ERROR: Overload resolution ambiguity: public fun Identifier(name: kotlin.String, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: kotlin.String, myHasDollar: kotlin.Boolean) defined in Identifier public fun Identifier(name: T): Identifier { return Identifier(name, false) } diff --git a/j2k/tests/testData/fileOrElement/constructors/identifier.kt b/j2k/tests/testData/fileOrElement/constructors/identifier.kt index 7751d231896..94569bf08ab 100644 --- a/j2k/tests/testData/fileOrElement/constructors/identifier.kt +++ b/j2k/tests/testData/fileOrElement/constructors/identifier.kt @@ -1,3 +1,9 @@ +// ERROR: 'public fun Identifier(name: kotlin.String, isNullable: kotlin.Boolean): Identifier' is already defined in root package +// ERROR: 'public constructor Identifier(name: kotlin.String, myHasDollar: kotlin.Boolean)' is already defined in root package +// ERROR: Overload resolution ambiguity: public fun Identifier(name: kotlin.String, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: kotlin.String, myHasDollar: kotlin.Boolean) defined in Identifier +// ERROR: Overload resolution ambiguity: public fun Identifier(name: kotlin.String, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: kotlin.String, myHasDollar: kotlin.Boolean) defined in Identifier +// ERROR: Overload resolution ambiguity: public fun Identifier(name: kotlin.String, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: kotlin.String, myHasDollar: kotlin.Boolean) defined in Identifier +// ERROR: Overload resolution ambiguity: public fun Identifier(name: kotlin.String, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: kotlin.String, myHasDollar: kotlin.Boolean) defined in Identifier public fun Identifier(name: String): Identifier { return Identifier(name, false) } diff --git a/j2k/tests/testData/fileOrElement/constructors/methodCallInFactoryFun.java b/j2k/tests/testData/fileOrElement/constructors/methodCallInFactoryFun.java index d60ade8e838..f4090eba03b 100644 --- a/j2k/tests/testData/fileOrElement/constructors/methodCallInFactoryFun.java +++ b/j2k/tests/testData/fileOrElement/constructors/methodCallInFactoryFun.java @@ -5,6 +5,7 @@ class C { int foo(int p){ return p; } private static int staticFoo(int p){ return p; } + public static int staticFoo2(){ return 0; } C(int arg1, int arg2, int arg3) { this.arg1 = arg1; diff --git a/j2k/tests/testData/fileOrElement/constructors/methodCallInFactoryFun.kt b/j2k/tests/testData/fileOrElement/constructors/methodCallInFactoryFun.kt index e45d5082d1e..9b0912098a1 100644 --- a/j2k/tests/testData/fileOrElement/constructors/methodCallInFactoryFun.kt +++ b/j2k/tests/testData/fileOrElement/constructors/methodCallInFactoryFun.kt @@ -1,3 +1,5 @@ +// ERROR: Cannot access 'staticFoo': it is 'private' in '' +// ERROR: Cannot access 'staticFoo': it is 'private' in '' fun C(arg1: Int, arg2: Int, other: C): C { val __ = C(arg1, arg2, 0) System.out.println(__.foo(1) + __.foo(2) + other.foo(3) + C.staticFoo(4) + C.staticFoo(5)) @@ -10,7 +12,13 @@ class C(private val arg1: Int, private val arg2: Int, private val arg3: Int) { return p } - private fun staticFoo(p: Int): Int { - return p + class object { + private fun staticFoo(p: Int): Int { + return p + } + + public fun staticFoo2(): Int { + return 0 + } } } diff --git a/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults2.kt b/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults2.kt index 9e82b2b95da..a4be5edf7ff 100644 --- a/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults2.kt +++ b/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults2.kt @@ -1,3 +1,4 @@ +// ERROR: Property must be initialized or be abstract import A.Nested class A(nested: Nested = Nested(Nested.FIELD)) { diff --git a/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults3.kt b/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults3.kt index 2cbf12aa276..39c6a7cf16b 100644 --- a/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults3.kt +++ b/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults3.kt @@ -1,3 +1,4 @@ +// ERROR: Property must be initialized or be abstract package pack import pack.A.Nested diff --git a/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults4.kt b/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults4.kt index 9fadc53f799..d4cdd08451a 100644 --- a/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults4.kt +++ b/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults4.kt @@ -1,3 +1,4 @@ +// ERROR: Property must be initialized or be abstract package pack import pack.A.* diff --git a/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInSuperParameters.kt b/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInSuperParameters.kt index 00bb71e559e..9b2b8df821e 100644 --- a/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInSuperParameters.kt +++ b/j2k/tests/testData/fileOrElement/constructors/nestedClassNameInSuperParameters.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from class Base(nested: Base.Nested) { class Nested(p: Int) { diff --git a/j2k/tests/testData/fileOrElement/constructors/parameterModification.kt b/j2k/tests/testData/fileOrElement/constructors/parameterModification.kt index 224803d7189..841ec287812 100644 --- a/j2k/tests/testData/fileOrElement/constructors/parameterModification.kt +++ b/j2k/tests/testData/fileOrElement/constructors/parameterModification.kt @@ -1,3 +1,4 @@ +// ERROR: Overload resolution ambiguity: internal fun C(arg1: kotlin.Int, arg2: kotlin.Int): C defined in root package public constructor C(arg1: kotlin.Int, arg2: kotlin.Int = ..., arg3: kotlin.Int = ...) defined in C fun C(arg1: Int, arg2: Int): C { var arg2 = arg2 val __ = C(arg1, arg2, 0) diff --git a/j2k/tests/testData/fileOrElement/constructors/privateConstructors.kt b/j2k/tests/testData/fileOrElement/constructors/privateConstructors.kt index 1ebdc1f0142..9b10324dc7c 100644 --- a/j2k/tests/testData/fileOrElement/constructors/privateConstructors.kt +++ b/j2k/tests/testData/fileOrElement/constructors/privateConstructors.kt @@ -1,3 +1,5 @@ +// ERROR: Too many arguments for internal fun C(arg1: kotlin.Int): C defined in root package +// ERROR: Too many arguments for internal fun C(arg1: kotlin.Int): C defined in root package fun C(arg1: Int): C { return C(arg1, 0, 0) } diff --git a/j2k/tests/testData/fileOrElement/constructors/qualifiedRefInFactoryFun.kt b/j2k/tests/testData/fileOrElement/constructors/qualifiedRefInFactoryFun.kt index ac9346c6e84..552f3312e42 100644 --- a/j2k/tests/testData/fileOrElement/constructors/qualifiedRefInFactoryFun.kt +++ b/j2k/tests/testData/fileOrElement/constructors/qualifiedRefInFactoryFun.kt @@ -1,3 +1,5 @@ +// ERROR: Cannot access 'arg1': it is 'private' in 'C' +// ERROR: Cannot access 'arg2': it is 'private' in 'C' fun C(arg1: Int, arg2: Int, other: C): C { val __ = C(arg1, arg2, 0) System.out.println(__.arg1 + other.arg2) diff --git a/j2k/tests/testData/fileOrElement/constructors/staticFieldRefInFactoryFun.kt b/j2k/tests/testData/fileOrElement/constructors/staticFieldRefInFactoryFun.kt index 3e5f305fbfa..da85fa6687d 100644 --- a/j2k/tests/testData/fileOrElement/constructors/staticFieldRefInFactoryFun.kt +++ b/j2k/tests/testData/fileOrElement/constructors/staticFieldRefInFactoryFun.kt @@ -1,3 +1,5 @@ +// ERROR: Cannot access 'staticField1': it is 'private' in '' +// ERROR: Cannot access 'staticField2': it is 'private' in '' fun C(p: Int): C { val __ = C() System.out.println(C.staticField1 + C.staticField2) diff --git a/j2k/tests/testData/fileOrElement/constructors/withManyDefaultParams.kt b/j2k/tests/testData/fileOrElement/constructors/withManyDefaultParams.kt index 7c3912f6f7b..6bd154bf8b7 100644 --- a/j2k/tests/testData/fileOrElement/constructors/withManyDefaultParams.kt +++ b/j2k/tests/testData/fileOrElement/constructors/withManyDefaultParams.kt @@ -1,3 +1,8 @@ +// ERROR: 'public fun Test(name: kotlin.String): Test' is already defined in root package +// ERROR: 'public constructor Test(myName: kotlin.String)' is already defined in root package +// ERROR: None of the following functions can be called with the arguments supplied: public fun Test(): Test defined in root package public fun Test(name: kotlin.String): Test defined in root package public constructor Test(myName: kotlin.String) defined in Test +// ERROR: Overload resolution ambiguity: public fun Test(name: kotlin.String): Test defined in root package public constructor Test(myName: kotlin.String) defined in Test +// ERROR: Overload resolution ambiguity: public fun Test(name: kotlin.String): Test defined in root package public constructor Test(myName: kotlin.String) defined in Test public fun Test(): Test { return Test(null) } diff --git a/j2k/tests/testData/fileOrElement/dropAccessors/DifferentFieldNameAndSuperClass.kt b/j2k/tests/testData/fileOrElement/dropAccessors/DifferentFieldNameAndSuperClass.kt index 7ff6c4c136f..d92b4955867 100644 --- a/j2k/tests/testData/fileOrElement/dropAccessors/DifferentFieldNameAndSuperClass.kt +++ b/j2k/tests/testData/fileOrElement/dropAccessors/DifferentFieldNameAndSuperClass.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from public class Base(x: Int) { public var x: Int = 42 protected set diff --git a/j2k/tests/testData/fileOrElement/dropAccessors/DifferentProtectedFieldName.kt b/j2k/tests/testData/fileOrElement/dropAccessors/DifferentProtectedFieldName.kt index c434164e16c..74f4b7296d4 100644 --- a/j2k/tests/testData/fileOrElement/dropAccessors/DifferentProtectedFieldName.kt +++ b/j2k/tests/testData/fileOrElement/dropAccessors/DifferentProtectedFieldName.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from public class AAA { public var x: Int = 42 protected set diff --git a/j2k/tests/testData/fileOrElement/dropAccessors/GetterTypeNotMatch.kt b/j2k/tests/testData/fileOrElement/dropAccessors/GetterTypeNotMatch.kt index 2dd5820b06f..865c3a376f3 100644 --- a/j2k/tests/testData/fileOrElement/dropAccessors/GetterTypeNotMatch.kt +++ b/j2k/tests/testData/fileOrElement/dropAccessors/GetterTypeNotMatch.kt @@ -1,3 +1,4 @@ +// ERROR: Type mismatch: inferred type is kotlin.String? but kotlin.Any was expected class A { private val s: String? = null diff --git a/j2k/tests/testData/fileOrElement/field/classChildExtendsBase.kt b/j2k/tests/testData/fileOrElement/field/classChildExtendsBase.kt index c1c9c604157..c95d2e7861b 100644 --- a/j2k/tests/testData/fileOrElement/field/classChildExtendsBase.kt +++ b/j2k/tests/testData/fileOrElement/field/classChildExtendsBase.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from class Base { private val myFirst: String? = null } diff --git a/j2k/tests/testData/fileOrElement/field/internalField.kt b/j2k/tests/testData/fileOrElement/field/internalField.kt index 98ee5f59012..7ebec51eb31 100644 --- a/j2k/tests/testData/fileOrElement/field/internalField.kt +++ b/j2k/tests/testData/fileOrElement/field/internalField.kt @@ -1,3 +1,5 @@ +// ERROR: Unresolved reference: Foo +// ERROR: Property must be initialized or be abstract class C { var f: Foo } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/field/privateField.kt b/j2k/tests/testData/fileOrElement/field/privateField.kt index 5010ae79807..a078e3aba9f 100644 --- a/j2k/tests/testData/fileOrElement/field/privateField.kt +++ b/j2k/tests/testData/fileOrElement/field/privateField.kt @@ -1,3 +1,4 @@ +// ERROR: Unresolved reference: Foo class C { private val f: Foo? = null } diff --git a/j2k/tests/testData/fileOrElement/field/protectedField.kt b/j2k/tests/testData/fileOrElement/field/protectedField.kt index da883e70d43..44cf88b02ac 100644 --- a/j2k/tests/testData/fileOrElement/field/protectedField.kt +++ b/j2k/tests/testData/fileOrElement/field/protectedField.kt @@ -1,3 +1,5 @@ +// ERROR: Unresolved reference: Foo +// ERROR: Property must be initialized or be abstract class C { protected var f: Foo } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/field/publicField.kt b/j2k/tests/testData/fileOrElement/field/publicField.kt index f68aa9f15cd..99478b79517 100644 --- a/j2k/tests/testData/fileOrElement/field/publicField.kt +++ b/j2k/tests/testData/fileOrElement/field/publicField.kt @@ -1,3 +1,5 @@ +// ERROR: Unresolved reference: Foo +// ERROR: Property must be initialized or be abstract class C { public var f: Foo } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/field/valWithInit.kt b/j2k/tests/testData/fileOrElement/field/valWithInit.kt index 2953ed47eba..041b2d4f7b6 100644 --- a/j2k/tests/testData/fileOrElement/field/valWithInit.kt +++ b/j2k/tests/testData/fileOrElement/field/valWithInit.kt @@ -1,3 +1,4 @@ +// ERROR: Unresolved reference: Foo class C { val f = Foo(1, 2) } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/field/varWithInit.kt b/j2k/tests/testData/fileOrElement/field/varWithInit.kt index 04bad754532..9afd61a5bb8 100644 --- a/j2k/tests/testData/fileOrElement/field/varWithInit.kt +++ b/j2k/tests/testData/fileOrElement/field/varWithInit.kt @@ -1,3 +1,4 @@ +// ERROR: Unresolved reference: Foo class C { var f = Foo(1, 2) } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/field/varWithoutInit.kt b/j2k/tests/testData/fileOrElement/field/varWithoutInit.kt index 98ee5f59012..7ebec51eb31 100644 --- a/j2k/tests/testData/fileOrElement/field/varWithoutInit.kt +++ b/j2k/tests/testData/fileOrElement/field/varWithoutInit.kt @@ -1,3 +1,5 @@ +// ERROR: Unresolved reference: Foo +// ERROR: Property must be initialized or be abstract class C { var f: Foo } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/field/volatileTransientAndStrictFp.kt b/j2k/tests/testData/fileOrElement/field/volatileTransientAndStrictFp.kt index 5ec9b7764d4..febf16cae00 100644 --- a/j2k/tests/testData/fileOrElement/field/volatileTransientAndStrictFp.kt +++ b/j2k/tests/testData/fileOrElement/field/volatileTransientAndStrictFp.kt @@ -1,3 +1,4 @@ +// ERROR: An integer literal does not conform to the expected type kotlin.Double class A { deprecated("") volatile var field1 = 0 diff --git a/j2k/tests/testData/fileOrElement/function/extendsBaseWhichExtendsObject.kt b/j2k/tests/testData/fileOrElement/function/extendsBaseWhichExtendsObject.kt index 5eb618c2c0b..ab63f799f8e 100644 --- a/j2k/tests/testData/fileOrElement/function/extendsBaseWhichExtendsObject.kt +++ b/j2k/tests/testData/fileOrElement/function/extendsBaseWhichExtendsObject.kt @@ -1,3 +1,8 @@ +// ERROR: 'clone' in 'Base' is final and cannot be overridden +// ERROR: 'finalize' in 'Base' is final and cannot be overridden +// ERROR: This type is final, so it cannot be inherited from +// ERROR: Unresolved reference: clone +// ERROR: Unresolved reference: finalize package test class Test : Base() { diff --git a/j2k/tests/testData/fileOrElement/function/override.kt b/j2k/tests/testData/fileOrElement/function/override.kt index 901bccfccf2..a712cb2cf86 100644 --- a/j2k/tests/testData/fileOrElement/function/override.kt +++ b/j2k/tests/testData/fileOrElement/function/override.kt @@ -1,3 +1,5 @@ +// ERROR: 'a' in 'A' is final and cannot be overridden +// ERROR: This type is final, so it cannot be inherited from class A { fun a() { } diff --git a/j2k/tests/testData/fileOrElement/function/overrideAndOpen.kt b/j2k/tests/testData/fileOrElement/function/overrideAndOpen.kt index 23650098fcc..47349dd3864 100644 --- a/j2k/tests/testData/fileOrElement/function/overrideAndOpen.kt +++ b/j2k/tests/testData/fileOrElement/function/overrideAndOpen.kt @@ -1,3 +1,6 @@ +// ERROR: 'foo' in 'A' is final and cannot be overridden +// ERROR: This type is final, so it cannot be inherited from +// ERROR: This type is final, so it cannot be inherited from class A { fun foo() { } diff --git a/j2k/tests/testData/fileOrElement/function/overrideObject.kt b/j2k/tests/testData/fileOrElement/function/overrideObject.kt index 445eb5d5c48..af1740aa3ad 100644 --- a/j2k/tests/testData/fileOrElement/function/overrideObject.kt +++ b/j2k/tests/testData/fileOrElement/function/overrideObject.kt @@ -1,3 +1,4 @@ +// ERROR: Unresolved reference: clone class X { override fun hashCode(): Int { return super.hashCode() diff --git a/j2k/tests/testData/fileOrElement/function/overrideObject2.kt b/j2k/tests/testData/fileOrElement/function/overrideObject2.kt index 03149780e06..3bcf9e57e39 100644 --- a/j2k/tests/testData/fileOrElement/function/overrideObject2.kt +++ b/j2k/tests/testData/fileOrElement/function/overrideObject2.kt @@ -1,3 +1,5 @@ +// ERROR: This type is final, so it cannot be inherited from +// ERROR: Unresolved reference: clone class Base class X : Base() { diff --git a/j2k/tests/testData/fileOrElement/function/overrideObject3.kt b/j2k/tests/testData/fileOrElement/function/overrideObject3.kt index dc6e3221d44..a29e001e990 100644 --- a/j2k/tests/testData/fileOrElement/function/overrideObject3.kt +++ b/j2k/tests/testData/fileOrElement/function/overrideObject3.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from class Base { override fun equals(o: Any?): Boolean { return super.equals(o) diff --git a/j2k/tests/testData/fileOrElement/identifier/finalFieldReference.kt b/j2k/tests/testData/fileOrElement/identifier/finalFieldReference.kt index 15ed987d38a..0fab80efcbe 100644 --- a/j2k/tests/testData/fileOrElement/identifier/finalFieldReference.kt +++ b/j2k/tests/testData/fileOrElement/identifier/finalFieldReference.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from class `$$$$$` class `$` diff --git a/j2k/tests/testData/fileOrElement/importStatement/importWithKeywords.kt b/j2k/tests/testData/fileOrElement/importStatement/importWithKeywords.kt index b3570ddf0be..4b23bc76bd6 100644 --- a/j2k/tests/testData/fileOrElement/importStatement/importWithKeywords.kt +++ b/j2k/tests/testData/fileOrElement/importStatement/importWithKeywords.kt @@ -1,3 +1,4 @@ +// ERROR: Unresolved reference: `as` package test import `as`.`type`.`val`.`var`.`fun`.`is`.`in`.`object`.`when`.`trait`.`This` diff --git a/j2k/tests/testData/fileOrElement/importStatement/onlyImports.kt b/j2k/tests/testData/fileOrElement/importStatement/onlyImports.kt index 584cb68ce05..e348f682c0a 100644 --- a/j2k/tests/testData/fileOrElement/importStatement/onlyImports.kt +++ b/j2k/tests/testData/fileOrElement/importStatement/onlyImports.kt @@ -1,2 +1,3 @@ +// ERROR: Unresolved reference: ArrayBlockingQueue import java.util.Arrays import java.util.concurrent.ArrayBlockingQueue \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseGeneric.kt b/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseGeneric.kt index d4499d9b10c..6154e2c3960 100644 --- a/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseGeneric.kt +++ b/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseGeneric.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from class Base(name: T) class One(name: T, private val mySecond: K) : Base(name) \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithOneParam.kt b/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithOneParam.kt index ebef8b114af..2c5e5ce4d0f 100644 --- a/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithOneParam.kt +++ b/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithOneParam.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from class Base(name: String) class One(name: String, second: String) : Base(name) \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParams.kt b/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParams.kt index 2ff732d27f9..8be0b3c2b18 100644 --- a/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParams.kt +++ b/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParams.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from class Base class One : Base() \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParamsNonEmptyConstructor.kt b/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParamsNonEmptyConstructor.kt index 89d621b7bbf..4fb64c417f9 100644 --- a/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParamsNonEmptyConstructor.kt +++ b/j2k/tests/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParamsNonEmptyConstructor.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from class Base(name: String) class One(name: String, private val mySecond: String) : Base(name) \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/issues/kt-1048.kt b/j2k/tests/testData/fileOrElement/issues/kt-1048.kt index 58e07d87a98..574347082d5 100644 --- a/j2k/tests/testData/fileOrElement/issues/kt-1048.kt +++ b/j2k/tests/testData/fileOrElement/issues/kt-1048.kt @@ -1,3 +1,5 @@ +// ERROR: Type inference failed: Not enough information to infer parameter K in constructor HashMap() Please specify it explicitly. +// ERROR: Type inference failed: Not enough information to infer parameter K in constructor HashMap() Please specify it explicitly. import java.util.HashMap class G(t: T) diff --git a/j2k/tests/testData/fileOrElement/issues/kt-5400.kt b/j2k/tests/testData/fileOrElement/issues/kt-5400.kt index ca4e3303112..68fde44a5e2 100644 --- a/j2k/tests/testData/fileOrElement/issues/kt-5400.kt +++ b/j2k/tests/testData/fileOrElement/issues/kt-5400.kt @@ -1,3 +1,5 @@ +// ERROR: This type is final, so it cannot be inherited from +// ERROR: Property must be initialized or be abstract class Base { inner class Nested } diff --git a/j2k/tests/testData/fileOrElement/issues/kt-638.kt b/j2k/tests/testData/fileOrElement/issues/kt-638.kt index 611179a6135..b7c993c4312 100644 --- a/j2k/tests/testData/fileOrElement/issues/kt-638.kt +++ b/j2k/tests/testData/fileOrElement/issues/kt-638.kt @@ -1,3 +1,9 @@ +// ERROR: 'public fun Identifier(name: T, isNullable: kotlin.Boolean): Identifier' is already defined in root package +// ERROR: 'public constructor Identifier(name: T, myHasDollar: kotlin.Boolean)' is already defined in root package +// ERROR: Cannot choose among the following candidates without completing type inference: public fun Identifier(name: T, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: T, myHasDollar: kotlin.Boolean) defined in Identifier +// ERROR: Cannot choose among the following candidates without completing type inference: public fun Identifier(name: T, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: T, myHasDollar: kotlin.Boolean) defined in Identifier +// ERROR: Cannot choose among the following candidates without completing type inference: public fun Identifier(name: T, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: T, myHasDollar: kotlin.Boolean) defined in Identifier +// ERROR: Overload resolution ambiguity: public fun Identifier(name: kotlin.String, isNullable: kotlin.Boolean): Identifier defined in root package public constructor Identifier(name: kotlin.String, myHasDollar: kotlin.Boolean) defined in Identifier public fun Identifier(name: T): Identifier { return Identifier(name, false) } diff --git a/j2k/tests/testData/fileOrElement/issues/kt-696.kt b/j2k/tests/testData/fileOrElement/issues/kt-696.kt index e508906ec72..ad7fdcffd21 100644 --- a/j2k/tests/testData/fileOrElement/issues/kt-696.kt +++ b/j2k/tests/testData/fileOrElement/issues/kt-696.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from package test class Base { diff --git a/j2k/tests/testData/fileOrElement/issues/kt-807.java b/j2k/tests/testData/fileOrElement/issues/kt-807.java index ee451c00266..4e763546f4b 100644 --- a/j2k/tests/testData/fileOrElement/issues/kt-807.java +++ b/j2k/tests/testData/fileOrElement/issues/kt-807.java @@ -3,7 +3,7 @@ import java.io.*; class FileRead { public static void main(String args[]) { try { - FileInputStream fstream = new FileInputStream("textfile.txt"); + FileInputStream fstream = new FileInputStream(); DataInputStream in = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; diff --git a/j2k/tests/testData/fileOrElement/issues/kt-807.kt b/j2k/tests/testData/fileOrElement/issues/kt-807.kt index f2978c811c2..624fcc30812 100644 --- a/j2k/tests/testData/fileOrElement/issues/kt-807.kt +++ b/j2k/tests/testData/fileOrElement/issues/kt-807.kt @@ -1,10 +1,14 @@ +// ERROR: None of the following functions can be called with the arguments supplied: public constructor FileInputStream(p0: kotlin.String!) defined in java.io.FileInputStream public constructor FileInputStream(p0: java.io.File!) defined in java.io.FileInputStream public constructor FileInputStream(p0: [ERROR : Unresolved java classifier: FileDescriptor]!) defined in java.io.FileInputStream +// ERROR: None of the following functions can be called with the arguments supplied: public constructor InputStreamReader(p0: java.io.InputStream!) defined in java.io.InputStreamReader public constructor InputStreamReader(p0: java.io.InputStream!, p1: kotlin.String!) defined in java.io.InputStreamReader public constructor InputStreamReader(p0: java.io.InputStream!, p1: java.nio.charset.Charset!) defined in java.io.InputStreamReader public constructor InputStreamReader(p0: java.io.InputStream!, p1: [ERROR : Unresolved java classifier: CharsetDecoder]!) defined in java.io.InputStreamReader +// ERROR: Assignments are not expressions, and only expressions are allowed in this context +// ERROR: Unresolved reference: close import java.io.* class FileRead { class object { public fun main(args: Array) { try { - val fstream = FileInputStream("textfile.txt") + val fstream = FileInputStream() val `in` = DataInputStream(fstream) val br = BufferedReader(InputStreamReader(`in`)) val strLine: String diff --git a/j2k/tests/testData/fileOrElement/issues/kt-836.kt b/j2k/tests/testData/fileOrElement/issues/kt-836.kt index 8db7a4cfa28..05cfdb79f21 100644 --- a/j2k/tests/testData/fileOrElement/issues/kt-836.kt +++ b/j2k/tests/testData/fileOrElement/issues/kt-836.kt @@ -1,3 +1,5 @@ +// ERROR: 'test' in 'Base' is final and cannot be overridden +// ERROR: This type is final, so it cannot be inherited from package com.voltvoodoo.saplo4j.model import java.io.Serializable diff --git a/j2k/tests/testData/fileOrElement/issues/kt-963.kt b/j2k/tests/testData/fileOrElement/issues/kt-963.kt index 8cb301b9f71..15dc3e83172 100644 --- a/j2k/tests/testData/fileOrElement/issues/kt-963.kt +++ b/j2k/tests/testData/fileOrElement/issues/kt-963.kt @@ -1,3 +1,4 @@ +// ERROR: Variable cannot be initialized before declaration package demo class C(a: Int) { diff --git a/j2k/tests/testData/fileOrElement/kotlinApiAccess/InheritedProperty.kt b/j2k/tests/testData/fileOrElement/kotlinApiAccess/InheritedProperty.kt index 05a35457e67..4454ae59eb4 100644 --- a/j2k/tests/testData/fileOrElement/kotlinApiAccess/InheritedProperty.kt +++ b/j2k/tests/testData/fileOrElement/kotlinApiAccess/InheritedProperty.kt @@ -1,3 +1,4 @@ +// ERROR: No value passed for parameter field import kotlinApi.* class C : KotlinClass() { diff --git a/j2k/tests/testData/fileOrElement/list/ForEach.kt b/j2k/tests/testData/fileOrElement/list/ForEach.kt index e71692caa8c..67f9bd3b087 100644 --- a/j2k/tests/testData/fileOrElement/list/ForEach.kt +++ b/j2k/tests/testData/fileOrElement/list/ForEach.kt @@ -1,3 +1,4 @@ +// ERROR: Unresolved reference: LinkedList import java.util.* public class ForEach { diff --git a/j2k/tests/testData/fileOrElement/list/Lists.kt b/j2k/tests/testData/fileOrElement/list/Lists.kt index b1a8cf0e434..43f2676a7d7 100644 --- a/j2k/tests/testData/fileOrElement/list/Lists.kt +++ b/j2k/tests/testData/fileOrElement/list/Lists.kt @@ -1,3 +1,4 @@ +// ERROR: Unresolved reference: LinkedList import java.util.* public class Lists { diff --git a/j2k/tests/testData/fileOrElement/methodCallExpression/collectionsMethods2.kt b/j2k/tests/testData/fileOrElement/methodCallExpression/collectionsMethods2.kt index 299a3622f8e..ccc9c1635e0 100644 --- a/j2k/tests/testData/fileOrElement/methodCallExpression/collectionsMethods2.kt +++ b/j2k/tests/testData/fileOrElement/methodCallExpression/collectionsMethods2.kt @@ -1,3 +1,5 @@ +// ERROR: Too many arguments for public fun listOf(): kotlin.List defined in kotlin +// ERROR: Null can not be a value of a non-null type kotlin.String import java.util.* class A { diff --git a/j2k/tests/testData/fileOrElement/misc/packageWithImports.kt b/j2k/tests/testData/fileOrElement/misc/packageWithImports.kt index 1ab1fb21e99..38462062ea8 100644 --- a/j2k/tests/testData/fileOrElement/misc/packageWithImports.kt +++ b/j2k/tests/testData/fileOrElement/misc/packageWithImports.kt @@ -1,3 +1,5 @@ +// ERROR: Unresolved reference: ast2 +// ERROR: Unresolved reference: ast package test import ast diff --git a/j2k/tests/testData/fileOrElement/misc/packageWithMixedImports.kt b/j2k/tests/testData/fileOrElement/misc/packageWithMixedImports.kt index 1ab1fb21e99..38462062ea8 100644 --- a/j2k/tests/testData/fileOrElement/misc/packageWithMixedImports.kt +++ b/j2k/tests/testData/fileOrElement/misc/packageWithMixedImports.kt @@ -1,3 +1,5 @@ +// ERROR: Unresolved reference: ast2 +// ERROR: Unresolved reference: ast package test import ast diff --git a/j2k/tests/testData/fileOrElement/misc/packageWithStaticImports.kt b/j2k/tests/testData/fileOrElement/misc/packageWithStaticImports.kt index 1ab1fb21e99..38462062ea8 100644 --- a/j2k/tests/testData/fileOrElement/misc/packageWithStaticImports.kt +++ b/j2k/tests/testData/fileOrElement/misc/packageWithStaticImports.kt @@ -1,3 +1,5 @@ +// ERROR: Unresolved reference: ast2 +// ERROR: Unresolved reference: ast package test import ast diff --git a/j2k/tests/testData/fileOrElement/mutableCollections/FunctionParameters.kt b/j2k/tests/testData/fileOrElement/mutableCollections/FunctionParameters.kt index fce11a3586a..43adf6b15c6 100644 --- a/j2k/tests/testData/fileOrElement/mutableCollections/FunctionParameters.kt +++ b/j2k/tests/testData/fileOrElement/mutableCollections/FunctionParameters.kt @@ -1,3 +1,4 @@ +// ERROR: Type mismatch: inferred type is T? but T was expected import java.util.* import kotlin.Collection diff --git a/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName.java b/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName.java index 025166bde9f..1e3c212d13d 100644 --- a/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName.java +++ b/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName.java @@ -5,6 +5,6 @@ import java.util.List; class User { void main() { - List list = new java.util.LinkedList(); + List list = new java.util.ArrayList(); } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName.kt b/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName.kt index 524a2625d19..1eed801b296 100644 --- a/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName.kt +++ b/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName.kt @@ -1,7 +1,8 @@ +// ERROR: Type inference failed: Not enough information to infer parameter E in constructor ArrayList() Please specify it explicitly. package test class User { fun main() { - val list = java.util.LinkedList() + val list = java.util.ArrayList() } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName2.java b/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName2.java index 9df0a2cf3d2..e59e07e718d 100644 --- a/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName2.java +++ b/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName2.java @@ -3,6 +3,6 @@ package test; class User { void main() { - java.util.List list = new java.util.LinkedList(); + java.util.List list = new java.util.ArrayList(); } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName2.kt b/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName2.kt index 524a2625d19..1eed801b296 100644 --- a/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName2.kt +++ b/j2k/tests/testData/fileOrElement/newClassExpression/fullQualifiedName2.kt @@ -1,7 +1,8 @@ +// ERROR: Type inference failed: Not enough information to infer parameter E in constructor ArrayList() Please specify it explicitly. package test class User { fun main() { - val list = java.util.LinkedList() + val list = java.util.ArrayList() } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/newClassExpression/genericClassInvocation.java b/j2k/tests/testData/fileOrElement/newClassExpression/genericClassInvocation.java index ae9b5e6a858..562713ce669 100644 --- a/j2k/tests/testData/fileOrElement/newClassExpression/genericClassInvocation.java +++ b/j2k/tests/testData/fileOrElement/newClassExpression/genericClassInvocation.java @@ -1,9 +1,9 @@ //file import java.util.List; -import java.util.LinkedList; +import java.util.ArrayList; class User { void main() { - List list = new LinkedList(); + List list = new ArrayList(); } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/newClassExpression/genericClassInvocation.kt b/j2k/tests/testData/fileOrElement/newClassExpression/genericClassInvocation.kt index 829d8b5e6ee..0493e2ee2bf 100644 --- a/j2k/tests/testData/fileOrElement/newClassExpression/genericClassInvocation.kt +++ b/j2k/tests/testData/fileOrElement/newClassExpression/genericClassInvocation.kt @@ -1,7 +1,7 @@ -import java.util.LinkedList +import java.util.ArrayList class User { fun main() { - val list = LinkedList() + val list = ArrayList() } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/newClassExpression/newListAndNewMember.java b/j2k/tests/testData/fileOrElement/newClassExpression/newListAndNewMember.java index d7f76542484..689d8be67b9 100644 --- a/j2k/tests/testData/fileOrElement/newClassExpression/newListAndNewMember.java +++ b/j2k/tests/testData/fileOrElement/newClassExpression/newListAndNewMember.java @@ -2,13 +2,13 @@ package org.test; import java.util.List; -import java.util.LinkedList; +import java.util.ArrayList; class Member {} class User { void main() { - List members = new LinkedList(); + List members = new ArrayList(); members.add(new Member()); } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/newClassExpression/newListAndNewMember.kt b/j2k/tests/testData/fileOrElement/newClassExpression/newListAndNewMember.kt index 99515ddeb7d..847ed6c4523 100644 --- a/j2k/tests/testData/fileOrElement/newClassExpression/newListAndNewMember.kt +++ b/j2k/tests/testData/fileOrElement/newClassExpression/newListAndNewMember.kt @@ -1,12 +1,12 @@ package org.test -import java.util.LinkedList +import java.util.ArrayList class Member class User { fun main() { - val members = LinkedList() + val members = ArrayList() members.add(Member()) } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/nullability/FieldComparedWithNull.kt b/j2k/tests/testData/fileOrElement/nullability/FieldComparedWithNull.kt index e872769b704..26ab0a9d749 100644 --- a/j2k/tests/testData/fileOrElement/nullability/FieldComparedWithNull.kt +++ b/j2k/tests/testData/fileOrElement/nullability/FieldComparedWithNull.kt @@ -1,3 +1,4 @@ +// ERROR: Unresolved reference: x class C { private val s = x() diff --git a/j2k/tests/testData/fileOrElement/nullability/MethodResultInitializesNullableField.kt b/j2k/tests/testData/fileOrElement/nullability/MethodResultInitializesNullableField.kt index 0f102079234..2357a1f3eb5 100644 --- a/j2k/tests/testData/fileOrElement/nullability/MethodResultInitializesNullableField.kt +++ b/j2k/tests/testData/fileOrElement/nullability/MethodResultInitializesNullableField.kt @@ -1,3 +1,4 @@ +// ERROR: Unresolved reference: x class C { private val string = getString() diff --git a/j2k/tests/testData/fileOrElement/nullability/MethodReturnsNullInAnonymousClass.kt b/j2k/tests/testData/fileOrElement/nullability/MethodReturnsNullInAnonymousClass.kt index 8c38f48c389..6d5a2537e64 100644 --- a/j2k/tests/testData/fileOrElement/nullability/MethodReturnsNullInAnonymousClass.kt +++ b/j2k/tests/testData/fileOrElement/nullability/MethodReturnsNullInAnonymousClass.kt @@ -1,3 +1,4 @@ +// ERROR: Return type of 'get' is not a subtype of the return type of overridden member public abstract fun get(): kotlin.String defined in Getter trait Getter { public fun get(): String } diff --git a/j2k/tests/testData/fileOrElement/nullability/OverrideWithInheritanceLoop.kt b/j2k/tests/testData/fileOrElement/nullability/OverrideWithInheritanceLoop.kt index 1f9c8d55c74..d22e10033b0 100644 --- a/j2k/tests/testData/fileOrElement/nullability/OverrideWithInheritanceLoop.kt +++ b/j2k/tests/testData/fileOrElement/nullability/OverrideWithInheritanceLoop.kt @@ -1,3 +1,7 @@ +// ERROR: There's a cycle in the inheritance hierarchy for this type +// ERROR: There's a cycle in the inheritance hierarchy for this type +// ERROR: This type is final, so it cannot be inherited from +// ERROR: This type is final, so it cannot be inherited from class A : B() { public fun foo(s: String) { } diff --git a/j2k/tests/testData/fileOrElement/nullability/Overrides.kt b/j2k/tests/testData/fileOrElement/nullability/Overrides.kt index 0de4a733e56..f679cb82191 100644 --- a/j2k/tests/testData/fileOrElement/nullability/Overrides.kt +++ b/j2k/tests/testData/fileOrElement/nullability/Overrides.kt @@ -1,3 +1,6 @@ +// ERROR: 'foo' in 'Base' is final and cannot be overridden +// ERROR: 'bar' in 'Base' is final and cannot be overridden +// ERROR: This type is final, so it cannot be inherited from class Base { public fun foo(s: String?): String? { return "" diff --git a/j2k/tests/testData/fileOrElement/objectLiteral/MyFrame.java b/j2k/tests/testData/fileOrElement/objectLiteral/MyFrame.java index 45cf8f31b54..4ee7aad79fe 100644 --- a/j2k/tests/testData/fileOrElement/objectLiteral/MyFrame.java +++ b/j2k/tests/testData/fileOrElement/objectLiteral/MyFrame.java @@ -1,18 +1,26 @@ //file package demo; -class WindowAdapter { +interface WindowListener { + void windowClosing (); +} + +class WindowAdapter implements WindowListener { public void windowClosing () { } } +class Frame { + public void addWindowListener(WindowListener listener){} +} + public final class Client extends Frame { Client() { WindowAdapter a = new WindowAdapter() { @Override public void windowClosing () { } - } + }; addWindowListener(a); diff --git a/j2k/tests/testData/fileOrElement/objectLiteral/MyFrame.kt b/j2k/tests/testData/fileOrElement/objectLiteral/MyFrame.kt index 7d65c1acda7..db170c2ef65 100644 --- a/j2k/tests/testData/fileOrElement/objectLiteral/MyFrame.kt +++ b/j2k/tests/testData/fileOrElement/objectLiteral/MyFrame.kt @@ -1,7 +1,19 @@ +// ERROR: This type is final, so it cannot be inherited from +// ERROR: This type is final, so it cannot be inherited from +// ERROR: This type is final, so it cannot be inherited from package demo -class WindowAdapter { - public fun windowClosing() { +trait WindowListener { + public fun windowClosing() +} + +class WindowAdapter : WindowListener { + override fun windowClosing() { + } +} + +class Frame { + public fun addWindowListener(listener: WindowListener) { } } diff --git a/j2k/tests/testData/fileOrElement/rawGenerics/kt-540-map.kt b/j2k/tests/testData/fileOrElement/rawGenerics/kt-540-map.kt index ac95653b9f8..cf0a603cd76 100644 --- a/j2k/tests/testData/fileOrElement/rawGenerics/kt-540-map.kt +++ b/j2k/tests/testData/fileOrElement/rawGenerics/kt-540-map.kt @@ -1,3 +1,4 @@ +// ERROR: Type inference failed: Not enough information to infer parameter K in constructor HashMap() Please specify it explicitly. package demo import java.util.HashMap diff --git a/j2k/tests/testData/fileOrElement/rawGenerics/kt-540.java b/j2k/tests/testData/fileOrElement/rawGenerics/kt-540.java index 3776bb92e58..03256cbe9da 100644 --- a/j2k/tests/testData/fileOrElement/rawGenerics/kt-540.java +++ b/j2k/tests/testData/fileOrElement/rawGenerics/kt-540.java @@ -2,12 +2,12 @@ package demo; import java.util.List; -import java.util.LinkedList; +import java.util.ArrayList; class Test { void main() { - List common = new LinkedList(); - List raw = new LinkedList(); - List superRaw = new LinkedList(); + List common = new ArrayList(); + List raw = new ArrayList(); + List superRaw = new ArrayList(); } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/rawGenerics/kt-540.kt b/j2k/tests/testData/fileOrElement/rawGenerics/kt-540.kt index 3c33ceb249a..0eda746845c 100644 --- a/j2k/tests/testData/fileOrElement/rawGenerics/kt-540.kt +++ b/j2k/tests/testData/fileOrElement/rawGenerics/kt-540.kt @@ -1,11 +1,12 @@ +// ERROR: Type inference failed: Not enough information to infer parameter E in constructor ArrayList() Please specify it explicitly. package demo -import java.util.LinkedList +import java.util.ArrayList class Test { fun main() { - val common = LinkedList() - val raw = LinkedList() - val superRaw = LinkedList() + val common = ArrayList() + val raw = ArrayList() + val superRaw = ArrayList() } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/superExpression/classAdotSuperFoo.java b/j2k/tests/testData/fileOrElement/superExpression/classAdotSuperFoo.java index 33cea2861b2..61d9dfc6918 100644 --- a/j2k/tests/testData/fileOrElement/superExpression/classAdotSuperFoo.java +++ b/j2k/tests/testData/fileOrElement/superExpression/classAdotSuperFoo.java @@ -2,7 +2,7 @@ package a.b; class Base { - void foo(); + void foo(){} } class A extends Base { diff --git a/j2k/tests/testData/fileOrElement/superExpression/classAdotSuperFoo.kt b/j2k/tests/testData/fileOrElement/superExpression/classAdotSuperFoo.kt index 1d3d673500c..d3789b6ffbe 100644 --- a/j2k/tests/testData/fileOrElement/superExpression/classAdotSuperFoo.kt +++ b/j2k/tests/testData/fileOrElement/superExpression/classAdotSuperFoo.kt @@ -1,7 +1,9 @@ +// ERROR: This type is final, so it cannot be inherited from package a.b class Base { - fun foo() + fun foo() { + } } class A : Base() { diff --git a/j2k/tests/testData/fileOrElement/thisExpression/classAdotThisFoo.kt b/j2k/tests/testData/fileOrElement/thisExpression/classAdotThisFoo.kt index 32061eb0950..ff46862942b 100644 --- a/j2k/tests/testData/fileOrElement/thisExpression/classAdotThisFoo.kt +++ b/j2k/tests/testData/fileOrElement/thisExpression/classAdotThisFoo.kt @@ -1,3 +1,4 @@ +// ERROR: This type is final, so it cannot be inherited from package a.b class Base { diff --git a/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator.kt b/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator.kt index c9f5b87c84b..b4a2d812bb8 100644 --- a/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator.kt +++ b/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator.kt @@ -1,3 +1,5 @@ +// ERROR: Null can not be a value of a non-null type kotlin.Iterator +// ERROR: Null can not be a value of a non-null type kotlin.Iterator package demo class Test : Iterable { diff --git a/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator2.kt b/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator2.kt index 7a2ce282b3c..11db955cd61 100644 --- a/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator2.kt +++ b/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator2.kt @@ -1,3 +1,5 @@ +// ERROR: Null can not be a value of a non-null type kotlin.Iterator +// ERROR: Null can not be a value of a non-null type kotlin.Iterator package demo import java.util.* diff --git a/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator3.kt b/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator3.kt index 55f8a999a12..5240bdcda2f 100644 --- a/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator3.kt +++ b/j2k/tests/testData/fileOrElement/toKotlinClasses/iterableAndIterator3.kt @@ -1,3 +1,4 @@ +// ERROR: Null can not be a value of a non-null type kotlin.Iterator package demo class Test : Iterable { diff --git a/j2k/tests/testData/fileOrElement/tryStatement/disjunctionType.kt b/j2k/tests/testData/fileOrElement/tryStatement/disjunctionType.kt index d3c6afdbe99..1f3031a48e6 100644 --- a/j2k/tests/testData/fileOrElement/tryStatement/disjunctionType.kt +++ b/j2k/tests/testData/fileOrElement/tryStatement/disjunctionType.kt @@ -1,3 +1,4 @@ +// ERROR: Unresolved reference: bar import java.io.IOException class A { diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/Multiline.java b/j2k/tests/testData/fileOrElement/tryWithResource/Multiline.java index 4bc2473a748..7761214e6f8 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/Multiline.java +++ b/j2k/tests/testData/fileOrElement/tryWithResource/Multiline.java @@ -3,7 +3,7 @@ import java.io.*; public class C { void foo() throws IOException { - try(InputStream stream = new FileInputStream("foo")) { + try(InputStream stream = new ByteArrayInputStream(new byte[10])) { // reading something int c = stream.read(); System.out.println(c); diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/Multiline.kt b/j2k/tests/testData/fileOrElement/tryWithResource/Multiline.kt index efa59c079f0..09a44fd2cdd 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/Multiline.kt +++ b/j2k/tests/testData/fileOrElement/tryWithResource/Multiline.kt @@ -3,7 +3,7 @@ import java.io.* public class C { throws(javaClass()) fun foo() { - FileInputStream("foo").use { stream -> + ByteArrayInputStream(ByteArray(10)).use { stream -> // reading something val c = stream.read() System.out.println(c) diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/MultipleResources.java b/j2k/tests/testData/fileOrElement/tryWithResource/MultipleResources.java index f3dc33b5a36..d8a15bb410b 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/MultipleResources.java +++ b/j2k/tests/testData/fileOrElement/tryWithResource/MultipleResources.java @@ -3,8 +3,8 @@ import java.io.*; public class C { void foo() throws IOException { - try(InputStream input = new FileInputStream("foo"); - OutputStream output = new FileOutputStream("bar")) { + try(ByteArrayInputStream input = new ByteArrayInputStream(new byte[10]); + OutputStream output = new ByteArrayOutputStream()) { output.write(input.read()); output.write(0); } diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/MultipleResources.kt b/j2k/tests/testData/fileOrElement/tryWithResource/MultipleResources.kt index 12ac64beb17..100afd76710 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/MultipleResources.kt +++ b/j2k/tests/testData/fileOrElement/tryWithResource/MultipleResources.kt @@ -3,8 +3,8 @@ import java.io.* public class C { throws(javaClass()) fun foo() { - FileInputStream("foo").use { input -> - FileOutputStream("bar").use { output -> + ByteArrayInputStream(ByteArray(10)).use { input -> + ByteArrayOutputStream().use { output -> output.write(input.read()) output.write(0) } diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/Simple.java b/j2k/tests/testData/fileOrElement/tryWithResource/Simple.java index c07eaf8b42e..f1d813522eb 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/Simple.java +++ b/j2k/tests/testData/fileOrElement/tryWithResource/Simple.java @@ -3,7 +3,7 @@ import java.io.*; public class C { void foo() throws IOException { - try(InputStream stream = new FileInputStream("foo")) { + try(InputStream stream = new ByteArrayInputStream(new byte[10])) { System.out.println(stream.read()); } } diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/Simple.kt b/j2k/tests/testData/fileOrElement/tryWithResource/Simple.kt index e87e818b3b4..bd92651d419 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/Simple.kt +++ b/j2k/tests/testData/fileOrElement/tryWithResource/Simple.kt @@ -3,6 +3,6 @@ import java.io.* public class C { throws(javaClass()) fun foo() { - FileInputStream("foo").use { stream -> System.out.println(stream.read()) } + ByteArrayInputStream(ByteArray(10)).use { stream -> System.out.println(stream.read()) } } } \ No newline at end of file diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatch.java b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatch.java index 50e2bb22b68..71efac0f24a 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatch.java +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatch.java @@ -3,7 +3,7 @@ import java.io.*; public class C { void foo() { - try(InputStream stream = new FileInputStream("foo")) { + try(InputStream stream = new ByteArrayInputStream(new byte[10])) { // reading something int c = stream.read(); System.out.println(c); diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatch.kt b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatch.kt index 02d59506ec5..13adcc04b98 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatch.kt +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatch.kt @@ -3,7 +3,7 @@ import java.io.* public class C { fun foo() { try { - FileInputStream("foo").use { stream -> + ByteArrayInputStream(ByteArray(10)).use { stream -> // reading something val c = stream.read() System.out.println(c) diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatchAndFinally.java b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatchAndFinally.java index 76821717110..d5dd406a032 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatchAndFinally.java +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatchAndFinally.java @@ -3,7 +3,7 @@ import java.io.*; public class C { void foo() { - try(InputStream stream = new FileInputStream("foo")) { + try(InputStream stream = new ByteArrayInputStream(new byte[10])) { // reading something int c = stream.read(); System.out.println(c); diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatchAndFinally.kt b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatchAndFinally.kt index e857c40cd6f..2f792e94108 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatchAndFinally.kt +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatchAndFinally.kt @@ -3,7 +3,7 @@ import java.io.* public class C { fun foo() { try { - FileInputStream("foo").use { stream -> + ByteArrayInputStream(ByteArray(10)).use { stream -> // reading something val c = stream.read() System.out.println(c) diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatches.java b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatches.java index 91317aa109a..2bbd4e71ac6 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatches.java +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatches.java @@ -3,7 +3,7 @@ import java.io.*; public class C { void foo() { - try(InputStream stream = new FileInputStream("foo")) { + try(InputStream stream = new ByteArrayInputStream(new byte[10])) { // reading something int c = stream.read(); System.out.println(c); diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatches.kt b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatches.kt index a06142a7785..899e68018a8 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithCatches.kt +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithCatches.kt @@ -3,7 +3,7 @@ import java.io.* public class C { fun foo() { try { - FileInputStream("foo").use { stream -> + ByteArrayInputStream(ByteArray(10)).use { stream -> // reading something val c = stream.read() System.out.println(c) diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithFinally.java b/j2k/tests/testData/fileOrElement/tryWithResource/WithFinally.java index e6d40d475e1..a68c13fe32f 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithFinally.java +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithFinally.java @@ -3,7 +3,7 @@ import java.io.*; public class C { void foo() throws IOException { - try(InputStream stream = new FileInputStream("foo")) { + try(InputStream stream = new ByteArrayInputStream(new byte[10])) { // reading something int c = stream.read(); System.out.println(c); diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithFinally.kt b/j2k/tests/testData/fileOrElement/tryWithResource/WithFinally.kt index 0e974bce707..0742ffc32f5 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithFinally.kt +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithFinally.kt @@ -4,7 +4,7 @@ public class C { throws(javaClass()) fun foo() { try { - FileInputStream("foo").use { stream -> + ByteArrayInputStream(ByteArray(10)).use { stream -> // reading something val c = stream.read() System.out.println(c) diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnAtEnd.java b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnAtEnd.java index 7a9be09c5ea..cd93cd3d214 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnAtEnd.java +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnAtEnd.java @@ -3,7 +3,7 @@ import java.io.*; public class C { int foo() { - try(InputStream stream = new FileInputStream("foo")) { + try(InputStream stream = new ByteArrayInputStream(new byte[10])) { // reading something int c = stream.read(); return c; diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnAtEnd.kt b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnAtEnd.kt index 1022d130a81..0b72b32e92a 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnAtEnd.kt +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnAtEnd.kt @@ -1,9 +1,11 @@ +// ERROR: 'return' is not allowed here +// ERROR: A 'return' expression required in a function with a block body ('{...}') import java.io.* public class C { fun foo(): Int { try { - FileInputStream("foo").use { stream -> + ByteArrayInputStream(ByteArray(10)).use { stream -> // reading something val c = stream.read() return c diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.java b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.java index 9bc3f676075..a9f08605ac9 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.java +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.java @@ -7,7 +7,7 @@ interface I { public class C { void foo() throws IOException { - try(InputStream stream = new FileInputStream("foo")) { + try(InputStream stream = new ByteArrayInputStream(new byte[10])) { bar(new I() { @Override public int doIt(InputStream stream) throws IOException { diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.kt b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.kt index 281e84f9faa..95a3b169ab5 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.kt +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.kt @@ -8,7 +8,7 @@ trait I { public class C { throws(javaClass()) fun foo() { - FileInputStream("foo").use { stream -> + ByteArrayInputStream(ByteArray(10)).use { stream -> bar(object : I { throws(javaClass()) override fun doIt(stream: InputStream): Int { diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.java b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.java index 4f1e06a7f2a..3f6803f1af1 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.java +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.java @@ -7,7 +7,7 @@ interface I { public class C { int foo() throws IOException { - try(InputStream stream = new FileInputStream("foo")) { + try(InputStream stream = new ByteArrayInputStream(new byte[10])) { return bar(new I() { @Override public int doIt(InputStream stream) throws IOException { diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.kt b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.kt index 5865a832183..8956b54bca1 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.kt +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.kt @@ -1,3 +1,5 @@ +// ERROR: 'return' is not allowed here +// ERROR: A 'return' expression required in a function with a block body ('{...}') import java.io.* trait I { @@ -8,7 +10,7 @@ trait I { public class C { throws(javaClass()) fun foo(): Int { - FileInputStream("foo").use { stream -> + ByteArrayInputStream(ByteArray(10)).use { stream -> return bar(object : I { throws(javaClass()) override fun doIt(stream: InputStream): Int { diff --git a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass3.java.todo b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass3.java.todo index 1872fdbede8..685c8dea416 100644 --- a/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass3.java.todo +++ b/j2k/tests/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass3.java.todo @@ -7,7 +7,7 @@ interface I { public class C { int foo() throws IOException { - try(InputStream stream = new FileInputStream("foo")) { + try(InputStream stream = new ByteArrayInputStream(new byte[10])) { if (stream.read() >= 0) { return bar(new I() { @Override diff --git a/j2k/tests/testData/fileOrElement/typeParameters/rawTypeCast.kt b/j2k/tests/testData/fileOrElement/typeParameters/rawTypeCast.kt index e02a6606171..e5564e1c5ca 100644 --- a/j2k/tests/testData/fileOrElement/typeParameters/rawTypeCast.kt +++ b/j2k/tests/testData/fileOrElement/typeParameters/rawTypeCast.kt @@ -1,3 +1,4 @@ +// ERROR: Type inference failed. Expected type mismatch: found: java.util.HashMap required: kotlin.Map import java.util.* import kotlin.Map