diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallResolver.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallResolver.java index 3b084800402..877acc8b075 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallResolver.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallResolver.java @@ -336,6 +336,8 @@ public class CallResolver { assert !context.call.getExplicitReceiver().exists() : "Constructor can't be invoked with explicit receiver: " + context.call.getCallElement().getText(); + context.trace.record(BindingContext.LEXICAL_SCOPE, context.call.getCallElement(), context.scope); + JetReferenceExpression functionReference = expression.getConstructorReferenceExpression(); JetTypeReference typeReference = expression.getTypeReference(); if (functionReference == null || typeReference == null) { diff --git a/idea/testData/parameterInfo/functionCall/SuperConstructorCall.kt b/idea/testData/parameterInfo/functionCall/SuperConstructorCall.kt index ecc0bb88bcd..44871a7e697 100644 --- a/idea/testData/parameterInfo/functionCall/SuperConstructorCall.kt +++ b/idea/testData/parameterInfo/functionCall/SuperConstructorCall.kt @@ -1,9 +1,11 @@ open class A(x: Int) { + protected constructor() : this(1) {} + private constructor(p: String) : this(2) {} } -class B(): A(5) { - fun m() { - A(3) - } -} -//Text: (x: Int), Disabled: false, Strikeout: false, Green: true \ No newline at end of file +class B(): A(5) + +/* +Text: (x: Int), Disabled: false, Strikeout: false, Green: true +Text: (), Disabled: true, Strikeout: false, Green: false +*/ \ No newline at end of file