Wed, 08 Oct 2014 14:16:40 -0700
Merge
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 }