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 core::int #t1 = self::i in let final core::int #t2 = self::i = #t1.{core::num::+}(1) in #t1;
  self::i;
}
static method test2() → core::int {
  return (let final core::int #t3 = self::i in let final core::int #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) as{TypeError} core::int;
  self::i;
}
static method main() → dynamic {
  self::test1();
}
