test/tools/javac/varargs/8055514/T8055514.java

Wed, 24 Sep 2014 11:38:26 -0700

author
katleman
date
Wed, 24 Sep 2014 11:38:26 -0700
changeset 2562
ed1a48bedfa8
parent 2559
0253e7cc98a4
permissions
-rw-r--r--

Added tag jdk8u40-b07 for changeset 2fa3858a281f

     1 /*
     2  * @test /nodynamiccopyright/
     3  * @bug     8055514
     4  * @summary  Wrong, confusing error when non-static varargs referenced in static context
     5  * @compile/fail/ref=T8055514.out -Xlint:varargs -Werror -XDrawDiagnostics T8055514.java
     6  */
     7 class T8055514 {
     8     void m(int... args) { }
    10     void m2(int... args) { }
    11     static void m2(String s) { }
    13     void m3(int... args) { }
    14     static void m3(String s) { }
    15     static void m3(Runnable r) { }
    17     void m4(int... args) { }
    18     void m4(int i1, int i2, int i3) { }
    20     static void test() {
    21         m(1,2,3); //only one candidate (varargs) - varargs error wins
    22         m2(1,2,3); //two candidates - only one applicable (varargs) - varargs error wins
    23         m3(1,2,3); //three candidates - only one applicable (varargs) - varargs error wins
    24         m4(1,2,3); //two candidates - both applicable - basic error wins
    25     }
    26 }

mercurial