From 69661444cee218dcdbfeb986a14456f4c261809e Mon Sep 17 00:00:00 2001 From: Konstantin Anisimov Date: Fri, 20 Jan 2017 15:46:55 +0700 Subject: [PATCH] TESTS: new tests added --- backend.native/tests/build.gradle | 17 ++++++++++++++++- backend.native/tests/codegen/inline/inline6.kt | 10 ++++++---- backend.native/tests/codegen/inline/inline7.kt | 14 ++++++++++++++ backend.native/tests/codegen/inline/inline8.kt | 12 ++++++++++++ 4 files changed, 48 insertions(+), 5 deletions(-) create mode 100644 backend.native/tests/codegen/inline/inline7.kt create mode 100644 backend.native/tests/codegen/inline/inline8.kt diff --git a/backend.native/tests/build.gradle b/backend.native/tests/build.gradle index 6b93fd48495..208b70dd1c4 100644 --- a/backend.native/tests/build.gradle +++ b/backend.native/tests/build.gradle @@ -911,6 +911,21 @@ task inline4(type: RunKonanTest) { } //task inline5(type: RunKonanTest) { -// goldValue = "9\n" +// goldValue = "1\n" // source = "codegen/inline/inline5.kt" //} + +task inline6(type: RunKonanTest) { + goldValue = "hello1\nhello2\nhello3\nhello4\n" + source = "codegen/inline/inline6.kt" +} + +task inline7(type: RunKonanTest) { + goldValue = "1\n2\n3\n" + source = "codegen/inline/inline7.kt" +} + +task inline8(type: RunKonanTest) { + goldValue = "5\n" + source = "codegen/inline/inline8.kt" +} diff --git a/backend.native/tests/codegen/inline/inline6.kt b/backend.native/tests/codegen/inline/inline6.kt index e8f0c62a633..4f6efa66604 100644 --- a/backend.native/tests/codegen/inline/inline6.kt +++ b/backend.native/tests/codegen/inline/inline6.kt @@ -1,12 +1,14 @@ -//@Suppress("NOTHING_TO_INLINE") -//inline fun foo(body: () -> Unit) { -fun foo(body: () -> Unit) { +@Suppress("NOTHING_TO_INLINE") +inline fun foo(body: () -> Unit) { + println("hello1") body() + println("hello4") } fun bar() { foo { - println("hello") + println("hello2") + println("hello3") } } diff --git a/backend.native/tests/codegen/inline/inline7.kt b/backend.native/tests/codegen/inline/inline7.kt new file mode 100644 index 00000000000..6bb5dd067c2 --- /dev/null +++ b/backend.native/tests/codegen/inline/inline7.kt @@ -0,0 +1,14 @@ +@Suppress("NOTHING_TO_INLINE") +inline fun foo(vararg args: Int) { + for (a in args) { + println(a.toString()) + } +} + +fun bar() { + foo(1, 2, 3) +} + +fun main(args: Array) { + bar() +} diff --git a/backend.native/tests/codegen/inline/inline8.kt b/backend.native/tests/codegen/inline/inline8.kt new file mode 100644 index 00000000000..714ae940700 --- /dev/null +++ b/backend.native/tests/codegen/inline/inline8.kt @@ -0,0 +1,12 @@ +@Suppress("NOTHING_TO_INLINE") +inline fun foo(i3: Int, i4: Int) : Int { + return i3 + i3 + i4 +} + +fun bar(i1: Int, i2: Int) : Int { + return foo(i1 + i2, 2) +} + +fun main(args: Array) { + println(bar(1, 2).toString()) +}