@@ -0,0 +1,534 @@
+package deref;%0A%0Apublic class UnconditionalDeref2 %7B%0A%0A%09private void f(Object x, Object y, Object z) %7B%0A%09%09System.out.println(y.hashCode());%0A%09%7D%0A%0A%09private void g(Object x, Object y, Object z) %7B%0A%09%09System.out.println(y.hashCode());%0A%09%7D%0A%0A%09void report() %7B%0A%09%09f(this, null, this);%0A%09%7D%0A%0A%09void doNotReport() %7B%0A%09%09f(null, this, this);%0A%09%7D%0A%0A%09void doNotReport2() %7B%0A%09%09f(this, this, null);%0A%09%7D%0A%0A%09void reportStatic() %7B%0A%09%09g(this, null, this);%0A%09%7D%0A%0A%09void doNotReportStatic() %7B%0A%09%09g(null, this, this);%0A%09%7D%0A%0A%09void doNotReport2Static() %7B%0A%09%09g(this, this, null);%0A%09%7D%0A%0A%7D%0A

test cases for unconditional dereference