if (original.isConstructor() && inner.isPolyExpression()) {
ReferenceBinding declaringClass = original.declaringClass;
TypeBinding[] arguments = getSolutions(declaringClass.typeVariables(), innerMessage, bounds);
declaringClass = this.environment.createParameterizedType(declaringClass, arguments, declaringClass.enclosingType());
original = ((ParameterizedTypeBinding)declaringClass).createParameterizedMethod(original);
inner.checkAgainstFinalTargetType(innerTargetType, this.scope);
if (this.environment.globalOptions.isAnnotationBasedNullAnalysisEnabled)
NullAnnotationMatching.checkForContraditions(original, innerMessage, this.scope);
}
// apply results of the combined inference onto the binding of the inner invocation: