langtools/test/tools/javac/generics/inference/7086601/T7086601a.java
author mcimadamore
Tue, 13 Sep 2011 14:15:39 +0100
changeset 10628 dca7012223bc
permissions -rw-r--r--
7086601: Error message bug: cause for method mismatch is 'null' Summary: Inference error during lub() does not set 'cause' for method resolution diagnostic Reviewed-by: jjg
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10628
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
     1
/**
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
     2
 * @test /nodynamiccopyright/
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
     3
 * @bug 7086601
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
     4
 * @summary Error message bug: cause for method mismatch is 'null'
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
     5
 * @compile/fail/ref=T7086601a.out -XDrawDiagnostics T7086601a.java
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
     6
 */
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
     7
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
     8
class T7086601 {
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
     9
    static <S> void m1(Iterable<? super S> s1, Iterable<? super S> s2) { }
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    10
    static void m1(Object o) {}
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    11
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    12
    static <S> void m2(Iterable<? super S> s1, Iterable<? super S> s2, Iterable<? super S> s3) { }
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    13
    static void m2(Object o) {}
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    14
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    15
    @SafeVarargs
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    16
    static <S> void m3(Iterable<? super S>... ss) { }
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    17
    static void m3(Object o) {}
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    18
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    19
    static void test1(Iterable<String> is, Iterable<Integer> ii) {
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    20
        m1(is, ii);
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    21
    }
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    22
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    23
    static void test2(Iterable<String> is, Iterable<Integer> ii, Iterable<Double> id) {
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    24
        m2(is, ii, id);
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    25
    }
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    26
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    27
    static void test3(Iterable<String> is, Iterable<Integer> ii) {
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    28
        m3(is, ii);
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    29
    }
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    30
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    31
    static void test4(Iterable<String> is, Iterable<Integer> ii, Iterable<Double> id) {
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    32
        m3(is, ii, id);
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    33
    }
dca7012223bc 7086601: Error message bug: cause for method mismatch is 'null'
mcimadamore
parents:
diff changeset
    34
}