equal
deleted
inserted
replaced
370 if (to.isPrimitive()) { |
370 if (to.isPrimitive()) { |
371 to = generateReturnConstraintsPrimitive(tree, (UndetVar)qtype, to, |
371 to = generateReturnConstraintsPrimitive(tree, (UndetVar)qtype, to, |
372 resultInfo, inferenceContext); |
372 resultInfo, inferenceContext); |
373 } |
373 } |
374 } |
374 } |
|
375 } else if (rsInfoInfContext.free(resultInfo.pt)) { |
|
376 //propagation - cache captured vars |
|
377 qtype = inferenceContext.asUndetVar(rsInfoInfContext.cachedCapture(tree, from, false)); |
375 } |
378 } |
376 Assert.check(allowGraphInference || !rsInfoInfContext.free(to), |
379 Assert.check(allowGraphInference || !rsInfoInfContext.free(to), |
377 "legacy inference engine cannot handle constraints on both sides of a subtyping assertion"); |
380 "legacy inference engine cannot handle constraints on both sides of a subtyping assertion"); |
378 //we need to skip capture? |
381 //we need to skip capture? |
379 Warner retWarn = new Warner(); |
382 Warner retWarn = new Warner(); |