test/tools/javac/TryWithResources/ResourceOutsideTry.java

Mon, 28 Jul 2014 07:23:55 -0700

author
tbell
date
Mon, 28 Jul 2014 07:23:55 -0700
changeset 2482
d63e99f71e83
parent 0
959103a6100f
permissions
-rw-r--r--

Added tag jdk8u20-b25 for changeset 9239118487df

aoqi@0 1 /*
aoqi@0 2 * @test /nodynamiccopyright/
aoqi@0 3 * @bug 6911256 6964740 6965277
aoqi@0 4 * @author Maurizio Cimadamore
aoqi@0 5 * @summary Check that resource variable is not accessible from catch/finally clause
aoqi@0 6 * @compile/fail/ref=ResourceOutsideTry.out -XDrawDiagnostics ResourceOutsideTry.java
aoqi@0 7 */
aoqi@0 8
aoqi@0 9 class ResourceOutsideTry {
aoqi@0 10 void test() {
aoqi@0 11 try(MyResource c = new MyResource()) {
aoqi@0 12 //do something
aoqi@0 13 } catch (Exception e) {
aoqi@0 14 c.test();
aoqi@0 15 } finally {
aoqi@0 16 c.test();
aoqi@0 17 }
aoqi@0 18 }
aoqi@0 19 static class MyResource implements AutoCloseable {
aoqi@0 20 public void close() throws Exception {}
aoqi@0 21 void test() {}
aoqi@0 22 }
aoqi@0 23 }

mercurial