diff --git a/compiler/testData/javaModules/dependencyOnStdlibJdk78/usage.txt b/compiler/testData/javaModules/dependencyOnStdlibJdk78/usage.txt new file mode 100644 index 00000000000..d86bac9de59 --- /dev/null +++ b/compiler/testData/javaModules/dependencyOnStdlibJdk78/usage.txt @@ -0,0 +1 @@ +OK diff --git a/compiler/testData/javaModules/dependencyOnStdlibJdk78/usage/main.kt b/compiler/testData/javaModules/dependencyOnStdlibJdk78/usage/main.kt new file mode 100644 index 00000000000..67acb61dcb3 --- /dev/null +++ b/compiler/testData/javaModules/dependencyOnStdlibJdk78/usage/main.kt @@ -0,0 +1,15 @@ +import java.util.stream.Stream +import kotlin.streams.* + +// kotlin-stdlib-jdk7 + +fun testUse(c: AutoCloseable) = c.use {} + +// kotlin-stdlib-jdk8 + +fun testGet(c: MatchGroupCollection) = c.get("") + +fun testGetOrDefault(c: Map) = c.getOrDefault(42, "") +fun testRemove(c: MutableMap) = c.remove(42, "") + +fun testAsSequence(c: Stream) = c.asSequence() diff --git a/compiler/testData/javaModules/dependencyOnStdlibJdk78/usage/module-info.java b/compiler/testData/javaModules/dependencyOnStdlibJdk78/usage/module-info.java new file mode 100644 index 00000000000..06c0255d525 --- /dev/null +++ b/compiler/testData/javaModules/dependencyOnStdlibJdk78/usage/module-info.java @@ -0,0 +1,5 @@ +module usage { + requires kotlin.stdlib; + requires kotlin.stdlib.jdk7; + requires kotlin.stdlib.jdk8; +} diff --git a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/Java9ModulesIntegrationTest.kt b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/Java9ModulesIntegrationTest.kt index 848c8d9adcc..ba2188b2247 100644 --- a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/Java9ModulesIntegrationTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/Java9ModulesIntegrationTest.kt @@ -38,6 +38,7 @@ class Java9ModulesIntegrationTest : AbstractKotlinCompilerIntegrationTest() { val kotlinOptions = mutableListOf( "-jdk-home", jdk9Home.path, + "-jvm-target", "1.8", "-Xmodule-path=$paths" ) if (addModules.isNotEmpty()) { @@ -252,4 +253,8 @@ class Java9ModulesIntegrationTest : AbstractKotlinCompilerIntegrationTest() { module("namedWithExplicitDependency") module("namedWithoutExplicitDependency") } + + fun testDependencyOnStdlibJdk78() { + module("usage", listOf(File("dist/kotlinc/lib/kotlin-stdlib-jdk7.jar"), File("dist/kotlinc/lib/kotlin-stdlib-jdk8.jar"))) + } }