langtools/test/tools/javac/lambda/NoWarnOnImplicitParams.java
author mcimadamore
Wed, 15 May 2013 14:03:09 +0100
changeset 17584 3c4dfe34c2ec
permissions -rw-r--r--
8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types Summary: Bad warnings and position for lambda inferred parameter types Reviewed-by: jjg, vromero
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17584
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
     1
/*
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
     2
 * @test /nodynamiccopyright/
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
     3
 * @bug 8013222
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
     4
 * @summary Javac issues spurious raw type warnings when lambda has implicit parameter types
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
     5
 * @compile/fail/ref=NoWarnOnImplicitParams.out -Xlint:rawtypes -Werror -XDrawDiagnostics NoWarnOnImplicitParams.java
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
     6
 */
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
     7
import java.util.List;
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
     8
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
     9
class NoWarnOnImplicitParams {
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    10
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    11
    public void testRawMerge(List<String> ls) {
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    12
        R12 r12_1 = l->"Foo";
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    13
        R12 r12_2 = (List l)->"Foo";
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    14
    }
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    15
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    16
    interface R1 {
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    17
        Object m(List<String> ls);
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    18
    }
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    19
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    20
    @SuppressWarnings("rawtypes")
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    21
    interface R2 {
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    22
        String m(List l);
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    23
    }
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    24
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    25
    interface R12 extends R1, R2 {}
3c4dfe34c2ec 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
mcimadamore
parents:
diff changeset
    26
}