test/tools/javac/LocalClasses_2.java

Fri, 29 Apr 2011 16:06:28 +0100

author
mcimadamore
date
Fri, 29 Apr 2011 16:06:28 +0100
changeset 992
dc3d9ef880a1
parent 611
4172cfff05f0
child 2525
2eb010b6cb22
permissions
-rw-r--r--

6550655: com.sun.tools.javac.code.Symbol$CompletionFailure
Summary: Accessing a non-existing enum constant from an annotation whose class is available results in an internal error
Reviewed-by: jjg

     1 /*
     2  * @test  /nodynamiccopyright/
     3  * @bug 4074421 4277278 4785453
     4  * @summary Verify that a local class cannot be redefined within its scope.
     5  * @author William Maddox (maddox)
     6  *
     7  * @compile/fail/ref=LocalClasses_2.out -XDrawDiagnostics LocalClasses_2.java
     8  */
    10 class LocalClasses_2 {
    12     void foo() {
    13         class Local { }
    14         {
    15             class Local { }                     // ERROR
    16         }
    17     }
    19     void bar() {
    21         class Local { }
    23         class Baz {
    24             void quux() {
    25                 class Local { }                 // OK
    26             }
    27         }
    29         class Quux {
    30             void baz() {
    31                 class Random {
    32                     void quem() {
    33                         class Local { }         // OK
    34                     }
    35                 }
    36             }
    37         }
    38     }
    39 }

mercurial