While producing the StackOverflowError test case I noticed that this doesn't compile either - perhaps it's related: class NoEnclosingInstance { {=> String} ref = this#toString(); } NoEnclosingInstance.java:3: no enclosing instance of type NoEnclosingInstance is in scope {=> String} ref = this#toString(); ^ Regards, Mark