langtools/test/tools/javac/generics/diamond/neg/Neg06.java
author mcimadamore
Wed, 14 Apr 2010 12:31:55 +0100
changeset 5321 c8efe769cb3b
child 8635 383a416a2bdf
permissions -rw-r--r--
6939620: Switch to 'complex' diamond inference scheme Summary: Implement new inference scheme for diamond operator that takes into account type of actual arguments supplied to constructor Reviewed-by: jjg, darcy

/*
 * @test /nodynamiccopyright/
 * @bug 6939620
 *
 * @summary  Switch to 'complex' diamond inference scheme
 * @author mcimadamore
 * @compile/fail/ref=Neg06.out Neg06.java -XDrawDiagnostics
 *
 */

class Neg06 {
   interface ISuperFoo<X> {}
   interface IFoo<X extends Number> extends ISuperFoo<X> {}

   static class CSuperFoo<X> {}
   static class CFoo<X extends Number> extends CSuperFoo<X> {}

   ISuperFoo<String> isf = new IFoo<>() {};
   CSuperFoo<String> csf1 = new CFoo<>();
   CSuperFoo<String> csf2 = new CFoo<>() {};
}