/* * @test /nodynamiccopyright/ * @bug 6911256 6964740 6965277 6967065 * @author Joseph D. Darcy * @summary Check that -Xlint:twr warnings are generated as expected * @compile/ref=TwrLint.out -Xlint:try,deprecation -XDrawDiagnostics TwrLint.java */ class TwrLint implements AutoCloseable { private static void test1() { try(TwrLint r1 = new TwrLint(); TwrLint r2 = new TwrLint(); TwrLint r3 = new TwrLint()) { r1.close(); // The resource's close r2.close(42); // *Not* the resource's close // r3 not referenced } } @SuppressWarnings("try") private static void test2() { try(@SuppressWarnings("deprecation") AutoCloseable r4 = new DeprecatedAutoCloseable()) { // r4 not referenced - but no warning is generated because of @SuppressWarnings } catch(Exception e) { ; } } /** * The AutoCloseable method of a resource. */ @Override public void close () { return; } /** * <em>Not</em> the AutoCloseable method of a resource. */ public void close (int arg) { return; } } @Deprecated class DeprecatedAutoCloseable implements AutoCloseable { public DeprecatedAutoCloseable(){super();} @Override public void close () { return; } }