blob: 1738d374a7c1090c4c7b98ecefaaf36fc1ff91fe [file] [log] [blame]
library test;
//
// Problems in library:
//
// pkg/front_end/testcases/inference/infer_method_missing_params.dart:23:61: Warning: The method 'C.f' has more required arguments than those of overridden method 'B.f'.
// /*@topType=int*/ /*@error=OverrideMoreRequiredArguments*/ f(
// ^
// pkg/front_end/testcases/inference/infer_method_missing_params.dart:17:7: Context: This is the overridden method ('f').
// int f(int x);
// ^
//
import self as self;
import "dart:core" as core;
abstract class A extends core::Object {
synthetic constructor •() self::A
: 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 •() self::B
: 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 •() self::C
: super core::Object::•()
;
abstract method f(dynamic x, dynamic y) dynamic;
abstract method g(dynamic x, [dynamic y = null]) dynamic;
abstract method h(dynamic x, {dynamic y = null}) dynamic;
}
static method main() dynamic {}