library;
//
// Problems in library:
//
// pkg/front_end/testcases/regress/issue_31185.dart:8:12: Error: Expected ';' after this.
//   return i ++ (i);
//            ^^
//
// pkg/front_end/testcases/regress/issue_31185.dart:12:14: Error: Expected ';' after this.
//   return (i) ++ (i);
//              ^^
//
// pkg/front_end/testcases/regress/issue_31185.dart:12:12: Error: Can't assign to a parenthesized expression.
//   return (i) ++ (i);
//            ^
//
import self as self;
import "dart:core" as core;

static field core::int i = 5;
static method test1() → core::int {
  return let final dynamic #t1 = self::i in let final dynamic #t2 = self::i = #t1.+(1) in #t1;
  self::i;
}
static method test2() → core::int {
  return let final dynamic #t3 = self::i in let final dynamic #t4 = #t3 in let final dynamic #t5 = invalid-expression "pkg/front_end/testcases/regress/issue_31185.dart:12:12: Error: Can't assign to a parenthesized expression.
  return (i) ++ (i);
           ^" in #t4;
  self::i;
}
static method main() → dynamic {
  self::test1();
}
