library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/issue49254.dart:10:7: Error: Can't infer the type of 'bar': circularity found during type inference.
// Specify the type explicitly.
//   var bar = A3.initializeFoo;
//       ^^^
//
import self as self;
import "dart:core" as core;

class C3 extends self::B3 {
  constructor •(invalid-type bar) → self::C3
    ;
}
class B3 extends self::A3 {
  field invalid-type bar;
  constructor •(invalid-type bar) → self::B3
    ;
}
class A3 extends core::Object {
  field (invalid-type) → self::C3 foo;
  constructor •() → self::A3
    ;
  constructor initializeFoo((invalid-type) → self::C3 foo) → self::A3
    ;
}
