src/share/classes/com/sun/tools/javac/comp/Infer.java

changeset 2804
bacd3cbb4e5e
parent 2601
8dcde670aed3
child 2893
ca5783d9a597
child 2904
14891e981af0
equal deleted inserted replaced
2803:9538418d25b9 2804:bacd3cbb4e5e
313 * parameterizations of the same generic class or interface. 313 * parameterizations of the same generic class or interface.
314 */ 314 */
315 for (Type aLowerBound : from.getBounds(InferenceBound.LOWER)) { 315 for (Type aLowerBound : from.getBounds(InferenceBound.LOWER)) {
316 for (Type anotherLowerBound : from.getBounds(InferenceBound.LOWER)) { 316 for (Type anotherLowerBound : from.getBounds(InferenceBound.LOWER)) {
317 if (aLowerBound != anotherLowerBound && 317 if (aLowerBound != anotherLowerBound &&
318 commonSuperWithDiffParameterization(aLowerBound, anotherLowerBound)) { 318 !inferenceContext.free(aLowerBound) &&
319 /* self comment check if any lower bound may be and undetVar, 319 !inferenceContext.free(anotherLowerBound) &&
320 * in that case the result of this call may be a false positive. 320 commonSuperWithDiffParameterization(aLowerBound, anotherLowerBound)) {
321 * Should this be restricted to non free types?
322 */
323 return generateReferenceToTargetConstraint(tree, from, to, 321 return generateReferenceToTargetConstraint(tree, from, to,
324 resultInfo, inferenceContext); 322 resultInfo, inferenceContext);
325 } 323 }
326 } 324 }
327 } 325 }

mercurial