blob: 1622d94caf0a67adeb98856850bfc1078f1d95c5 [file] [log] [blame]
library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:15:13: Error: Too many type arguments: 1 allowed, but 2 found.
// Try removing the extra type arguments.
// var d = id<int, String>; // error - too many args
// ^
//
// pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:16:17: Error: Too few type arguments: 2 required, 1 given.
// Try adding the missing type arguments.
// var e = method<int>; // error - too few args
// ^
//
// pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:17:12: Error: The static type of the explicit instantiation operand must be a generic function type but is 'int'.
// Try changing the operand or remove the type arguments.
// var f = 0<int>; // error - non-function type operand
// ^
//
// pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:18:15: Error: The static type of the explicit instantiation operand must be a generic function type but is 'dynamic Function()'.
// Try changing the operand or remove the type arguments.
// var g = main<int>; // error - non-generic function type operand
// ^
//
// pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:19:24: Error: Type argument 'String' doesn't conform to the bound 'num' of the type variable 'X' on 'X Function<X extends num>(X)'.
// Try changing type arguments so that they conform to the bounds.
// var h = boundedMethod<String>; // error - invalid bound
// ^
//
// pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:25:11: Error: Too many type arguments: 1 allowed, but 2 found.
// Try removing the extra type arguments.
// var d = id<int, String>; // error - too many args
// ^
//
// pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:26:15: Error: Too few type arguments: 2 required, 1 given.
// Try adding the missing type arguments.
// var e = method<int>; // error - too few args
// ^
//
// pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:27:10: Error: The static type of the explicit instantiation operand must be a generic function type but is 'int'.
// Try changing the operand or remove the type arguments.
// var f = 0<int>; // error - non-function type operand
// ^
//
// pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:28:13: Error: The static type of the explicit instantiation operand must be a generic function type but is 'dynamic Function()'.
// Try changing the operand or remove the type arguments.
// var g = main<int>; // error - non-generic function type operand
// ^
//
// pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:29:22: Error: Type argument 'String' doesn't conform to the bound 'num' of the type variable 'X' on 'X Function<X extends num>(X)'.
// Try changing type arguments so that they conform to the bounds.
// var h = boundedMethod<String>; // error - invalid bound
// ^
//
import self as self;
import "dart:core" as core;
static field <X extends core::Object? = dynamic>(X%) X% a = #C1;
static field (core::int) core::int b = self::a<core::int>;
static field (core::int) core::int c = #C2;
static field invalid-type d = invalid-expression "pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:25:11: Error: Too many type arguments: 1 allowed, but 2 found.
Try removing the extra type arguments.
var d = id<int, String>; // error - too many args
^";
static field invalid-type e = invalid-expression "pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:26:15: Error: Too few type arguments: 2 required, 1 given.
Try adding the missing type arguments.
var e = method<int>; // error - too few args
^";
static field invalid-type f = invalid-expression "pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:27:10: Error: The static type of the explicit instantiation operand must be a generic function type but is 'int'.
Try changing the operand or remove the type arguments.
var f = 0<int>; // error - non-function type operand
^";
static field invalid-type g = invalid-expression "pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:28:13: Error: The static type of the explicit instantiation operand must be a generic function type but is 'dynamic Function()'.
Try changing the operand or remove the type arguments.
var g = main<int>; // error - non-generic function type operand
^";
static field (core::String) core::String h = #C4;
static method id<X extends core::Object? = dynamic>(self::id::X% x) self::id::X%
return x;
static method method<X extends core::Object? = dynamic, Y extends core::Object? = dynamic>() void {}
static method boundedMethod<X extends core::num>(self::boundedMethod::X x) self::boundedMethod::X
return x;
static method test() dynamic {
<X extends core::Object? = dynamic>(X%) X% a = #C1;
(core::int) core::int b = a<core::int>;
(core::int) core::int c = #C2;
invalid-type d = invalid-expression "pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:15:13: Error: Too many type arguments: 1 allowed, but 2 found.
Try removing the extra type arguments.
var d = id<int, String>; // error - too many args
^";
invalid-type e = invalid-expression "pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:16:17: Error: Too few type arguments: 2 required, 1 given.
Try adding the missing type arguments.
var e = method<int>; // error - too few args
^";
invalid-type f = invalid-expression "pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:17:12: Error: The static type of the explicit instantiation operand must be a generic function type but is 'int'.
Try changing the operand or remove the type arguments.
var f = 0<int>; // error - non-function type operand
^";
invalid-type g = invalid-expression "pkg/front_end/testcases/constructor_tearoffs/explicit_instantiation_errors.dart:18:15: Error: The static type of the explicit instantiation operand must be a generic function type but is 'dynamic Function()'.
Try changing the operand or remove the type arguments.
var g = main<int>; // error - non-generic function type operand
^";
(core::String) core::String h = #C4;
}
static method main() dynamic {}
constants {
#C1 = static-tearoff self::id
#C2 = instantiation #C1 <core::int>
#C3 = static-tearoff self::boundedMethod
#C4 = instantiation #C3 <core::String>
}