/** * This test illustrates that resolution of globally visible class * symbols is correctly happening before resolution of declared method * effects. */ class A { region Ra; int a in Ra; // Symbol B.Rb is visible here, because it was entered during the // memberEnter phase. Resolution of declared method effects is // now a separate, DPJ-specific pass that happens after memberEnter // but before Attr. void m() writes A.Ra, Root : B.Rb { a = 1; new B().m2(); } } class B { region Rb; int b in Rb; void m2() writes B.Rb { b = 3; } }