library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/extension_types/simple_setter_resolution.dart:16:5: Error: The setter 'foo' isn't defined for the extension 'E'.
// Try correcting the name to the name of an existing setter, or defining a setter or field named 'foo'.
//   e.foo = 42; // Error.
//     ^^^
//
import self as self;
import "dart:core" as core;

class A extends core::Object {
  synthetic constructor •() → self::A
    : super core::Object::•()
    ;
  set foo(core::int value) → void {}
}
extension E on self::A {
  set bar = self::E|set#bar;
}
static method E|set#bar(lowered final self::A #this, core::int value) → void {}
static method test(self::A a, self::E e) → dynamic {
  a.{self::A::foo} = 42;
  self::E|set#bar(a, 42);
  invalid-expression "pkg/front_end/testcases/extension_types/simple_setter_resolution.dart:16:5: Error: The setter 'foo' isn't defined for the extension 'E'.
Try correcting the name to the name of an existing setter, or defining a setter or field named 'foo'.
  e.foo = 42; // Error.
    ^^^";
  self::E|set#bar(e, 42);
}
static method main() → dynamic {}
