aoqi@0: /* aoqi@0: * @test /nodynamiccopyright/ aoqi@0: * @bug 6939620 7020044 aoqi@0: * aoqi@0: * @summary Check that usage of rare types doesn't cause spurious diamond diagnostics aoqi@0: * @author mcimadamore aoqi@0: * @compile/fail/ref=Neg05.out Neg05.java -XDrawDiagnostics aoqi@0: * aoqi@0: */ aoqi@0: aoqi@0: class Neg05 { aoqi@0: aoqi@0: class Foo { aoqi@0: Foo(V x) {} aoqi@0: Foo(V x, Z z) {} aoqi@0: } aoqi@0: aoqi@0: void testRare_1() { aoqi@0: Neg05.Foo f1 = new Neg05.Foo<>(""); aoqi@0: Neg05.Foo f2 = new Neg05.Foo<>(""); aoqi@0: Neg05.Foo f3 = new Neg05.Foo<>(""); aoqi@0: Neg05.Foo f4 = new Neg05.Foo<>(""); aoqi@0: aoqi@0: Neg05.Foo f5 = new Neg05.Foo<>("", ""); aoqi@0: Neg05.Foo f6 = new Neg05.Foo<>("", ""); aoqi@0: Neg05.Foo f7 = new Neg05.Foo<>("", ""); aoqi@0: Neg05.Foo f8 = new Neg05.Foo<>("", ""); aoqi@0: } aoqi@0: aoqi@0: void testRare_2(Neg05 n) { aoqi@0: Neg05.Foo f1 = n.new Foo<>(""); aoqi@0: Neg05.Foo f2 = n.new Foo<>(""); aoqi@0: Neg05.Foo f3 = n.new Foo<>(""); aoqi@0: Neg05.Foo f4 = n.new Foo<>(""); aoqi@0: aoqi@0: Neg05.Foo f5 = n.new Foo<>("", ""); aoqi@0: Neg05.Foo f6 = n.new Foo<>("", ""); aoqi@0: Neg05.Foo f7 = n.new Foo<>("", ""); aoqi@0: Neg05.Foo f8 = n.new Foo<>("", ""); aoqi@0: } aoqi@0: }