library;
//
// Problems in library:
//
// pkg/front_end/testcases/patterns/issue54230.dart:6:22: Error: Both Iterable and Map spread elements encountered in ambiguous literal.
//   if ({0} case const {0: 0})
//                      ^
//
import self as self;
import "dart:core" as core;
import "dart:collection" as col;

static method test() → void {
  {
    final synthesized core::Set<core::int> #0#0 = block {
      final core::Set<core::int> #t1 = col::LinkedHashSet::•<core::int>();
      #t1.{core::Set::add}{Invariant}(0){(core::int) → core::bool};
    } =>#t1;
    final const synthesized Never #0#1 = invalid-expression "pkg/front_end/testcases/patterns/issue54230.dart:6:22: Error: Both Iterable and Map spread elements encountered in ambiguous literal.
  if ({0} case const {0: 0})
                     ^";
    if(invalid-expression "pkg/front_end/testcases/patterns/issue54230.dart:6:22: Error: Both Iterable and Map spread elements encountered in ambiguous literal.
  if ({0} case const {0: 0})
                     ^" =={core::Object::==}{(dynamic) → Never} #0#0)
      core::print("Success");
    else
      core::print("Failure");
  }
}
