| class C(val x: String) { |
| fun test(a: String, b: String): String = |
| x + a + b |
| } |
| |
| fun String.test(a: String, b: String): String = |
| this + a + b |
| |
| fun box(): String { |
| var res = "" |
| var call = {res += "1"; "x"}().test(b = {res += "2"; "b"}(), a = {res += "3"; "a"}()) |
| if (res != "123" || call != "xab") return "fail1: $res != 123 or $call != xab" |
| |
| res = "" |
| call = {res += "1"; C("x")}().test(b = {res += "2"; "b"}(), a = {res += "3"; "a"}()) |
| if (res != "123" || call != "xab") return "fail2: $res != 123 or $call != xab" |
| return "OK" |
| } |