--- 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";