1 /* 2 * @test /nodynamiccopyright/ 3 * @bug 6911256 6964740 4 * @author Joseph D. Darcy 5 * @summary Verify invalid TWR block is not accepted. 6 * @compile/fail -source 6 TwrOnNonResource.java 7 * @compile/fail/ref=TwrOnNonResource.out -XDrawDiagnostics TwrOnNonResource.java 8 */ 9 10 class TwrOnNonResource { 11 public static void main(String... args) { 12 try(TwrOnNonResource aonr = new TwrOnNonResource()) { 13 System.out.println(aonr.toString()); 14 } 15 try(TwrOnNonResource aonr = new TwrOnNonResource()) { 16 System.out.println(aonr.toString()); 17 } finally {;} 18 try(TwrOnNonResource aonr = new TwrOnNonResource()) { 19 System.out.println(aonr.toString()); 20 } catch (Exception e) {;} 21 22 // Also check expression form 23 TwrOnNonResource aonr = new TwrOnNonResource(); 24 try(aonr) { 25 System.out.println(aonr.toString()); 26 } 27 try(aonr) { 28 System.out.println(aonr.toString()); 29 } finally {;} 30 try(aonr) { 31 System.out.println(aonr.toString()); 32 } catch (Exception e) {;} 33 } 34 35 /* 36 * A close method, but the class is <em>not</em> Closeable or 37 * AutoCloseable. 38 */ 39 public void close() { 40 throw new AssertionError("I'm not Closable!"); 41 } 42 }