| Index: pkg/kernel/testcases/closures/static_tear_off.dart.expect
|
| diff --git a/pkg/kernel/testcases/closures/static_tear_off.dart.expect b/pkg/kernel/testcases/closures/static_tear_off.dart.expect
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..70958901bad152cf86a3fc565252a135cd3b2d86
|
| --- /dev/null
|
| +++ b/pkg/kernel/testcases/closures/static_tear_off.dart.expect
|
| @@ -0,0 +1,84 @@
|
| +library;
|
| +import self as self;
|
| +import "dart:core" as core;
|
| +
|
| +class Closure#f_1_1_no_default extends core::Object implements core::Function {
|
| + field core::String note = "This is temporary. The VM doesn't need closure classes.";
|
| + constructor •() → dynamic
|
| + ;
|
| + method call(dynamic a, [dynamic b]) → dynamic
|
| + return self::f_1_1_no_default(a, b);
|
| +}
|
| +class Closure#f_1_1_default extends core::Object implements core::Function {
|
| + field core::String note = "This is temporary. The VM doesn't need closure classes.";
|
| + constructor •() → dynamic
|
| + ;
|
| + method call(dynamic a, [dynamic b = 2]) → dynamic
|
| + return self::f_1_1_default(a, b);
|
| +}
|
| +class Closure#f_1_b_no_default extends core::Object implements core::Function {
|
| + field core::String note = "This is temporary. The VM doesn't need closure classes.";
|
| + constructor •() → dynamic
|
| + ;
|
| + method call(dynamic a, {dynamic b}) → dynamic
|
| + return self::f_1_b_no_default(a, b: b);
|
| +}
|
| +class Closure#f_1_b_default extends core::Object implements core::Function {
|
| + field core::String note = "This is temporary. The VM doesn't need closure classes.";
|
| + constructor •() → dynamic
|
| + ;
|
| + method call(dynamic a, {dynamic b = 2}) → dynamic
|
| + return self::f_1_b_default(a, b: b);
|
| +}
|
| +static method f_1_1_no_default(dynamic a, [dynamic b]) → dynamic {
|
| + return a.+(b);
|
| +}
|
| +static method f_1_1_default(dynamic a, [dynamic b = 2]) → dynamic {
|
| + return a.+(b);
|
| +}
|
| +static method f_1_b_no_default(dynamic a, {dynamic b}) → dynamic {
|
| + return a.+(b);
|
| +}
|
| +static method f_1_b_default(dynamic a, {dynamic b = 2}) → dynamic {
|
| + return a.+(b);
|
| +}
|
| +static method test_1_1(core::Function f, core::bool hasDefault) → dynamic {
|
| + dynamic result = f.call(40, 2);
|
| + if(!42.==(result))
|
| + throw "Unexpected result: ${result}";
|
| + self::test_1(f, hasDefault);
|
| +}
|
| +static method test_1_b(core::Function f, core::bool hasDefault) → dynamic {
|
| + dynamic result = f.call(40, b: 2);
|
| + if(!42.==(result))
|
| + throw "Unexpected result: ${result}";
|
| + self::test_1(f, hasDefault);
|
| +}
|
| +static method test_1(core::Function f, core::bool hasDefault) → dynamic {
|
| + dynamic result = 0;
|
| + core::bool threw = true;
|
| + try {
|
| + result = f.call(40);
|
| + threw = false;
|
| + }
|
| + on dynamic catch(dynamic _) {
|
| + }
|
| + if(hasDefault) {
|
| + if(threw)
|
| + throw "Unexpected exception.";
|
| + if(!42.==(result))
|
| + throw "Unexpected result: ${result}.";
|
| + }
|
| + else {
|
| + if(!threw)
|
| + throw "Expected exception missing.";
|
| + if(!0.==(result))
|
| + throw "Unexpected result: ${result}.";
|
| + }
|
| +}
|
| +static method main(dynamic arguments) → dynamic {
|
| + self::test_1_1(new self::Closure#f_1_1_no_default::•(), false);
|
| + self::test_1_1(new self::Closure#f_1_1_default::•(), true);
|
| + self::test_1_b(new self::Closure#f_1_b_no_default::•(), false);
|
| + self::test_1_b(new self::Closure#f_1_b_default::•(), true);
|
| +}
|
|
|