import lombok.val; public class ValWithSelfRefGenerics { public ValWithSelfRefGenerics() { super(); } public void run(Thing> thing, Thing thing2, java.util.List z) { final @val java.util.List y = z; final @val Thing> x = thing; final @val Thing w = thing2; final @val java.lang.Object v = thing2.get(); } } class Thing> { Thing() { super(); } public T get() { return null; } }