equal
deleted
inserted
replaced
356 * parameterizations of the same generic class or interface. |
356 * parameterizations of the same generic class or interface. |
357 */ |
357 */ |
358 for (Type aLowerBound : from.getBounds(InferenceBound.LOWER)) { |
358 for (Type aLowerBound : from.getBounds(InferenceBound.LOWER)) { |
359 for (Type anotherLowerBound : from.getBounds(InferenceBound.LOWER)) { |
359 for (Type anotherLowerBound : from.getBounds(InferenceBound.LOWER)) { |
360 if (aLowerBound != anotherLowerBound && |
360 if (aLowerBound != anotherLowerBound && |
361 commonSuperWithDiffParameterization(aLowerBound, anotherLowerBound)) { |
361 !inferenceContext.free(aLowerBound) && |
362 /* self comment check if any lower bound may be and undetVar, |
362 !inferenceContext.free(anotherLowerBound) && |
363 * in that case the result of this call may be a false positive. |
363 commonSuperWithDiffParameterization(aLowerBound, anotherLowerBound)) { |
364 * Should this be restricted to non free types? |
|
365 */ |
|
366 return generateReferenceToTargetConstraint(tree, from, to, |
364 return generateReferenceToTargetConstraint(tree, from, to, |
367 resultInfo, inferenceContext); |
365 resultInfo, inferenceContext); |
368 } |
366 } |
369 } |
367 } |
370 } |
368 } |