library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/issue42610b.dart:6:4: Error: 'final' can't be used as an identifier because it's a keyword.
// Try renaming this to be an identifier that isn't a keyword.
//   #final;
//    ^^^^^
//
// pkg/front_end/testcases/general/issue42610b.dart:8:9: Error: The const variable 'y' must be initialized.
// Try adding an initializer ('= expression') to the declaration.
//   const y;
//         ^
//
// pkg/front_end/testcases/general/issue42610b.dart:10:13: Error: The const variable 'w' must be initialized.
// Try adding an initializer ('= expression') to the declaration.
//   const int w;
//             ^
//
import self as self;
import "dart:core" as core;

static method test() → void {
  #C1;
  final dynamic x;
  const invalid-type y = invalid-expression "pkg/front_end/testcases/general/issue42610b.dart:8:9: Error: The const variable 'y' must be initialized.
Try adding an initializer ('= expression') to the declaration.
  const y;
        ^";
  final core::int z;
  const core::int w = invalid-expression "pkg/front_end/testcases/general/issue42610b.dart:10:13: Error: The const variable 'w' must be initialized.
Try adding an initializer ('= expression') to the declaration.
  const int w;
            ^";
}
static method main() → void {}

constants  {
  #C1 = #final
}
