library;
import self as self;
import "dart:core" as core;

class A extends core::Object {
  final field core::int x;
  const constructor •(core::int x) → void
    : self::A::x = x, super core::Object::•()
    ;
}
static method main() → dynamic {
  core::int foo = 42;
  const self::A::•(5);
  const self::A::•(5.{core::num::+}(5));
  new self::A::•(foo);
  new self::A::•(5.{core::num::+}(foo));
}
