blob: 80d58c8d3faa8fa482221c6f6f25c2fbb8eaafa0 [file] [log] [blame]
library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/extension_types/simple_operator_resolution.dart:23:5: Error: The operator '*' isn't defined for the extension 'E'.
// Try correcting the operator to an existing operator, or defining a '*' operator.
// e * "foobar"; // Error.
// ^
//
// pkg/front_end/testcases/extension_types/simple_operator_resolution.dart:24:4: Error: The operator '[]' isn't defined for the extension 'E'.
// Try correcting the operator to an existing operator, or defining a '[]' operator.
// e[0]; // Error.
// ^
//
// pkg/front_end/testcases/extension_types/simple_operator_resolution.dart:25:4: Error: The operator '[]=' isn't defined for the extension 'E'.
// Try correcting the operator to an existing operator, or defining a '[]=' operator.
// e[0] = "foobar"; // Error.
// ^
//
// pkg/front_end/testcases/extension_types/simple_operator_resolution.dart:26:3: Error: The operator 'unary-' isn't defined for the extension 'E'.
// Try correcting the operator to an existing operator, or defining a 'unary-' operator.
// -e; // Error.
// ^
//
import self as self;
import "dart:core" as core;
class A extends core::Object {
synthetic constructor •() self::A
: super core::Object::•()
;
operator *(dynamic other) dynamic
return 42;
operator [](core::int index) dynamic
return 42;
operator []=(core::int index, dynamic value) void {}
operator unary-() dynamic
return 42;
}
extension E on self::A {
operator + = self::E|+;
}
static method E|+(lowered final self::A #this, dynamic other) → dynamic
return 42;
static method test(self::A a, self::E e) dynamic {
a.{self::A::*}("foobar");
a.{self::A::[]}(0);
a.{self::A::[]=}(0, "foobar");
a.{self::A::unary-}();
self::E|+(a, "foobar");
invalid-expression "pkg/front_end/testcases/extension_types/simple_operator_resolution.dart:23:5: Error: The operator '*' isn't defined for the extension 'E'.
Try correcting the operator to an existing operator, or defining a '*' operator.
e * \"foobar\"; // Error.
^";
invalid-expression "pkg/front_end/testcases/extension_types/simple_operator_resolution.dart:24:4: Error: The operator '[]' isn't defined for the extension 'E'.
Try correcting the operator to an existing operator, or defining a '[]' operator.
e[0]; // Error.
^";
invalid-expression "pkg/front_end/testcases/extension_types/simple_operator_resolution.dart:25:4: Error: The operator '[]=' isn't defined for the extension 'E'.
Try correcting the operator to an existing operator, or defining a '[]=' operator.
e[0] = \"foobar\"; // Error.
^";
invalid-expression "pkg/front_end/testcases/extension_types/simple_operator_resolution.dart:26:3: Error: The operator 'unary-' isn't defined for the extension 'E'.
Try correcting the operator to an existing operator, or defining a 'unary-' operator.
-e; // Error.
^";
self::E|+(e, "foobar");
}
static method main() dynamic {}