From 72c2648fc801beef6f645853a291df1246768b47 Mon Sep 17 00:00:00 2001 From: Zalim Bashorov Date: Fri, 22 May 2015 18:16:19 +0300 Subject: [PATCH] JS frontend: remove diagnostics about the secondary constructors are not supported --- .../secondaryConstructor.kt | 15 ----------- .../secondaryConstructor.txt | 25 ------------------- ...tDiagnosticsTestWithJsStdLibGenerated.java | 6 ----- .../diagnostics/DefaultErrorMessagesJs.kt | 1 - .../js/resolve/diagnostics/ErrorsJs.java | 1 - .../js/resolve/unsupportedFeatureCheckers.kt | 6 ----- 6 files changed, 54 deletions(-) delete mode 100644 compiler/testData/diagnostics/testsWithJsStdLib/unsupportedFeatures/secondaryConstructor.kt delete mode 100644 compiler/testData/diagnostics/testsWithJsStdLib/unsupportedFeatures/secondaryConstructor.txt diff --git a/compiler/testData/diagnostics/testsWithJsStdLib/unsupportedFeatures/secondaryConstructor.kt b/compiler/testData/diagnostics/testsWithJsStdLib/unsupportedFeatures/secondaryConstructor.kt deleted file mode 100644 index cc16e63bd68..00000000000 --- a/compiler/testData/diagnostics/testsWithJsStdLib/unsupportedFeatures/secondaryConstructor.kt +++ /dev/null @@ -1,15 +0,0 @@ -// !DIAGNOSTICS: -UNUSED_PARAMETER - -class A { - constructor() {} -} - -class B { - constructor() {} - constructor(a: Int) {} -} - -class C(a: Int) { - constructor() : this(1) {} - constructor(a: String) : this(2) {} -} diff --git a/compiler/testData/diagnostics/testsWithJsStdLib/unsupportedFeatures/secondaryConstructor.txt b/compiler/testData/diagnostics/testsWithJsStdLib/unsupportedFeatures/secondaryConstructor.txt deleted file mode 100644 index acb928468bb..00000000000 --- a/compiler/testData/diagnostics/testsWithJsStdLib/unsupportedFeatures/secondaryConstructor.txt +++ /dev/null @@ -1,25 +0,0 @@ -package - -internal final class A { - public constructor A() - 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 -} - -internal final class B { - public constructor B() - public constructor B(/*0*/ a: kotlin.Int) - 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 -} - -internal final class C { - public constructor C() - public constructor C(/*0*/ a: kotlin.Int) - public constructor C(/*0*/ a: kotlin.String) - 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 -} diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/JetDiagnosticsTestWithJsStdLibGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/JetDiagnosticsTestWithJsStdLibGenerated.java index 481e0f8586c..f563cece255 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/JetDiagnosticsTestWithJsStdLibGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/JetDiagnosticsTestWithJsStdLibGenerated.java @@ -564,11 +564,5 @@ public class JetDiagnosticsTestWithJsStdLibGenerated extends AbstractJetDiagnost String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/testsWithJsStdLib/unsupportedFeatures/nestedInnerClassifier.kt"); doTest(fileName); } - - @TestMetadata("secondaryConstructor.kt") - public void testSecondaryConstructor() throws Exception { - String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/testsWithJsStdLib/unsupportedFeatures/secondaryConstructor.kt"); - doTest(fileName); - } } } diff --git a/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/diagnostics/DefaultErrorMessagesJs.kt b/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/diagnostics/DefaultErrorMessagesJs.kt index a3b370d3b90..d36ed24be5b 100644 --- a/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/diagnostics/DefaultErrorMessagesJs.kt +++ b/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/diagnostics/DefaultErrorMessagesJs.kt @@ -37,7 +37,6 @@ private val DIAGNOSTIC_FACTORY_TO_RENDERER by Delegates.lazy { put(ErrorsJs.NOT_SUPPORTED, "Cannot translate (not supported yet): ''{0}''", RenderFirstLineOfElementText) put(ErrorsJs.REFERENCE_TO_BUILTIN_MEMBERS_NOT_SUPPORTED, "Callable references for builtin members are not supported yet: ''{0}''", RenderFirstLineOfElementText) put(ErrorsJs.NON_TOPLEVEL_CLASS_DECLARATION, "Non-toplevel {0} declarations not supported yet", Renderers.STRING) - put(ErrorsJs.SECONDARY_CONSTRUCTOR, "Secondary constructors not supported yet") put(ErrorsJs.JSCODE_NO_JAVASCRIPT_PRODUCED, "Argument must be non-empty JavaScript code") this diff --git a/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/diagnostics/ErrorsJs.java b/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/diagnostics/ErrorsJs.java index 843115d832d..d18bf343c9b 100644 --- a/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/diagnostics/ErrorsJs.java +++ b/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/diagnostics/ErrorsJs.java @@ -43,7 +43,6 @@ public interface ErrorsJs { DiagnosticFactory1 NOT_SUPPORTED = DiagnosticFactory1.create(ERROR, DEFAULT); DiagnosticFactory1 REFERENCE_TO_BUILTIN_MEMBERS_NOT_SUPPORTED = DiagnosticFactory1.create(ERROR, DEFAULT); DiagnosticFactory1 NON_TOPLEVEL_CLASS_DECLARATION = DiagnosticFactory1.create(ERROR, DECLARATION_NAME); - DiagnosticFactory0 SECONDARY_CONSTRUCTOR = DiagnosticFactory0.create(ERROR, DECLARATION_SIGNATURE_OR_DEFAULT); DiagnosticFactory0 JSCODE_NO_JAVASCRIPT_PRODUCED = DiagnosticFactory0.create(ERROR, DEFAULT); @SuppressWarnings("UnusedDeclaration") diff --git a/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/unsupportedFeatureCheckers.kt b/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/unsupportedFeatureCheckers.kt index 09bf397d073..8ac9a876d8a 100644 --- a/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/unsupportedFeatureCheckers.kt +++ b/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/unsupportedFeatureCheckers.kt @@ -34,12 +34,6 @@ class ClassDeclarationChecker : DeclarationChecker { if (declaration !is JetClassOrObject || declaration is JetObjectDeclaration || declaration is JetEnumEntry) return - if (declaration is JetClass) { - declaration.getSecondaryConstructors().forEach { - diagnosticHolder.report(ErrorsJs.SECONDARY_CONSTRUCTOR.on(it)) - } - } - // hack to avoid to get diagnostics when compile kotlin builtins val fqNameUnsafe = DescriptorUtils.getFqName(descriptor) if (fqNameUnsafe.asString().startsWith("kotlin.")) return