langtools/src/share/classes/com/sun/tools/javac/comp/Attr.java
changeset 19132 e2349c075315
parent 19127 8a0cbd5cb055
child 19493 f2028bc02f0c
--- a/langtools/src/share/classes/com/sun/tools/javac/comp/Attr.java	Sun Jul 28 10:17:45 2013 +0200
+++ b/langtools/src/share/classes/com/sun/tools/javac/comp/Attr.java	Sun Jul 28 10:17:45 2013 +0200
@@ -2195,7 +2195,9 @@
                         syms.objectType :
                         clazztype;
                 if (!inferred.isErroneous() &&
-                    types.isAssignable(inferred, pt().hasTag(NONE) ? polyPt : pt(), types.noWarnings)) {
+                    (allowPoly && pt() == Infer.anyPoly ?
+                        types.isSameType(inferred, clazztype) :
+                        types.isAssignable(inferred, pt().hasTag(NONE) ? polyPt : pt(), types.noWarnings))) {
                     String key = types.isSameType(clazztype, inferred) ?
                         "diamond.redundant.args" :
                         "diamond.redundant.args.1";