This code crashes javac (jdk8 ea build 105) public class Tmp { void test() { new Object() { Runnable r = ()->{}; }; class X { Runnable r = ()->{}; } } }