diff --git a/compiler/testData/cli/js/wrongAbiVersion.out b/compiler/testData/cli/js/wrongAbiVersion.out index 5fd2bac9a2e..097674f9c17 100644 --- a/compiler/testData/cli/js/wrongAbiVersion.out +++ b/compiler/testData/cli/js/wrongAbiVersion.out @@ -1,2 +1,2 @@ -error: file 'compiler/testData/cli/js/wrongAbiVersionLib/wrongAbiLib.meta.js' was compiled with an incompatible version of Kotlin. Its ABI version is 0, expected ABI version is 4 +error: file 'compiler/testData/cli/js/wrongAbiVersionLib/wrongAbiLib.meta.js' was compiled with an incompatible version of Kotlin. Its ABI version is 0, expected version is $ABI_VERSION$ COMPILATION_ERROR diff --git a/compiler/tests/org/jetbrains/kotlin/cli/AbstractCliTest.java b/compiler/tests/org/jetbrains/kotlin/cli/AbstractCliTest.java index 743561957e6..f5260e8b2e6 100644 --- a/compiler/tests/org/jetbrains/kotlin/cli/AbstractCliTest.java +++ b/compiler/tests/org/jetbrains/kotlin/cli/AbstractCliTest.java @@ -35,6 +35,7 @@ import org.jetbrains.kotlin.test.InTextDirectivesUtils; import org.jetbrains.kotlin.test.KotlinTestUtils; import org.jetbrains.kotlin.test.TestCaseWithTmpdir; import org.jetbrains.kotlin.utils.ExceptionUtilsKt; +import org.jetbrains.kotlin.utils.KotlinJavascriptMetadataUtils; import org.jetbrains.kotlin.utils.PathUtil; import org.jetbrains.kotlin.utils.StringsKt; import org.junit.Assert; @@ -81,11 +82,11 @@ public abstract class AbstractCliTest extends TestCaseWithTmpdir { return normalizedOutputWithoutExitCode + exitCode; } - private void doTest(@NotNull String fileName, @NotNull CLICompiler compiler) throws Exception { + private void doTest(@NotNull String fileName, @NotNull CLICompiler compiler, BinaryVersion version) throws Exception { System.setProperty("java.awt.headless", "true"); Pair outputAndExitCode = executeCompilerGrabOutput(compiler, readArgs(fileName, tmpdir.getPath())); String actual = getNormalizedCompilerOutput( - outputAndExitCode.getFirst(), outputAndExitCode.getSecond(), new File(fileName).getParent(), JvmMetadataVersion.INSTANCE + outputAndExitCode.getFirst(), outputAndExitCode.getSecond(), new File(fileName).getParent(), version ); File outFile = new File(fileName.replaceFirst("\\.args$", ".out")); @@ -151,11 +152,22 @@ public abstract class AbstractCliTest extends TestCaseWithTmpdir { } protected void doJvmTest(@NotNull String fileName) throws Exception { - doTest(fileName, new K2JVMCompiler()); + doTest(fileName, new K2JVMCompiler(), JvmMetadataVersion.INSTANCE); } protected void doJsTest(@NotNull String fileName) throws Exception { - doTest(fileName, new K2JSCompiler()); + doTest(fileName, new K2JSCompiler(), new BinaryVersion() { + @Override + public boolean isCompatible() { + throw new UnsupportedOperationException(); + } + + @NotNull + @Override + public String toString() { + return String.valueOf(KotlinJavascriptMetadataUtils.ABI_VERSION); + } + }); } public static String removePerfOutput(String output) { diff --git a/js/js.frontend/src/org/jetbrains/kotlin/js/config/LibrarySourcesConfig.java b/js/js.frontend/src/org/jetbrains/kotlin/js/config/LibrarySourcesConfig.java index 13047346747..9604a7c67a7 100644 --- a/js/js.frontend/src/org/jetbrains/kotlin/js/config/LibrarySourcesConfig.java +++ b/js/js.frontend/src/org/jetbrains/kotlin/js/config/LibrarySourcesConfig.java @@ -144,7 +144,7 @@ public class LibrarySourcesConfig extends JsConfig { if (!metadata.isAbiVersionCompatible()) { report.invoke("File '" + path + "' was compiled with an incompatible version of Kotlin. " + "Its ABI version is " + metadata.getAbiVersion() + - ", expected ABI version is " + KotlinJavascriptMetadataUtils.ABI_VERSION); + ", expected version is " + KotlinJavascriptMetadataUtils.ABI_VERSION); return true; } }