Remove InterfaceResolver.legacyMode

Change-Id: Icc4d51dd4d2ff35d2048f8190ca134919c56f6a0
Reviewed-on: https://dart-review.googlesource.com/c/87588
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
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 9ddb35a..64ee146 100644
--- a/pkg/front_end/lib/src/fasta/source/source_loader.dart
+++ b/pkg/front_end/lib/src/fasta/source/source_loader.dart
@@ -951,11 +951,8 @@
     /// might be subject to type inference, and records dependencies between
     /// them.
     typeInferenceEngine.prepareTopLevel(coreTypes, hierarchy);
-    interfaceResolver = new InterfaceResolver(
-        typeInferenceEngine,
-        typeInferenceEngine.typeSchemaEnvironment,
-        instrumentation,
-        target.legacyMode);
+    interfaceResolver = new InterfaceResolver(typeInferenceEngine,
+        typeInferenceEngine.typeSchemaEnvironment, instrumentation);
     for (LibraryBuilder library in builders.values) {
       if (library.loader == this) {
         Iterator<Declaration> iterator = library.iterator;
diff --git a/pkg/front_end/lib/src/fasta/type_inference/interface_resolver.dart b/pkg/front_end/lib/src/fasta/type_inference/interface_resolver.dart
index fba244b..b0f3d1e 100644
--- a/pkg/front_end/lib/src/fasta/type_inference/interface_resolver.dart
+++ b/pkg/front_end/lib/src/fasta/type_inference/interface_resolver.dart
@@ -257,7 +257,6 @@
   /// they would not be checked in an inherited implementation, a forwarding
   /// stub is introduced as a place to put the checks.
   Procedure _computeCovarianceFixes(Procedure interfaceMember) {
-    assert(!_interfaceResolver.legacyMode);
     var substitution =
         _interfaceResolver._substitutionFor(interfaceMember, enclosingClass);
     // We always create a forwarding stub when we've inherited a member from an
@@ -546,9 +545,7 @@
   /// Creates a forwarding stub for this node if necessary, and propagates
   /// covariance information.
   Procedure _finalize() {
-    return !_interfaceResolver.legacyMode
-        ? _computeCovarianceFixes(resolve())
-        : resolve();
+    return _computeCovarianceFixes(resolve());
   }
 
   /// Returns the [i]th element of [_candidates], finalizing it if necessary.
@@ -682,10 +679,8 @@
 
   final Instrumentation _instrumentation;
 
-  final bool legacyMode;
-
-  InterfaceResolver(this._typeInferenceEngine, this._typeEnvironment,
-      this._instrumentation, this.legacyMode);
+  InterfaceResolver(
+      this._typeInferenceEngine, this._typeEnvironment, this._instrumentation);
 
   /// Indicates whether the "prepare" phase of type inference is complete.
   bool get isTypeInferencePrepared =>
@@ -924,9 +919,7 @@
             return;
           }
         }
-        if (!legacyMode &&
-            member.enclosingClass == class_ &&
-            _requiresTypeInference(member)) {
+        if (member.enclosingClass == class_ && _requiresTypeInference(member)) {
           inferMethodType(library, class_, member, candidates, start + 1, end);
         }
         var forwardingNode = new ForwardingNode(
@@ -1067,7 +1060,7 @@
       if (resolution is Procedure &&
           resolution.isSyntheticForwarder &&
           identical(resolution.enclosingClass, class_)) {
-        if (!legacyMode) class_.addMember(resolution);
+        class_.addMember(resolution);
         _instrumentation?.record(
             class_.location.file,
             class_.fileOffset,
@@ -1128,10 +1121,10 @@
       Uri fileUri) {
     InferenceNode node;
     if (procedure.isAccessor && _requiresTypeInference(procedure)) {
-      if (!legacyMode && start < end) {
+      if (start < end) {
         node = new AccessorInferenceNode(
             this, procedure, candidates, start, end, library, fileUri);
-      } else if (!legacyMode && crossStart < crossEnd) {
+      } else if (crossStart < crossEnd) {
         node = new AccessorInferenceNode(this, procedure, candidates,
             crossStart, crossEnd, library, fileUri);
       } else if (procedure is SyntheticAccessor &&
diff --git a/pkg/front_end/test/fasta/type_inference/interface_resolver_test.dart b/pkg/front_end/test/fasta/type_inference/interface_resolver_test.dart
index 638bb34..d34cb01 100644
--- a/pkg/front_end/test/fasta/type_inference/interface_resolver_test.dart
+++ b/pkg/front_end/test/fasta/type_inference/interface_resolver_test.dart
@@ -52,7 +52,7 @@
 
   InterfaceResolver get interfaceResolver {
     return cachedInterfaceResolver ??=
-        new InterfaceResolver(null, typeEnvironment, null, false);
+        new InterfaceResolver(null, typeEnvironment, null);
   }
 
   InterfaceType get intType => coreTypes.intClass.rawType;