langtools/test/tools/javac/lambda/MethodReference55.java
author lana
Tue, 25 Apr 2017 07:38:50 +0000
changeset 44909 b53c770dc04f
parent 28803 6752a23c7fec
permissions -rw-r--r--
Added tag jdk-10+1 for changeset 3a409afd3f86
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
14724
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
     1
/*
28803
6752a23c7fec 8072445: tools/javac/lambda/MethodReference55.java fails across platforms
mcimadamore
parents: 14724
diff changeset
     2
 * @test /nodynamiccopyright/
6752a23c7fec 8072445: tools/javac/lambda/MethodReference55.java fails across platforms
mcimadamore
parents: 14724
diff changeset
     3
 * @bug 8004101 8072445
14724
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
     4
 * @summary Add checks for method reference well-formedness
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
     5
 * @compile/fail/ref=MethodReference55.out -XDrawDiagnostics MethodReference55.java
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
     6
 */
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
     7
class MethodReference55<X> {
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
     8
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
     9
    interface V {
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    10
        void m(Object o);
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    11
    }
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    12
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    13
    V v = new MethodReference55<String>()::m;
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    14
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    15
    void test() {
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    16
        g(new MethodReference55<String>()::m);
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    17
    }
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    18
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    19
    void g(V v) { }
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    20
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    21
    static void m(Object o) { };
b542db73539a 8004101: Add checks for method reference well-formedness
mcimadamore
parents:
diff changeset
    22
}