blob: 2df220cd04c8d46112f4e3de6f65e2fb171f454e [file] [log] [blame]
library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_setter.dart:5:7: Error: The non-abstract class 'ConcreteSuper' is missing implementations for these members:
// - ConcreteSuper.declaredAbstractExtendsAbstractSetter=
// - ConcreteSuper.declaredConcreteExtendsAbstractSetter=
// - ConcreteSuper.extendedAbstractSetter=
// Try to either
// - provide an implementation,
// - inherit an implementation from a superclass or mixin,
// - mark the class as abstract, or
// - provide a 'noSuchMethod' implementation.
//
// class ConcreteSuper {
// ^^^^^^^^^^^^^
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_setter.dart:16:12: Context: 'ConcreteSuper.declaredAbstractExtendsAbstractSetter=' is defined here.
// void set declaredAbstractExtendsAbstractSetter(int value);
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_setter.dart:14:12: Context: 'ConcreteSuper.declaredConcreteExtendsAbstractSetter=' is defined here.
// void set declaredConcreteExtendsAbstractSetter(int value);
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_setter.dart:8:12: Context: 'ConcreteSuper.extendedAbstractSetter=' is defined here.
// void set extendedAbstractSetter(int value);
// ^^^^^^^^^^^^^^^^^^^^^^
//
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_setter.dart:19:7: Error: The non-abstract class 'ConcreteClass' is missing implementations for these members:
// - ConcreteClass.declaredAbstractExtendsAbstractSetter=
// - ConcreteClass.declaredAbstractSetter=
// - ConcreteSuper.extendedAbstractSetter=
// Try to either
// - provide an implementation,
// - inherit an implementation from a superclass or mixin,
// - mark the class as abstract, or
// - provide a 'noSuchMethod' implementation.
//
// class ConcreteClass extends ConcreteSuper {
// ^^^^^^^^^^^^^
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_setter.dart:30:12: Context: 'ConcreteClass.declaredAbstractExtendsAbstractSetter=' is defined here.
// void set declaredAbstractExtendsAbstractSetter(int value);
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_setter.dart:22:12: Context: 'ConcreteClass.declaredAbstractSetter=' is defined here.
// void set declaredAbstractSetter(int value);
// ^^^^^^^^^^^^^^^^^^^^^^
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_setter.dart:8:12: Context: 'ConcreteSuper.extendedAbstractSetter=' is defined here.
// void set extendedAbstractSetter(int value);
// ^^^^^^^^^^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;
class ConcreteSuper extends core::Object {
synthetic constructor •() self::ConcreteSuper
: super core::Object::•()
;
set extendedConcreteSetter(core::int value) void {}
abstract set extendedAbstractSetter(core::int value) void;
set declaredConcreteExtendsConcreteSetter(core::int value) void {}
set declaredAbstractExtendsConcreteSetter(core::int value) void {}
abstract set declaredConcreteExtendsAbstractSetter(core::int value) void;
abstract set declaredAbstractExtendsAbstractSetter(core::int value) void;
}
class ConcreteClass extends self::ConcreteSuper {
synthetic constructor •() self::ConcreteClass
: super self::ConcreteSuper::•()
;
set declaredConcreteSetter(core::int value) void {}
abstract set declaredAbstractSetter(core::int value) void;
set declaredConcreteExtendsConcreteSetter(core::int value) void {}
abstract set declaredAbstractExtendsConcreteSetter(core::int value) void;
set declaredConcreteExtendsAbstractSetter(core::int value) void {}
abstract set declaredAbstractExtendsAbstractSetter(core::int value) void;
}
static method main() dynamic {}