langtools/test/tools/javac/OverrideChecks/6400189/T6400189b.java
author mcimadamore
Wed, 26 Oct 2016 15:41:25 +0100
changeset 41856 13a056e8f16e
parent 3766 7e2df99e9223
permissions -rw-r--r--
8168774: Polymorhic signature method check crashes javac Summary: Check for polysig method assumes arity is greater than zero Reviewed-by: vromero
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2511
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
     1
/*
3766
7e2df99e9223 6875336: some tests should use /nodynamiccopyright/
jjg
parents: 2511
diff changeset
     2
 * @test /nodynamiccopyright/
2511
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
     3
 * @bug     6400189
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
     4
 * @summary raw types and inference
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
     5
 * @author  mcimadamore
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
     6
 * @compile/fail/ref=T6400189b.out T6400189b.java -Xlint:unchecked -XDrawDiagnostics
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
     7
 */
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
     8
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
     9
class T6400189b<T> {
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    10
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    11
    static class A {
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    12
        <T> T m(T6400189b<T> x) {
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    13
            return null;
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    14
        }
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    15
    }
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    16
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    17
    static class B<T> extends A {
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    18
        <T> T m(T6400189b<T> x) {
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    19
            return null;
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    20
        }
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    21
    }
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    22
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    23
    void test(B b) {
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    24
        Integer i = b.m(new T6400189b<Integer>());
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    25
    }
1ccb94d04005 6400189: raw types and inference
mcimadamore
parents:
diff changeset
    26
}