library;
//
// Problems in library:
//
// pkg/front_end/testcases/general/constructor_cycle.dart:7:18: Error: Redirecting constructors can't be cyclic.
// Try to have all constructors eventually redirect to a non-redirecting constructor.
//   A.bar() : this.foo();
//                  ^^^
//
// pkg/front_end/testcases/general/constructor_cycle.dart:9:9: Error: Redirecting constructors can't be cyclic.
// Try to have all constructors eventually redirect to a non-redirecting constructor.
//   A() : this();
//         ^^^^
//
import self as self;
import "dart:core" as core;

class A extends core::Object {
  constructor foo() → self::A*
    : this self::A::bar()
    ;
  constructor bar() → self::A*
    : this self::A::foo()
    ;
  constructor baz() → self::A*
    : this self::A::foo()
    ;
  constructor •() → self::A*
    : this self::A::•()
    ;
}
static method main() → dynamic {}
