blob: 626d8af61dfaaafc230519ebccc218c7f288df48 [file] [log] [blame]
library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_getter.dart:5:7: Error: The non-abstract class 'ConcreteSuper' is missing implementations for these members:
// - ConcreteSuper.declaredAbstractExtendsAbstractGetter
// - ConcreteSuper.declaredConcreteExtendsAbstractGetter
// - ConcreteSuper.extendedAbstractGetter
// 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_getter.dart:16:11: Context: 'ConcreteSuper.declaredAbstractExtendsAbstractGetter' is defined here.
// int get declaredAbstractExtendsAbstractGetter;
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_getter.dart:14:11: Context: 'ConcreteSuper.declaredConcreteExtendsAbstractGetter' is defined here.
// int get declaredConcreteExtendsAbstractGetter;
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_getter.dart:8:11: Context: 'ConcreteSuper.extendedAbstractGetter' is defined here.
// int get extendedAbstractGetter;
// ^^^^^^^^^^^^^^^^^^^^^^
//
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_getter.dart:19:7: Error: The non-abstract class 'ConcreteClass' is missing implementations for these members:
// - ConcreteClass.declaredAbstractExtendsAbstractGetter
// - ConcreteClass.declaredAbstractGetter
// - ConcreteSuper.extendedAbstractGetter
// 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_getter.dart:30:11: Context: 'ConcreteClass.declaredAbstractExtendsAbstractGetter' is defined here.
// int get declaredAbstractExtendsAbstractGetter;
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_getter.dart:22:11: Context: 'ConcreteClass.declaredAbstractGetter' is defined here.
// int get declaredAbstractGetter;
// ^^^^^^^^^^^^^^^^^^^^^^
// pkg/front_end/testcases/nnbd_mixed/hierarchy/concrete_extends_getter.dart:8:11: Context: 'ConcreteSuper.extendedAbstractGetter' is defined here.
// int get extendedAbstractGetter;
// ^^^^^^^^^^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;
class ConcreteSuper extends core::Object {
synthetic constructor •() self::ConcreteSuper
: super core::Object::•()
;
get extendedConcreteGetter() core::int
return 0;
abstract get extendedAbstractGetter() core::int;
get declaredConcreteExtendsConcreteGetter() core::int
return 0;
get declaredAbstractExtendsConcreteGetter() core::int
return 0;
abstract get declaredConcreteExtendsAbstractGetter() core::int;
abstract get declaredAbstractExtendsAbstractGetter() core::int;
}
class ConcreteClass extends self::ConcreteSuper {
synthetic constructor •() self::ConcreteClass
: super self::ConcreteSuper::•()
;
get declaredConcreteGetter() core::int
return 0;
abstract get declaredAbstractGetter() core::int;
get declaredConcreteExtendsConcreteGetter() core::int
return 0;
abstract get declaredAbstractExtendsConcreteGetter() core::int;
get declaredConcreteExtendsAbstractGetter() core::int
return 0;
abstract get declaredAbstractExtendsAbstractGetter() core::int;
}
static method main() dynamic {}