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