// Select class foo { Int y; } class bar { Int h; Null foo() { foo f = new foo(1); this.h; // success in returning own attributes k.h; // 1/2 failure of clauses 1 and 2 (nonexistent ident) bar h = new bar(1); // success of recursive class definition f.x; // 2/2 failure of clause 3 f.y; // success } } 1