| library test; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:28:73: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'int Function(double, int)'. |
| // Try changing the type of the parameter, or casting the argument to 'int Function(double, int)'. |
| // /*error:COULD_NOT_INFER,error:ARGUMENT_TYPE_NOT_ASSIGNABLE*/ math.max); |
| // ^ |
| // |
| // pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:30:73: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'double Function(int, double)'. |
| // Try changing the type of the parameter, or casting the argument to 'double Function(int, double)'. |
| // /*error:COULD_NOT_INFER,error:ARGUMENT_TYPE_NOT_ASSIGNABLE*/ math.max); |
| // ^ |
| // |
| // pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:46:72: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'int Function(double, int)'. |
| // Try changing the type of the parameter, or casting the argument to 'int Function(double, int)'. |
| // takeIDI(/*error:COULD_NOT_INFER,error:ARGUMENT_TYPE_NOT_ASSIGNABLE*/ min); |
| // ^ |
| // |
| // pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:47:72: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'double Function(int, double)'. |
| // Try changing the type of the parameter, or casting the argument to 'double Function(int, double)'. |
| // takeDID(/*error:COULD_NOT_INFER,error:ARGUMENT_TYPE_NOT_ASSIGNABLE*/ min); |
| // ^ |
| // |
| // pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:86:30: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'int Function(double, int)'. |
| // Try changing the type of the parameter, or casting the argument to 'int Function(double, int)'. |
| // . /*@target=C::m*/ m); |
| // ^ |
| // |
| // pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:89:30: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'double Function(int, double)'. |
| // Try changing the type of the parameter, or casting the argument to 'double Function(int, double)'. |
| // . /*@target=C::m*/ m); |
| // ^ |
| // |
| import self as self; |
| import "dart:core" as core; |
| import "dart:math" as math; |
| |
| import "dart:math" as math; |
| import "dart:math"; |
| |
| class C extends core::Object { |
| synthetic constructor •() → self::C |
| : super core::Object::•() |
| ; |
| method m<T extends core::num = core::num>(self::C::m::T x, self::C::m::T y) → self::C::m::T |
| return null; |
| } |
| static method test() → dynamic { |
| self::takeIII(math::max<core::int>); |
| self::takeDDD(math::max<core::double>); |
| self::takeNNN(math::max<core::num>); |
| self::takeIDN(math::max<core::num>); |
| self::takeDIN(math::max<core::num>); |
| self::takeIIN(math::max<core::int>); |
| self::takeDDN(math::max<core::double>); |
| self::takeIIO(math::max<core::int>); |
| self::takeDDO(math::max<core::double>); |
| self::takeOOI((math::max<core::Object>) as{TypeError} (core::Object, core::Object) → core::int); |
| self::takeIDI(let final<BottomType> #t1 = invalid-expression "pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:28:73: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'int Function(double, int)'. |
| Try changing the type of the parameter, or casting the argument to 'int Function(double, int)'. |
| /*error:COULD_NOT_INFER,error:ARGUMENT_TYPE_NOT_ASSIGNABLE*/ math.max); |
| ^" in (math::max<core::num>) as{TypeError} (core::double, core::int) → core::int); |
| self::takeDID(let final<BottomType> #t2 = invalid-expression "pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:30:73: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'double Function(int, double)'. |
| Try changing the type of the parameter, or casting the argument to 'double Function(int, double)'. |
| /*error:COULD_NOT_INFER,error:ARGUMENT_TYPE_NOT_ASSIGNABLE*/ math.max); |
| ^" in (math::max<core::num>) as{TypeError} (core::int, core::double) → core::double); |
| self::takeOON((math::max<core::Object>) as{TypeError} (core::Object, core::Object) → core::num); |
| self::takeOOO((math::max<core::Object>) as{TypeError} (core::Object, core::Object) → core::num); |
| self::takeIII(math::min<core::int>); |
| self::takeDDD(math::min<core::double>); |
| self::takeNNN(math::min<core::num>); |
| self::takeIDN(math::min<core::num>); |
| self::takeDIN(math::min<core::num>); |
| self::takeIIN(math::min<core::int>); |
| self::takeDDN(math::min<core::double>); |
| self::takeIIO(math::min<core::int>); |
| self::takeDDO(math::min<core::double>); |
| self::takeOOI((math::min<core::Object>) as{TypeError} (core::Object, core::Object) → core::int); |
| self::takeIDI(let final<BottomType> #t3 = invalid-expression "pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:46:72: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'int Function(double, int)'. |
| Try changing the type of the parameter, or casting the argument to 'int Function(double, int)'. |
| takeIDI(/*error:COULD_NOT_INFER,error:ARGUMENT_TYPE_NOT_ASSIGNABLE*/ min); |
| ^" in (math::min<core::num>) as{TypeError} (core::double, core::int) → core::int); |
| self::takeDID(let final<BottomType> #t4 = invalid-expression "pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:47:72: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'double Function(int, double)'. |
| Try changing the type of the parameter, or casting the argument to 'double Function(int, double)'. |
| takeDID(/*error:COULD_NOT_INFER,error:ARGUMENT_TYPE_NOT_ASSIGNABLE*/ min); |
| ^" in (math::min<core::num>) as{TypeError} (core::int, core::double) → core::double); |
| self::takeOON((math::min<core::Object>) as{TypeError} (core::Object, core::Object) → core::num); |
| self::takeOOO((math::min<core::Object>) as{TypeError} (core::Object, core::Object) → core::num); |
| self::takeIII(new self::C::•().{self::C::m}<core::int>); |
| self::takeDDD(new self::C::•().{self::C::m}<core::double>); |
| self::takeNNN(new self::C::•().{self::C::m}<core::num>); |
| self::takeIDN(new self::C::•().{self::C::m}<core::num>); |
| self::takeDIN(new self::C::•().{self::C::m}<core::num>); |
| self::takeIIN(new self::C::•().{self::C::m}<core::int>); |
| self::takeDDN(new self::C::•().{self::C::m}<core::double>); |
| self::takeIIO(new self::C::•().{self::C::m}<core::int>); |
| self::takeDDO(new self::C::•().{self::C::m}<core::double>); |
| self::takeOON((new self::C::•().{self::C::m}<core::Object>) as{TypeError} (core::Object, core::Object) → core::num); |
| self::takeOOO((new self::C::•().{self::C::m}<core::Object>) as{TypeError} (core::Object, core::Object) → core::num); |
| self::takeOOI((new self::C::•().{self::C::m}<core::Object>) as{TypeError} (core::Object, core::Object) → core::int); |
| self::takeIDI(let final<BottomType> #t5 = invalid-expression "pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:86:30: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'int Function(double, int)'. |
| Try changing the type of the parameter, or casting the argument to 'int Function(double, int)'. |
| . /*@target=C::m*/ m); |
| ^" in (new self::C::•().{self::C::m}<core::num>) as{TypeError} (core::double, core::int) → core::int); |
| self::takeDID(let final<BottomType> #t6 = invalid-expression "pkg/front_end/testcases/inference/generic_methods_infer_generic_instantiation.dart:89:30: Error: The argument type 'num Function(num, num)' can't be assigned to the parameter type 'double Function(int, double)'. |
| Try changing the type of the parameter, or casting the argument to 'double Function(int, double)'. |
| . /*@target=C::m*/ m); |
| ^" in (new self::C::•().{self::C::m}<core::num>) as{TypeError} (core::int, core::double) → core::double); |
| } |
| static method takeIII((core::int, core::int) → core::int fn) → void {} |
| static method takeDDD((core::double, core::double) → core::double fn) → void {} |
| static method takeIDI((core::double, core::int) → core::int fn) → void {} |
| static method takeDID((core::int, core::double) → core::double fn) → void {} |
| static method takeIDN((core::double, core::int) → core::num fn) → void {} |
| static method takeDIN((core::int, core::double) → core::num fn) → void {} |
| static method takeIIN((core::int, core::int) → core::num fn) → void {} |
| static method takeDDN((core::double, core::double) → core::num fn) → void {} |
| static method takeNNN((core::num, core::num) → core::num fn) → void {} |
| static method takeOON((core::Object, core::Object) → core::num fn) → void {} |
| static method takeOOO((core::Object, core::Object) → core::num fn) → void {} |
| static method takeOOI((core::Object, core::Object) → core::int fn) → void {} |
| static method takeIIO((core::int, core::int) → core::Object fn) → void {} |
| static method takeDDO((core::double, core::double) → core::Object fn) → void {} |
| static method main() → dynamic {} |