From e3b453ada4c4f803362e01bf2a86fa59e76b316c Mon Sep 17 00:00:00 2001 From: Denis Zharkov Date: Thu, 5 Oct 2017 12:44:47 +0300 Subject: [PATCH] Do not create redundant temporary trace It will be commited after use in any case --- .../org/jetbrains/kotlin/resolve/calls/CallCompleter.kt | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallCompleter.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallCompleter.kt index 2b572882cb1..7114ef2712f 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallCompleter.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallCompleter.kt @@ -74,13 +74,8 @@ class CallCompleter( // for the case 'foo(a)' where 'foo' is a variable, the call 'foo.invoke(a)' shouldn't be completed separately, // it's completed when the outer (variable as function call) is completed if (!isInvokeCallOnVariable(context.call)) { - val temporaryTrace = TemporaryBindingTrace.create(context.trace, "Trace to complete a resulting call") - val contextWithTemporaryTrace = context.replaceBindingTrace(temporaryTrace) - - completeResolvedCallAndArguments(resolvedCall, results, contextWithTemporaryTrace, tracing) - completeAllCandidates(contextWithTemporaryTrace, results) - - temporaryTrace.commit() + completeResolvedCallAndArguments(resolvedCall, results, context, tracing) + completeAllCandidates(context, results) } if (resolvedCall != null && context.trace.wantsDiagnostics()) {