1. A non-transitory computer readable medium comprising instructions which, when executed by one or more hardware processors, causes performance of operations comprising: identifying a set of bounds for each of a plurality of inference variables associated with a nested method invocation context; based on the set of bounds for each of the plurality of inference variables, determining that a first inference variable, of the plurality of inference variables, can be resolved based on a resolution of a second inference variable of the plurality of inference variables; responsive at least to determining that the inference variable can be resolved based on the resolution of the second inference variable: propagating the bounds corresponding to the second inference variable from the nested method invocation context to an outer method invocation context without propagating the bounds corresponding to the first inference variable from the nested method invocation context to the outer method invocation context; determining a resolution for the second inference variable based on a set of constraints associated with the outer method invocation context; and determining a resolution for the first inference variable based on the resolution for the second inference variable.