langtools/test/tools/javac/generics/diamond/neg/Neg22.java
author sadayapalam
Thu, 26 Nov 2015 17:38:15 +0530
changeset 34474 14deea5f86f1
parent 32910 064f2f066668
permissions -rw-r--r--
8078660: Misleading recommendation from diamond finder. Summary: javac should recommend diamond usage if that could lead to a change in program behavior. Reviewed-by: mcimadamore
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
32910
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
     1
/*
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
     2
 * @test /nodynamiccopyright/
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
     3
 * @bug 8132535
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
     4
 * @summary Compiler fails with diamond anonymous class creation with intersection bound of enclosing class.
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
     5
 * @compile/fail/ref=Neg22.out Neg22.java -XDrawDiagnostics
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
     6
 */
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
     7
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
     8
public class Neg22  {
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
     9
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    10
    class Outer<X extends Runnable & java.io.Serializable> {
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    11
        class Inner<Y> { }
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    12
    }
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    13
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    14
    class Box<Z> {
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    15
        Box(Z z) { }
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    16
    }
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    17
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    18
    {
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    19
        new Box<>(new Outer<>().new Inner<>()) { };
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    20
    }
064f2f066668 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
sadayapalam
parents:
diff changeset
    21
}