//
// Problems in component:
//
// pkg/front_end/testcases/agnostic/map.dart:7:11: Error: Constant evaluation error:
// const c = {a: 0, b: 1};
//           ^
// pkg/front_end/testcases/agnostic/map.dart:7:18: Context: Constant value is not strong/weak mode agnostic.
// const c = {a: 0, b: 1};
//                  ^
// pkg/front_end/testcases/agnostic/map.dart:7:7: Context: While analyzing:
// const c = {a: 0, b: 1};
//       ^
//
library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;

static const field core::List<core::int> a = #C1;
static const field core::List<core::int?> b = #C2;
static const field core::Map<core::List<core::int?>, core::int> c = invalid-expression "Constant value is not strong/weak mode agnostic.";
static method main() → dynamic {}

constants  {
  #C1 = <core::int>[]
  #C2 = <core::int?>[]
}
