382fe51b6d
Reviewed-by: vromero
37 lines
981 B
Java
37 lines
981 B
Java
/* @test /nodynamiccopyright/
|
|
* @bug 7196163
|
|
* @summary Verify that improper expressions used as an operand to try-with-resources are rejected.
|
|
* @compile/fail/ref=TwrForVariable3.out -XDrawDiagnostics -Xlint:-options TwrForVariable3.java
|
|
*/
|
|
public class TwrForVariable3 implements AutoCloseable {
|
|
public static void meth() {
|
|
TwrForVariable3 v1 = new TwrForVariable3();
|
|
Object v2 = new Object();
|
|
Object v3 = new Object() {
|
|
public void close() {
|
|
}
|
|
};
|
|
|
|
try (v2) {
|
|
fail("not an AutoCloseable");
|
|
}
|
|
try (v3) {
|
|
fail("not an AutoCloseable although has close() method");
|
|
}
|
|
try (java.lang.Object) {
|
|
fail("not a variable access");
|
|
}
|
|
try (java.lang) {
|
|
fail("not a variable access");
|
|
}
|
|
}
|
|
|
|
static void fail(String reason) {
|
|
throw new RuntimeException(reason);
|
|
}
|
|
|
|
public void close() {
|
|
}
|
|
|
|
}
|