Index: pkg/front_end/lib/src/fasta/source/source_loader.dart |
diff --git a/pkg/front_end/lib/src/fasta/source/source_loader.dart b/pkg/front_end/lib/src/fasta/source/source_loader.dart |
index 1fd040e8fd65bab027d91cfd29c914405578b160..1764e5b2bb3e2c31bac01a94fdfcff617e325faa 100644 |
--- a/pkg/front_end/lib/src/fasta/source/source_loader.dart |
+++ b/pkg/front_end/lib/src/fasta/source/source_loader.dart |
@@ -339,14 +339,6 @@ class SourceLoader<L> extends Loader<L> { |
return output; |
} |
- /// Whether [library] is allowed to define classes that extend or implement |
- /// restricted types, such as `bool`, `int`, `double`, `num`, and `String`. By |
- /// default this is only allowed within the implementation of `dart:core`, but |
- /// some target implementations may need to override this to allow doing this |
- /// in other internal platform libraries. |
- bool canImplementRestrictedTypes(LibraryBuilder library) => |
- library == coreLibrary; |
- |
void checkSemantics() { |
List<ClassBuilder> allClasses = target.collectAllClasses(); |
Iterable<ClassBuilder> candidates = cyclicCandidates(allClasses); |
@@ -395,7 +387,7 @@ class SourceLoader<L> extends Loader<L> { |
cls.charOffset, |
"'${supertype.name}' is an enum and can't be extended or " |
"implemented."); |
- } else if (!canImplementRestrictedTypes(cls.library) && |
+ } else if (!cls.library.mayImplementRestrictedTypes && |
blackListedClasses.contains(supertype)) { |
cls.addCompileTimeError( |
cls.charOffset, |