blob: 282f5fce39e2c8785deb1ced5de415c04e575bb6 [file] [log] [blame]
library;
//
// Problems in library:
//
// pkg/front_end/testcases/class_modifiers/issue52115/main.dart:10:16: Error: The class 'LinkedList' can't be implemented outside of its library because it's a base class.
// implements LegacyImplementBaseCore<E> {}
// ^
// sdk/lib/collection/linked_list.dart:*: Context: The type 'LegacyImplementBaseCore' is a subtype of 'LinkedList', and 'LinkedList' is defined here.
// base class LinkedList<E extends LinkedListEntry<E>> extends Iterable<E> {
// ^
//
// pkg/front_end/testcases/class_modifiers/issue52115/main.dart:13:45: Error: The class 'MapEntry' can't be implemented outside of its library because it's a final class.
// final class LegacyImplementFinal implements LegacyImplementFinalCore {
// ^
// sdk/lib/core/map.dart:*: Context: The type 'LegacyImplementFinalCore' is a subtype of 'MapEntry', and 'MapEntry' is defined here.
// final class MapEntry<K, V> {
// ^
//
// pkg/front_end/testcases/class_modifiers/issue52115/main.dart:20:16: Error: The type 'LegacyImplementBaseNoModifier' must be 'base', 'final' or 'sealed' because the supertype 'LinkedList' is 'base'.
// Try adding 'base', 'final', or 'sealed' to the type.
// abstract class LegacyImplementBaseNoModifier<E extends LinkedListEntry<E>>
// ^
//
// pkg/front_end/testcases/class_modifiers/issue52115/main.dart:21:16: Error: The class 'LinkedList' can't be implemented outside of its library because it's a base class.
// implements LegacyImplementBaseCore<E> {}
// ^
// sdk/lib/collection/linked_list.dart:*: Context: The type 'LegacyImplementBaseCore' is a subtype of 'LinkedList', and 'LinkedList' is defined here.
// base class LinkedList<E extends LinkedListEntry<E>> extends Iterable<E> {
// ^
//
// pkg/front_end/testcases/class_modifiers/issue52115/main.dart:24:49: Error: The class 'MapEntry' can't be implemented outside of its library because it's a final class.
// class LegacyImplementFinalNoModifier implements LegacyImplementFinalCore {
// ^
// sdk/lib/core/map.dart:*: Context: The type 'LegacyImplementFinalCore' is a subtype of 'MapEntry', and 'MapEntry' is defined here.
// final class MapEntry<K, V> {
// ^
//
import self as self;
import "dart:collection" as col;
import "dart:core" as core;
import "main_lib.dart" as mai;
import "dart:collection";
import "org-dartlang-testcase:///main_lib.dart";
abstract base class LegacyImplementBase<E extends col::LinkedListEntry<self::LegacyImplementBase::E> = col::LinkedListEntry<dynamic>> extends core::Object implements mai::LegacyImplementBaseCore<self::LegacyImplementBase::E> {
synthetic constructor •() self::LegacyImplementBase<self::LegacyImplementBase::E>
;
}
final class LegacyImplementFinal extends core::Object implements mai::LegacyImplementFinalCore {
synthetic constructor •() self::LegacyImplementFinal
;
get key() core::int
;
get value() core::int
;
method toString() core::String
;
}
abstract class LegacyImplementBaseNoModifier<E extends col::LinkedListEntry<self::LegacyImplementBaseNoModifier::E> = col::LinkedListEntry<dynamic>> extends core::Object implements mai::LegacyImplementBaseCore<self::LegacyImplementBaseNoModifier::E> {
synthetic constructor •() self::LegacyImplementBaseNoModifier<self::LegacyImplementBaseNoModifier::E>
;
}
class LegacyImplementFinalNoModifier extends core::Object implements mai::LegacyImplementFinalCore {
synthetic constructor •() self::LegacyImplementFinalNoModifier
;
get key() core::int
;
get value() core::int
;
method toString() core::String
;
}
library;
import self as mai;
import "dart:collection" as col;
import "dart:core" as core;
import "dart:collection";
abstract class LegacyImplementBaseCore<E extends col::LinkedListEntry<mai::LegacyImplementBaseCore::E> = col::LinkedListEntry<dynamic>> extends core::Object implements col::LinkedList<mai::LegacyImplementBaseCore::E> {
synthetic constructor •() mai::LegacyImplementBaseCore<mai::LegacyImplementBaseCore::E>
;
}
class LegacyImplementFinalCore extends core::Object implements core::MapEntry<core::int, core::int> {
synthetic constructor •() mai::LegacyImplementFinalCore
;
get key() core::int
;
get value() core::int
;
method toString() core::String
;
}