Tom Ball 985efdc475 6911256: Project Coin: Support Automatic Resource Management (ARM) blocks in the compiler
6964740: Project Coin: More tests for ARM compiler changes
6965277: Project Coin: Correctness issues in ARM implementation
6967065: add -Xlint warning category for Automatic Resource Management (ARM)

Reviewed-by: jjb, darcy, mcimadamore, jjg, briangoetz
2010-07-16 19:35:24 -07:00

43 lines
1.3 KiB
Java

/*
* @test /nodynamiccopyright/
* @bug 6911256 6964740
* @author Joseph D. Darcy
* @summary Verify invalid TWR block is not accepted.
* @compile/fail -source 6 TwrOnNonResource.java
* @compile/fail/ref=TwrOnNonResource.out -XDrawDiagnostics TwrOnNonResource.java
*/
class TwrOnNonResource {
public static void main(String... args) {
try(TwrOnNonResource aonr = new TwrOnNonResource()) {
System.out.println(aonr.toString());
}
try(TwrOnNonResource aonr = new TwrOnNonResource()) {
System.out.println(aonr.toString());
} finally {;}
try(TwrOnNonResource aonr = new TwrOnNonResource()) {
System.out.println(aonr.toString());
} catch (Exception e) {;}
// Also check expression form
TwrOnNonResource aonr = new TwrOnNonResource();
try(aonr) {
System.out.println(aonr.toString());
}
try(aonr) {
System.out.println(aonr.toString());
} finally {;}
try(aonr) {
System.out.println(aonr.toString());
} catch (Exception e) {;}
}
/*
* A close method, but the class is <em>not</em> Closeable or
* AutoCloseable.
*/
public void close() {
throw new AssertionError("I'm not Closable!");
}
}