| // Errors: |
| // |
| // pkg/front_end/testcases/inference/infer_method_missing_params.dart:25:79: Error: Can't infer the type of 'y': overridden members must all have the same type. |
| // Specify the type explicitly. |
| // /*@topType=dynamic*/ /*@error=CantInferTypeDueToInconsistentOverrides*/ y); |
| // ^ |
| // |
| // pkg/front_end/testcases/inference/infer_method_missing_params.dart:29:80: Error: Can't infer the type of 'y': overridden members must all have the same type. |
| // Specify the type explicitly. |
| // {/*@topType=dynamic*/ /*@error=CantInferTypeDueToInconsistentOverrides*/ y}); |
| // ^ |
| // |
| // pkg/front_end/testcases/inference/infer_method_missing_params.dart:27:80: Error: Can't infer the type of 'y': overridden members must all have the same type. |
| // Specify the type explicitly. |
| // [/*@topType=dynamic*/ /*@error=CantInferTypeDueToInconsistentOverrides*/ y]); |
| // ^ |
| // |
| // pkg/front_end/testcases/inference/infer_method_missing_params.dart:23:61: Error: The method 'C::f' has more required arguments than those of overridden method 'B::f'. |
| // /*@topType=int*/ /*@error=OverrideMoreRequiredArguments*/ f( |
| // ^ |
| |
| library test; |
| import self as self; |
| import "dart:core" as core; |
| |
| abstract class A extends core::Object { |
| synthetic constructor •() → void |
| : super core::Object::•() |
| ; |
| abstract method f(core::int x, core::int y) → core::int; |
| abstract method g(core::int x, [core::int y = null]) → core::int; |
| abstract method h(core::int x, {core::int y = null}) → core::int; |
| } |
| abstract class B extends core::Object { |
| synthetic constructor •() → void |
| : super core::Object::•() |
| ; |
| abstract method f(core::int x) → core::int; |
| abstract method g(core::int x) → core::int; |
| abstract method h(core::int x) → core::int; |
| } |
| abstract class C extends core::Object implements self::A, self::B { |
| synthetic constructor •() → void |
| : super core::Object::•() |
| ; |
| abstract method f(core::int x, dynamic y) → core::int; |
| abstract method g(core::int x, [dynamic y = null]) → core::int; |
| abstract method h(core::int x, {dynamic y = null}) → core::int; |
| } |
| static method main() → dynamic {} |