diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/context/BasicCallResolutionContext.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/context/BasicCallResolutionContext.java index 51768095077..09f18d0c8fb 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/context/BasicCallResolutionContext.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/context/BasicCallResolutionContext.java @@ -95,7 +95,7 @@ public class BasicCallResolutionContext extends CallResolutionContext @NotNull ContextDependency contextDependency, @NotNull CheckValueArgumentsMode checkArguments, @NotNull ExpressionPosition expressionPosition, - @NotNull ResolutionResultsCache resolutionResultsCache + @NotNull ResolutionResultsCache resolutionResultsCache, + @Nullable MutableDataFlowInfoForArguments dataFlowInfoForArguments ) { - super(trace, scope, call, expectedType, dataFlowInfo, contextDependency, checkArguments, expressionPosition, resolutionResultsCache, null); + super(trace, scope, call, expectedType, dataFlowInfo, contextDependency, checkArguments, expressionPosition, resolutionResultsCache, + dataFlowInfoForArguments); this.candidateCall = candidateCall; this.tracing = tracing; } @@ -57,7 +61,7 @@ public final class CallCandidateResolutionContext return new CallCandidateResolutionContext( candidateCall, tracing, trace, context.scope, call, context.expectedType, context.dataFlowInfo, context.contextDependency, context.checkArguments, - context.expressionPosition, context.resolutionResultsCache); + context.expressionPosition, context.resolutionResultsCache, context.dataFlowInfoForArguments); } public static CallCandidateResolutionContext create( @@ -68,19 +72,11 @@ public final class CallCandidateResolutionContext public static CallCandidateResolutionContext createForCallBeingAnalyzed( @NotNull ResolvedCallImpl candidateCall, @NotNull BasicCallResolutionContext context, @NotNull TracingStrategy tracing - ) { - return createForCallBeingAnalyzed(candidateCall, context, context.call, context.contextDependency, - context.checkArguments, tracing, context.resolutionResultsCache); - } - - public static CallCandidateResolutionContext createForCallBeingAnalyzed( - @NotNull ResolvedCallImpl candidateCall, @NotNull ResolutionContext context, @NotNull Call call, - @NotNull ContextDependency contextDependency, @NotNull CheckValueArgumentsMode checkArguments, @NotNull TracingStrategy tracing, - @NotNull ResolutionResultsCache resolutionResultsCache ) { return new CallCandidateResolutionContext( - candidateCall, tracing, context.trace, context.scope, call, context.expectedType, - context.dataFlowInfo, contextDependency, checkArguments, context.expressionPosition, resolutionResultsCache); + candidateCall, tracing, context.trace, context.scope, context.call, context.expectedType, + context.dataFlowInfo, context.contextDependency, context.checkArguments, context.expressionPosition, + context.resolutionResultsCache, context.dataFlowInfoForArguments); } @Override @@ -95,7 +91,7 @@ public final class CallCandidateResolutionContext ) { return new CallCandidateResolutionContext( candidateCall, tracing, trace, scope, call, expectedType, dataFlowInfo, contextDependency, - checkArguments, expressionPosition, resolutionResultsCache); + checkArguments, expressionPosition, resolutionResultsCache, dataFlowInfoForArguments); } @Override diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/context/CallResolutionContext.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/context/CallResolutionContext.java index 20af09e0429..d6030859d73 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/context/CallResolutionContext.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/context/CallResolutionContext.java @@ -29,6 +29,7 @@ import org.jetbrains.jet.lang.types.JetType; public abstract class CallResolutionContext> extends ResolutionContext { public final Call call; public final CheckValueArgumentsMode checkArguments; + @NotNull public final MutableDataFlowInfoForArguments dataFlowInfoForArguments; protected CallResolutionContext( @@ -41,6 +42,7 @@ public abstract class CallResolutionContext