library;
//
// Problems in library:
//
// pkg/front_end/testcases/general/invalid_yield.dart:6:3: Error: 'yield' can only be used in 'sync*' or 'async*' methods.
//   yield null;
//   ^^^^^
//
// pkg/front_end/testcases/general/invalid_yield.dart:7:3: Error: 'yield' isn't a type.
//   yield a;
//   ^^^^^
//
// pkg/front_end/testcases/general/invalid_yield.dart:8:3: Error: 'yield' can only be used in 'sync*' or 'async*' methods.
//   yield a();
//   ^^^^^
//
// pkg/front_end/testcases/general/invalid_yield.dart:9:3: Error: Expected ';' after this.
//   yield 1;
//   ^^^^^
//
// pkg/front_end/testcases/general/invalid_yield.dart:9:3: Error: Undefined name 'yield'.
//   yield 1;
//   ^^^^^
//
// pkg/front_end/testcases/general/invalid_yield.dart:13:3: Error: Undefined name 'yield'.
//   yield* [1];
//   ^^^^^
//
// pkg/front_end/testcases/general/invalid_yield.dart:17:3: Error: 'yield' can only be used in 'sync*' or 'async*' methods.
//   yield 1;
//   ^^^^^
//
// pkg/front_end/testcases/general/invalid_yield.dart:21:3: Error: 'yield' can only be used in 'sync*' or 'async*' methods.
//   yield [1];
//   ^^^^^
//
import self as self;
import "dart:core" as core;

static method method1(dynamic a) → dynamic {
  invalid-expression "pkg/front_end/testcases/general/invalid_yield.dart:6:3: Error: 'yield' can only be used in 'sync*' or 'async*' methods.
  yield null;
  ^";
  invalid-type a;
  invalid-expression "pkg/front_end/testcases/general/invalid_yield.dart:8:3: Error: 'yield' can only be used in 'sync*' or 'async*' methods.
  yield a();
  ^";
  invalid-expression "pkg/front_end/testcases/general/invalid_yield.dart:9:3: Error: Undefined name 'yield'.
  yield 1;
  ^^^^^";
  1;
}
static method method2() → dynamic {
  invalid-expression "pkg/front_end/testcases/general/invalid_yield.dart:13:3: Error: Undefined name 'yield'.
  yield* [1];
  ^^^^^"{<invalid>}.*(<core::int>[1]);
}
static method method3() → dynamic async /* emittedValueType= dynamic */ {
  invalid-expression "pkg/front_end/testcases/general/invalid_yield.dart:17:3: Error: 'yield' can only be used in 'sync*' or 'async*' methods.
  yield 1;
  ^";
}
static method method4() → dynamic async /* emittedValueType= dynamic */ {
  invalid-expression "pkg/front_end/testcases/general/invalid_yield.dart:21:3: Error: 'yield' can only be used in 'sync*' or 'async*' methods.
  yield [1];
  ^";
}
