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

changeset 1415
01c9d4161882
parent 1374
c002fdee76fd
child 1479
38d3d1027f5a
equal deleted inserted replaced
1414:843d3b191773 1415:01c9d4161882
499 } 499 }
500 paramTypes = paramTypes.tail; 500 paramTypes = paramTypes.tail;
501 } 501 }
502 for (Type t : funcInterfaceContext.undetvars) { 502 for (Type t : funcInterfaceContext.undetvars) {
503 UndetVar uv = (UndetVar)t; 503 UndetVar uv = (UndetVar)t;
504 minimizeInst(uv, Warner.noWarnings); 504 minimizeInst(uv, types.noWarnings);
505 if (uv.inst == null && 505 if (uv.inst == null &&
506 Type.filter(uv.getBounds(InferenceBound.UPPER), boundFilter).nonEmpty()) { 506 Type.filter(uv.getBounds(InferenceBound.UPPER), boundFilter).nonEmpty()) {
507 maximizeInst(uv, Warner.noWarnings); 507 maximizeInst(uv, types.noWarnings);
508 } 508 }
509 } 509 }
510 510
511 formalInterface = funcInterfaceContext.asInstType(formalInterface, types); 511 formalInterface = funcInterfaceContext.asInstType(formalInterface, types);
512 } 512 }
799 void solveAny(List<Type> varsToSolve, Types types, Infer infer) { 799 void solveAny(List<Type> varsToSolve, Types types, Infer infer) {
800 boolean progress = false; 800 boolean progress = false;
801 for (Type t : varsToSolve) { 801 for (Type t : varsToSolve) {
802 UndetVar uv = (UndetVar)asFree(t, types); 802 UndetVar uv = (UndetVar)asFree(t, types);
803 if (uv.inst == null) { 803 if (uv.inst == null) {
804 infer.minimizeInst(uv, Warner.noWarnings); 804 infer.minimizeInst(uv, types.noWarnings);
805 if (uv.inst != null) { 805 if (uv.inst != null) {
806 progress = true; 806 progress = true;
807 } 807 }
808 } 808 }
809 } 809 }

mercurial