From 2445357166f7c56a0ace34fade761b6df84e4b62 Mon Sep 17 00:00:00 2001 From: Alexander Gorshenev Date: Wed, 11 Oct 2017 15:42:53 +0300 Subject: [PATCH] A test to check we don't throw away a library dependency only because it it a default lib not needed in the main program. --- backend.native/tests/build.gradle | 6 ++++++ backend.native/tests/link/purge1/lib.kt | 8 ++++++++ backend.native/tests/link/purge1/prog.kt | 4 ++++ 3 files changed, 18 insertions(+) create mode 100644 backend.native/tests/link/purge1/lib.kt create mode 100644 backend.native/tests/link/purge1/prog.kt diff --git a/backend.native/tests/build.gradle b/backend.native/tests/build.gradle index a21847087f0..3dcfd980c7d 100644 --- a/backend.native/tests/build.gradle +++ b/backend.native/tests/build.gradle @@ -1227,6 +1227,12 @@ task link_default_libs(type: RunKonanTest) { source = "link/default/default.kt" } +task no_purge_for_dependencies(type: LinkKonanTest) { + goldValue = "linked library\nand symbols from posix available: 17; 1.0\n" + source = "link/purge1/prog.kt" + lib = "link/purge1/lib.kt" +} + task for0(type: RunKonanTest) { goldValue = "2\n3\n4\n" source = "runtime/basic/for0.kt" diff --git a/backend.native/tests/link/purge1/lib.kt b/backend.native/tests/link/purge1/lib.kt new file mode 100644 index 00000000000..b0ec3437fb3 --- /dev/null +++ b/backend.native/tests/link/purge1/lib.kt @@ -0,0 +1,8 @@ +import platform.posix.* + +fun foo() { + println("linked library") + val size: size_t = 17L + val e = fabs(1.toDouble()) + println("and symbols from posix available: $size; $e") +} diff --git a/backend.native/tests/link/purge1/prog.kt b/backend.native/tests/link/purge1/prog.kt new file mode 100644 index 00000000000..2029e4ebc87 --- /dev/null +++ b/backend.native/tests/link/purge1/prog.kt @@ -0,0 +1,4 @@ + +fun main(args: Array) { + foo() +}