library;
//
// Problems in library:
//
// pkg/front_end/testcases/patterns/map_pattern_errors.dart:7:15: Error: A map pattern requires exactly two type arguments.
//     case <int>{}:
//               ^
//
// pkg/front_end/testcases/patterns/map_pattern_errors.dart:8:28: Error: A map pattern requires exactly two type arguments.
//     case <int, int, String>{}:
//                            ^
//
// pkg/front_end/testcases/patterns/map_pattern_errors.dart:7:15: Error: A map pattern must have at least one entry.
// Try replacing it with an object pattern 'Map()'.
//     case <int>{}:
//               ^
//
// pkg/front_end/testcases/patterns/map_pattern_errors.dart:8:28: Error: A map pattern must have at least one entry.
// Try replacing it with an object pattern 'Map()'.
//     case <int, int, String>{}:
//                            ^
//
import self as self;

static method test(dynamic o) → dynamic {
  #L1:
  {
    final synthesized dynamic #0#0 = o;
    {
      if(invalid-expression "pkg/front_end/testcases/patterns/map_pattern_errors.dart:7:15: Error: A map pattern must have at least one entry.
Try replacing it with an object pattern 'Map()'.
    case <int>{}:
              ^" || invalid-expression "pkg/front_end/testcases/patterns/map_pattern_errors.dart:8:28: Error: A map pattern must have at least one entry.
Try replacing it with an object pattern 'Map()'.
    case <int, int, String>{}:
                           ^") {
      }
    }
  }
}
