library;
//
// Problems in library:
//
// pkg/front_end/testcases/regress/parser_recovery_03.dart:8:11: Error: Expected an identifier, but got '<'.
// Try inserting an identifier before '<'.
//     final <int> f = [42];
//           ^
//
// pkg/front_end/testcases/regress/parser_recovery_03.dart:8:11: Error: This couldn't be parsed.
//     final <int> f = [42];
//           ^
//
// pkg/front_end/testcases/regress/parser_recovery_03.dart:14:13: Error: Undefined name 'a'.
//     var y = a<int, void>?.c = 42;
//             ^
//
// pkg/front_end/testcases/regress/parser_recovery_03.dart:14:20: Error: Expected an identifier, but got 'void'.
// Try inserting an identifier before 'void'.
//     var y = a<int, void>?.c = 42;
//                    ^^^^
//
// pkg/front_end/testcases/regress/parser_recovery_03.dart:14:18: Error: Expected ';' after this.
//     var y = a<int, void>?.c = 42;
//                  ^
//
// pkg/front_end/testcases/regress/parser_recovery_03.dart:14:24: Error: Expected an identifier, but got '>'.
// Try inserting an identifier before '>'.
//     var y = a<int, void>?.c = 42;
//                        ^
//
// pkg/front_end/testcases/regress/parser_recovery_03.dart:14:24: Error: Expected ';' after this.
//     var y = a<int, void>?.c = 42;
//                        ^
//
// pkg/front_end/testcases/regress/parser_recovery_03.dart:14:25: Error: Expected an identifier, but got '?.'.
// Try inserting an identifier before '?.'.
//     var y = a<int, void>?.c = 42;
//                         ^^
//
// pkg/front_end/testcases/regress/parser_recovery_03.dart:14:29: Error: Can't assign to this.
//     var y = a<int, void>?.c = 42;
//                             ^
//
import self as self;
import "dart:core" as core;

static method foo() → dynamic {
  if(true) {
  }
  else {
    final invalid-type f = <core::int>[42];
  }
}
static method bar() → dynamic {}
