1 /* 2 * @test /nodynamiccopyright/ 3 * @bug 6911256 6964740 4 * @author Joseph D. Darcy 5 * @summary Verify bad ARMs don't compile 6 * @compile/fail -source 6 ArmFlow.java 7 * @compile/fail/ref=BadArm.out -XDrawDiagnostics BadArm.java 8 */ 9 10 public class BadArm implements AutoCloseable { 11 public static void main(String... args) { 12 // illegal repeated name 13 try(BadArm r1 = new BadArm(); BadArm r1 = new BadArm()) { 14 System.out.println(r1.toString()); 15 } 16 17 // illegal duplicate name of method argument 18 try(BadArm args = new BadArm()) { 19 System.out.println(args.toString()); 20 final BadArm thatsIt = new BadArm(); 21 thatsIt = null; 22 } 23 24 try(BadArm name = new BadArm()) { 25 // illegal duplicate name of enclosing try 26 try(BadArm name = new BadArm()) { 27 System.out.println(name.toString()); 28 } 29 } 30 31 } 32 33 public void close() { 34 ; 35 } 36 }