1/**
2 * @test /nodynamiccopyright/
3 * @bug 7086601
4 * @summary Error message bug: cause for method mismatch is 'null'
5 * @compile/fail/ref=T7086601a.out -XDrawDiagnostics T7086601a.java
6 */
7
8class T7086601 {
9    static <S> void m1(Iterable<? super S> s1, Iterable<? super S> s2) { }
10    static void m1(Object o) {}
11
12    static <S> void m2(Iterable<? super S> s1, Iterable<? super S> s2, Iterable<? super S> s3) { }
13    static void m2(Object o) {}
14
15    @SafeVarargs
16    static <S> void m3(Iterable<? super S>... ss) { }
17    static void m3(Object o) {}
18
19    static void test1(Iterable<String> is, Iterable<Integer> ii) {
20        m1(is, ii);
21    }
22
23    static void test2(Iterable<String> is, Iterable<Integer> ii, Iterable<Double> id) {
24        m2(is, ii, id);
25    }
26
27    static void test3(Iterable<String> is, Iterable<Integer> ii) {
28        m3(is, ii);
29    }
30
31    static void test4(Iterable<String> is, Iterable<Integer> ii, Iterable<Double> id) {
32        m3(is, ii, id);
33    }
34}
35