[cfe] Remove Env.isNonNullableByDefault

+ a few other references of 'isNonNullableByDefault'

Change-Id: Ifcd6bf5c2cc5dbbca7dda1576248fc4cd59eed5e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/369023
Reviewed-by: Chloe Stefantsova <cstefantsova@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
diff --git a/pkg/front_end/test/fasta/type_inference/type_constraint_gatherer_nnbd_test.dart b/pkg/front_end/test/fasta/type_inference/type_constraint_gatherer_nnbd_test.dart
index 148cd96..2e13af2 100644
--- a/pkg/front_end/test/fasta/type_inference/type_constraint_gatherer_nnbd_test.dart
+++ b/pkg/front_end/test/fasta/type_inference/type_constraint_gatherer_nnbd_test.dart
@@ -43,7 +43,7 @@
   Library get testLibrary => _testLibrary;
 
   void parseTestLibrary(String testLibraryText) {
-    env = new Env(testLibraryText, isNonNullableByDefault: true);
+    env = new Env(testLibraryText);
     assert(
         env.component.libraries.length == 2,
         "The tests are supposed to have exactly two libraries: "
diff --git a/pkg/front_end/test/fasta/type_inference/type_constraint_gatherer_test.dart b/pkg/front_end/test/fasta/type_inference/type_constraint_gatherer_test.dart
index 9dff898..d287a0b 100644
--- a/pkg/front_end/test/fasta/type_inference/type_constraint_gatherer_test.dart
+++ b/pkg/front_end/test/fasta/type_inference/type_constraint_gatherer_test.dart
@@ -43,7 +43,7 @@
   Library get testLibrary => _testLibrary;
 
   void parseTestLibrary(String testLibraryText) {
-    env = new Env(testLibraryText, isNonNullableByDefault: false);
+    env = new Env(testLibraryText);
     assert(
         env.component.libraries.length == 2,
         "The tests are supposed to have exactly two libraries: "
diff --git a/pkg/front_end/test/fasta/type_inference/type_schema_elimination_nnbd_test.dart b/pkg/front_end/test/fasta/type_inference/type_schema_elimination_nnbd_test.dart
index 7abe586..254a1e0 100644
--- a/pkg/front_end/test/fasta/type_inference/type_schema_elimination_nnbd_test.dart
+++ b/pkg/front_end/test/fasta/type_inference/type_schema_elimination_nnbd_test.dart
@@ -18,7 +18,7 @@
 
 @reflectiveTest
 class TypeSchemaEliminationTest {
-  final Env env = new Env("", isNonNullableByDefault: true);
+  final Env env = new Env("");
   final Map<String, DartType Function()> additionalTypes = {
     "UNKNOWN": () => new UnknownType()
   };
diff --git a/pkg/front_end/test/fasta/type_inference/type_schema_elimination_test.dart b/pkg/front_end/test/fasta/type_inference/type_schema_elimination_test.dart
index 49f3b77..b311699 100644
--- a/pkg/front_end/test/fasta/type_inference/type_schema_elimination_test.dart
+++ b/pkg/front_end/test/fasta/type_inference/type_schema_elimination_test.dart
@@ -18,7 +18,7 @@
 
 @reflectiveTest
 class TypeSchemaEliminationTest {
-  final Env env = new Env("", isNonNullableByDefault: false);
+  final Env env = new Env("");
   final Map<String, DartType Function()> additionalTypes = {
     "UNKNOWN": () => new UnknownType()
   };
diff --git a/pkg/front_end/test/fasta/type_inference/type_schema_environment_test_base.dart b/pkg/front_end/test/fasta/type_inference/type_schema_environment_test_base.dart
index 1ccc2ae..42d534b 100644
--- a/pkg/front_end/test/fasta/type_inference/type_schema_environment_test_base.dart
+++ b/pkg/front_end/test/fasta/type_inference/type_schema_environment_test_base.dart
@@ -34,8 +34,7 @@
   late final OperationsCfe _operations;
 
   void parseTestLibrary(String testLibraryText) {
-    typeParserEnvironment =
-        new Env(testLibraryText, isNonNullableByDefault: true);
+    typeParserEnvironment = new Env(testLibraryText);
     typeSchemaEnvironment = new TypeSchemaEnvironment(
         coreTypes, new ClassHierarchy(component, coreTypes));
     assert(
diff --git a/pkg/front_end/test/fasta/types/legacy_upper_bound_helper.dart b/pkg/front_end/test/fasta/types/legacy_upper_bound_helper.dart
index efad1cd..d3c2d67 100644
--- a/pkg/front_end/test/fasta/types/legacy_upper_bound_helper.dart
+++ b/pkg/front_end/test/fasta/types/legacy_upper_bound_helper.dart
@@ -18,7 +18,7 @@
   late Library testLibrary;
 
   Future<void> parseComponent(String source) {
-    env = new parser.Env(source, isNonNullableByDefault: true);
+    env = new parser.Env(source);
     assert(
         env.component.libraries.length == 2,
         "The test component is expected to have exactly two libraries: "
diff --git a/pkg/front_end/testcases/constructor_tearoffs/call_instantiation.dart.strong.transformed.expect b/pkg/front_end/testcases/constructor_tearoffs/call_instantiation.dart.strong.transformed.expect
deleted file mode 100644
index 4c7d363..0000000
--- a/pkg/front_end/testcases/constructor_tearoffs/call_instantiation.dart.strong.transformed.expect
+++ /dev/null
@@ -1,22 +0,0 @@
-library /*isNonNullableByDefault*/;
-//
-// Problems in library:
-//
-// pkg/front_end/testcases/constructor_tearoffs/call_instantiation.dart:7:33: Error: A value of type 'T Function<T>(T)' can't be assigned to a variable of type 'int Function(int)'.
-// int Function(int) f = funcValue.call; // Disallowed!
-//                                 ^
-//
-import self as self;
-import "dart:core" as core;
-
-static field <T extends core::Object? = dynamic>(T%) → T% funcValue = #C1;
-static field (core::int) → core::int f = invalid-expression "pkg/front_end/testcases/constructor_tearoffs/call_instantiation.dart:7:33: Error: A value of type 'T Function<T>(T)' can't be assigned to a variable of type 'int Function(int)'.
-int Function(int) f = funcValue.call; // Disallowed!
-                                ^" in self::funcValue.call as{TypeError,ForNonNullableByDefault} (core::int) → core::int;
-static method func<T extends core::Object? = dynamic>(self::func::T% value) → self::func::T%
-  return value;
-static method main() → dynamic {}
-
-constants  {
-  #C1 = static-tearoff self::func
-}
diff --git a/pkg/front_end/testcases/inference/mixin_inference_outwards_3.dart.strong.transformed.expect b/pkg/front_end/testcases/inference/mixin_inference_outwards_3.dart.strong.transformed.expect
deleted file mode 100644
index 286fbcb..0000000
--- a/pkg/front_end/testcases/inference/mixin_inference_outwards_3.dart.strong.transformed.expect
+++ /dev/null
@@ -1,43 +0,0 @@
-library /*isNonNullableByDefault*/;
-//
-// Problems in library:
-//
-// pkg/front_end/testcases/inference/mixin_inference_outwards_3.dart:7:13: Error: Expected 'on' instead of this.
-// mixin M0<T> extends Object implements I<T> {}
-//             ^^^^^^^
-//
-// pkg/front_end/testcases/inference/mixin_inference_outwards_3.dart:13:7: Error: '_A&Object&M0' doesn't implement 'I<int>' so it can't be used with 'M1<int>'.
-//  - 'Object with M0' is from 'pkg/front_end/testcases/inference/mixin_inference_outwards_3.dart'.
-//  - 'I' is from 'pkg/front_end/testcases/inference/mixin_inference_outwards_3.dart'.
-//  - 'M1' is from 'pkg/front_end/testcases/inference/mixin_inference_outwards_3.dart'.
-// class A extends Object with M0, M1<int> {}
-//       ^
-//
-import self as self;
-import "dart:core" as core;
-
-class I<X extends core::Object? = dynamic> extends core::Object {
-  synthetic constructor •() → self::I<self::I::X%>
-    : super core::Object::•()
-    ;
-}
-abstract class M0<T extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/  {
-}
-abstract class M1<T extends core::Object? = dynamic> extends self::I<self::M1::T%> /*isMixinDeclaration*/  {
-}
-abstract class _A&Object&M0 extends core::Object implements self::M0<dynamic> /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/  {
-  const synthetic constructor •() → self::_A&Object&M0
-    : super core::Object::•()
-    ;
-}
-abstract class _A&Object&M0&M1 extends self::_A&Object&M0 implements self::M1<core::int> /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/  {
-  const synthetic constructor •() → self::_A&Object&M0&M1
-    : super self::_A&Object&M0::•()
-    ;
-}
-class A extends self::_A&Object&M0&M1 {
-  synthetic constructor •() → self::A
-    : super self::_A&Object&M0&M1::•()
-    ;
-}
-static method main() → dynamic {}
diff --git a/pkg/kernel/lib/testing/type_parser_environment.dart b/pkg/kernel/lib/testing/type_parser_environment.dart
index f4aacf3..877fca2 100644
--- a/pkg/kernel/lib/testing/type_parser_environment.dart
+++ b/pkg/kernel/lib/testing/type_parser_environment.dart
@@ -78,9 +78,7 @@
 
   late TypeParserEnvironment _libraryEnvironment;
 
-  final bool isNonNullableByDefault;
-
-  Env(String source, {required this.isNonNullableByDefault}) {
+  Env(String source) {
     Uri libraryUri = Uri.parse('memory:main.dart');
     Uri coreUri = Uri.parse("dart:core");
     TypeParserEnvironment coreEnvironment =
diff --git a/pkg/kernel/lib/type_environment.dart b/pkg/kernel/lib/type_environment.dart
index e2a70d7..c3db30d 100644
--- a/pkg/kernel/lib/type_environment.dart
+++ b/pkg/kernel/lib/type_environment.dart
@@ -88,8 +88,6 @@
       DartType? futureType =
           getTypeAsInstanceOf(resolved, coreTypes.futureClass, coreTypes);
       if (futureType != null) {
-        // TODO(johnniwinther): The two implementations are inconsistent wrt.
-        //  how [isNonNullableByDefault] is treated.
         return futureType.withDeclaredNullability(resolved.declaredNullability);
       }
     } else if (resolved is FutureOrType) {
@@ -905,9 +903,6 @@
   final TypeEnvironment typeEnvironment;
 
   /// The library in which the static type is computed.
-  ///
-  /// The `library.isNonNullableByDefault` property is used to determine the
-  /// nullabilities of the static types.
   final Library _library;
 
   /// The static type of a `this` expression.
diff --git a/pkg/kernel/test/binary/library_flags_test.dart b/pkg/kernel/test/binary/library_flags_test.dart
index 3671bbc..4855bfa 100644
--- a/pkg/kernel/test/binary/library_flags_test.dart
+++ b/pkg/kernel/test/binary/library_flags_test.dart
@@ -32,29 +32,25 @@
 
   int combination = 0;
   for (bool isSynthetic in [true, false]) {
-    for (bool isNonNullableByDefault in [true, false]) {
-      for (NonNullableByDefaultCompiledMode nonNullableByDefaultCompiledMode
-          in [
-        NonNullableByDefaultCompiledMode.Weak,
-        NonNullableByDefaultCompiledMode.Strong,
-        NonNullableByDefaultCompiledMode.Agnostic,
-      ]) {
-        combination++;
-        print("Checking combination #$combination ("
-            "isSynthetic: $isSynthetic; "
-            "isNonNullableByDefault: $isNonNullableByDefault; "
-            "nonNullableByDefaultCompiledMode:"
-            " $nonNullableByDefaultCompiledMode");
-        Uri uri = Uri.parse("foo://bar.dart");
-        Library lib = new Library(uri, fileUri: uri);
-        setSynthetic(lib, isSynthetic);
-        setNonNullableByDefaultCompiledMode(
-            lib, nonNullableByDefaultCompiledMode);
-        Library lib2 = libRoundTrip(lib);
-        verifySynthetic(lib2, isSynthetic);
-        verifyNonNullableByDefaultCompiledMode(
-            lib2, nonNullableByDefaultCompiledMode);
-      }
+    for (NonNullableByDefaultCompiledMode nonNullableByDefaultCompiledMode in [
+      NonNullableByDefaultCompiledMode.Weak,
+      NonNullableByDefaultCompiledMode.Strong,
+      NonNullableByDefaultCompiledMode.Agnostic,
+    ]) {
+      combination++;
+      print("Checking combination #$combination ("
+          "isSynthetic: $isSynthetic; "
+          "nonNullableByDefaultCompiledMode:"
+          " $nonNullableByDefaultCompiledMode");
+      Uri uri = Uri.parse("foo://bar.dart");
+      Library lib = new Library(uri, fileUri: uri);
+      setSynthetic(lib, isSynthetic);
+      setNonNullableByDefaultCompiledMode(
+          lib, nonNullableByDefaultCompiledMode);
+      Library lib2 = libRoundTrip(lib);
+      verifySynthetic(lib2, isSynthetic);
+      verifyNonNullableByDefaultCompiledMode(
+          lib2, nonNullableByDefaultCompiledMode);
     }
   }
 
diff --git a/pkg/kernel/test/dart_type_equivalence_test.dart b/pkg/kernel/test/dart_type_equivalence_test.dart
index 8e8f5da..369b3dd 100644
--- a/pkg/kernel/test/dart_type_equivalence_test.dart
+++ b/pkg/kernel/test/dart_type_equivalence_test.dart
@@ -185,9 +185,8 @@
     bool equateTopTypes = false,
     bool ignoreAllNullabilities = false,
     bool ignoreTopLevelNullability = false}) {
-  Env env =
-      new Env("typedef Typedef<T> () -> T;\n", isNonNullableByDefault: true)
-        ..extendWithTypeParameters(typeParameters);
+  Env env = new Env("typedef Typedef<T> () -> T;\n")
+    ..extendWithTypeParameters(typeParameters);
   DartType t1 = env.parseType(type1);
   DartType t2 = env.parseType(type2);
 
@@ -225,9 +224,8 @@
     bool equateTopTypes = false,
     bool ignoreAllNullabilities = false,
     bool ignoreTopLevelNullability = false}) {
-  Env env =
-      new Env("typedef Typedef<T> () -> T;\n", isNonNullableByDefault: true)
-        ..extendWithTypeParameters(typeParameters);
+  Env env = new Env("typedef Typedef<T> () -> T;\n")
+    ..extendWithTypeParameters(typeParameters);
   DartType t1 = env.parseType(type1);
   DartType t2 = env.parseType(type2);
 
diff --git a/pkg/kernel/test/extension_type_erasure_test.dart b/pkg/kernel/test/extension_type_erasure_test.dart
index 3841952..03503a5 100644
--- a/pkg/kernel/test/extension_type_erasure_test.dart
+++ b/pkg/kernel/test/extension_type_erasure_test.dart
@@ -58,7 +58,7 @@
 extension type ET4<T>(T it);
 extension type ET5(int? it);
 extension type ET6<T>(T? it);
-''', isNonNullableByDefault: true);
+''');
   data.forEach((String input, String output) {
     DartType inputType = env.parseType(input);
     DartType expectedOutputType = env.parseType(output);
diff --git a/pkg/kernel/test/flatten_test.dart b/pkg/kernel/test/flatten_test.dart
index d7c92a0..9950653 100644
--- a/pkg/kernel/test/flatten_test.dart
+++ b/pkg/kernel/test/flatten_test.dart
@@ -66,7 +66,7 @@
 }
 
 void main() {
-  Env env = new Env('', isNonNullableByDefault: true);
+  Env env = new Env('');
   ClassHierarchy classHierarchy =
       new ClassHierarchy(env.component, env.coreTypes);
   TypeEnvironment typeEnvironment =
diff --git a/pkg/kernel/test/future_value_type_test.dart b/pkg/kernel/test/future_value_type_test.dart
index 3127bba..61c75d9 100644
--- a/pkg/kernel/test/future_value_type_test.dart
+++ b/pkg/kernel/test/future_value_type_test.dart
@@ -68,7 +68,7 @@
 };
 
 void main() {
-  Env env = new Env('', isNonNullableByDefault: true)
+  Env env = new Env('')
     ..extendWithTypeParameters('X,'
         'X_extends_FutureInt extends Future<int>,'
         'X_extends_FutureOrInt extends FutureOr<int>');
diff --git a/pkg/kernel/test/legacy_erasure_test.dart b/pkg/kernel/test/legacy_erasure_test.dart
index 9dcd4cd..3831067 100644
--- a/pkg/kernel/test/legacy_erasure_test.dart
+++ b/pkg/kernel/test/legacy_erasure_test.dart
@@ -54,7 +54,7 @@
 };
 
 void main() {
-  Env env = new Env('', isNonNullableByDefault: true);
+  Env env = new Env('');
   data.forEach((String input, String output) {
     DartType inputType = env.parseType(input);
     DartType expectedOutputType = env.parseType(output);
diff --git a/pkg/kernel/test/nnbd_top_merge_test.dart b/pkg/kernel/test/nnbd_top_merge_test.dart
index 9f0bc71..0a2fe3a 100644
--- a/pkg/kernel/test/nnbd_top_merge_test.dart
+++ b/pkg/kernel/test/nnbd_top_merge_test.dart
@@ -122,7 +122,7 @@
 };
 
 void main() {
-  Env env = new Env('', isNonNullableByDefault: true);
+  Env env = new Env('');
   data.forEach((String input, dynamic output) {
     List<String> parts = input.split(' vs ');
     DartType aType = env.parseType(parts[0]);
diff --git a/pkg/kernel/test/non_null_test.dart b/pkg/kernel/test/non_null_test.dart
index 67d2b6f..54b865a 100644
--- a/pkg/kernel/test/non_null_test.dart
+++ b/pkg/kernel/test/non_null_test.dart
@@ -78,7 +78,7 @@
 };
 
 void main() {
-  Env env = new Env('', isNonNullableByDefault: true)
+  Env env = new Env('')
     ..extendWithTypeParameters('X,'
         'X_extends_Object extends Object,'
         'X_extends_dynamic extends dynamic,'
diff --git a/pkg/kernel/test/norm_test.dart b/pkg/kernel/test/norm_test.dart
index d6bde05..8d27e77 100644
--- a/pkg/kernel/test/norm_test.dart
+++ b/pkg/kernel/test/norm_test.dart
@@ -157,8 +157,7 @@
 }
 
 void check(String input, String output, [String typeParameters = '']) {
-  Env env = new Env('', isNonNullableByDefault: true)
-    ..extendWithTypeParameters(typeParameters);
+  Env env = new Env('')..extendWithTypeParameters(typeParameters);
   DartType inputType = env.parseType(input);
   DartType expectedOutputType = env.parseType(output);
   DartType actualOutputType = norm(env.coreTypes, inputType);