From c395bc80a0933814dc45e1101542c5513c6260fd Mon Sep 17 00:00:00 2001 From: Vasily Levchenko Date: Tue, 24 Jan 2017 11:09:58 +0300 Subject: [PATCH] TEST: defaults7 test enabled and defaults4 was enabled --- backend.native/tests/build.gradle | 10 +++++++++- .../tests/codegen/function/defaults7.kt | 16 ++++++++++++++++ .../tests/codegen/function/defaults8.kt | 11 +++++++++++ 3 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 backend.native/tests/codegen/function/defaults7.kt create mode 100644 backend.native/tests/codegen/function/defaults8.kt diff --git a/backend.native/tests/build.gradle b/backend.native/tests/build.gradle index 95df6ecc6c4..a89217a9fc0 100644 --- a/backend.native/tests/build.gradle +++ b/backend.native/tests/build.gradle @@ -178,7 +178,6 @@ task defaults3(type: RunKonanTest) { } task defaults4(type: RunKonanTest) { - disabled = true goldValue = "43\n" source = "codegen/function/defaults4.kt" } @@ -193,6 +192,15 @@ task defaults6(type: RunKonanTest) { source = "codegen/function/defaults6.kt" } +task defaults7(type: RunKonanTest) { + goldValue = "42\n" + source = "codegen/function/defaults7.kt" +} + +task defaults8(type: RunKonanTest) { + goldValue = "2\n" + source = "codegen/function/defaults8.kt" +} task sum_3const(type: RunKonanTest) { source = "codegen/function/sum_3const.kt" diff --git a/backend.native/tests/codegen/function/defaults7.kt b/backend.native/tests/codegen/function/defaults7.kt new file mode 100644 index 00000000000..71d2491e01c --- /dev/null +++ b/backend.native/tests/codegen/function/defaults7.kt @@ -0,0 +1,16 @@ +/** + * Test fails with code generation: + * Call parameter type does not match function signature! + * %5 = invoke %struct.ObjHeader* @"kfun:konan.internal.boxInt(kotlin.Int)"(i32 1, %struct.ObjHeader** %4) + * to label %label_ unwind label %cleanup_landingpad + * i32 invoke void @"kfun:foo$default(kotlin.Int;kotlin.Int;kotlin.Int)"(%struct.ObjHeader* %5, i32 0, i32 2) + * to label %label_1 unwind label %cleanup_landingpad + */ + +fun foo(a : T, b : Int = 42){ + println(b) +} + +fun main(args : Array) { + foo(1) +} \ No newline at end of file diff --git a/backend.native/tests/codegen/function/defaults8.kt b/backend.native/tests/codegen/function/defaults8.kt new file mode 100644 index 00000000000..b03ef4d538c --- /dev/null +++ b/backend.native/tests/codegen/function/defaults8.kt @@ -0,0 +1,11 @@ +class Foo { + fun test(x: Int = 1) = x +} + +class Bar { + fun test(x: Int = 2) = x +} + +fun main(args : Array) { + println(Bar().test()) +} \ No newline at end of file