| // Formatted problems: |
| // |
| // pkg/front_end/testcases/inference/do_not_infer_overridden_fields_that_explicitly_say_dynamic_infer.dart:13:49: Error: The return type of the method 'B::x' is dynamic, which does not match the return type of the overridden method (dart.core::int). |
| // Change to a subtype of dart.core::int. |
| // /*error:INVALID_METHOD_OVERRIDE*/ dynamic get x => 3; |
| // ^ |
| // pkg/front_end/testcases/inference/do_not_infer_overridden_fields_that_explicitly_say_dynamic_infer.dart:9:13: Error: This is the overridden method ('x'). |
| // final int x = 2; |
| // ^ |
| |
| // Unhandled errors: |
| // |
| // pkg/front_end/testcases/inference/do_not_infer_overridden_fields_that_explicitly_say_dynamic_infer.dart:13:49: Error: The return type of the method 'B::x' is dynamic, which does not match the return type of the overridden method (dart.core::int). |
| // Change to a subtype of dart.core::int. |
| // /*error:INVALID_METHOD_OVERRIDE*/ dynamic get x => 3; |
| // ^ |
| |
| library test; |
| import self as self; |
| import "dart:core" as core; |
| |
| class A extends core::Object { |
| final field core::int x = 2; |
| synthetic constructor •() → void |
| : super core::Object::•() |
| ; |
| } |
| class B extends core::Object implements self::A { |
| synthetic constructor •() → void |
| : super core::Object::•() |
| ; |
| get x() → dynamic |
| return 3; |
| } |
| static method foo() → dynamic { |
| core::String y = new self::B::•().{self::B::x} as{TypeError} core::String; |
| core::int z = new self::B::•().{self::B::x} as{TypeError} core::int; |
| } |
| static method main() → dynamic { |
| self::foo(); |
| } |