[Analysis API FIR] fix candidate collection for delegatedConstructor call
^KTIJ-20446
This commit is contained in:
+77
@@ -0,0 +1,77 @@
|
||||
KtInapplicableCallCandidateInfo:
|
||||
diagnostic = ERROR<null: OTHER_ERROR with <init>>
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(): A
|
||||
valueParameters = []
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {}
|
||||
isInBestCandidates = false
|
||||
|
||||
KtInapplicableCallCandidateInfo:
|
||||
diagnostic = ERROR<null: OTHER_ERROR with <init>>
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(p: kotlin.String): A
|
||||
valueParameters = [
|
||||
KtVariableLikeSignature:
|
||||
name = p
|
||||
receiverType = null
|
||||
returnType = kotlin.String
|
||||
symbol = p: kotlin.String
|
||||
callableIdIfNonLocal = null
|
||||
]
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {
|
||||
5 -> (KtVariableLikeSignature:
|
||||
name = p
|
||||
receiverType = null
|
||||
returnType = kotlin.String
|
||||
symbol = p: kotlin.String
|
||||
callableIdIfNonLocal = null)
|
||||
}
|
||||
isInBestCandidates = false
|
||||
|
||||
KtApplicableCallCandidateInfo:
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(x: kotlin.Int): A
|
||||
valueParameters = [
|
||||
KtVariableLikeSignature:
|
||||
name = x
|
||||
receiverType = null
|
||||
returnType = kotlin.Int
|
||||
symbol = x: kotlin.Int
|
||||
callableIdIfNonLocal = null
|
||||
]
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {
|
||||
5 -> (KtVariableLikeSignature:
|
||||
name = x
|
||||
receiverType = null
|
||||
returnType = kotlin.Int
|
||||
symbol = x: kotlin.Int
|
||||
callableIdIfNonLocal = null)
|
||||
}
|
||||
isInBestCandidates = true
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
open class A(x: Int) {
|
||||
protected constructor() : this(1) {}
|
||||
private constructor(p: String) : this(2) {}
|
||||
}
|
||||
|
||||
class B(): <expr>A</expr>(5)
|
||||
+70
@@ -0,0 +1,70 @@
|
||||
KtInapplicableCallCandidateInfo:
|
||||
diagnostic = ERROR<TOO_MANY_ARGUMENTS: Too many arguments for protected constructor(): R|A|>
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(): A
|
||||
valueParameters = []
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {}
|
||||
isInBestCandidates = false
|
||||
|
||||
KtInapplicableCallCandidateInfo:
|
||||
diagnostic = ERROR<INVISIBLE_REFERENCE: Symbol constructor(p: String): A is invisible>
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(p: kotlin.String): A
|
||||
valueParameters = [
|
||||
KtVariableLikeSignature:
|
||||
name = p
|
||||
receiverType = null
|
||||
returnType = kotlin.String
|
||||
symbol = p: kotlin.String
|
||||
callableIdIfNonLocal = null
|
||||
]
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {}
|
||||
isInBestCandidates = false
|
||||
|
||||
KtApplicableCallCandidateInfo:
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(x: kotlin.Int): A
|
||||
valueParameters = [
|
||||
KtVariableLikeSignature:
|
||||
name = x
|
||||
receiverType = null
|
||||
returnType = kotlin.Int
|
||||
symbol = x: kotlin.Int
|
||||
callableIdIfNonLocal = null
|
||||
]
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {
|
||||
5 -> (KtVariableLikeSignature:
|
||||
name = x
|
||||
receiverType = null
|
||||
returnType = kotlin.Int
|
||||
symbol = x: kotlin.Int
|
||||
callableIdIfNonLocal = null)
|
||||
}
|
||||
isInBestCandidates = true
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
open class A(x: Int) {
|
||||
}
|
||||
|
||||
class B(): <expr>A</expr>(5)
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
KtApplicableCallCandidateInfo:
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(x: kotlin.Int): A
|
||||
valueParameters = [
|
||||
KtVariableLikeSignature:
|
||||
name = x
|
||||
receiverType = null
|
||||
returnType = kotlin.Int
|
||||
symbol = x: kotlin.Int
|
||||
callableIdIfNonLocal = null
|
||||
]
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {
|
||||
5 -> (KtVariableLikeSignature:
|
||||
name = x
|
||||
receiverType = null
|
||||
returnType = kotlin.Int
|
||||
symbol = x: kotlin.Int
|
||||
callableIdIfNonLocal = null)
|
||||
}
|
||||
isInBestCandidates = true
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
KtInapplicableCallCandidateInfo:
|
||||
diagnostic = ERROR<null: OTHER_ERROR with <init>>
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(x: kotlin.String): A
|
||||
valueParameters = [
|
||||
KtVariableLikeSignature:
|
||||
name = x
|
||||
receiverType = null
|
||||
returnType = kotlin.String
|
||||
symbol = x: kotlin.String
|
||||
callableIdIfNonLocal = null
|
||||
]
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {
|
||||
5 -> (KtVariableLikeSignature:
|
||||
name = x
|
||||
receiverType = null
|
||||
returnType = kotlin.String
|
||||
symbol = x: kotlin.String
|
||||
callableIdIfNonLocal = null)
|
||||
}
|
||||
isInBestCandidates = true
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
open class A(x: String) {
|
||||
}
|
||||
|
||||
class B(): <expr>A</expr>(5)
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
KtInapplicableCallCandidateInfo:
|
||||
diagnostic = ERROR<ARGUMENT_TYPE_MISMATCH: Argument type mismatch: actual type is kotlin/Int but kotlin/String was expected>
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(x: kotlin.String): A
|
||||
valueParameters = [
|
||||
KtVariableLikeSignature:
|
||||
name = x
|
||||
receiverType = null
|
||||
returnType = kotlin.String
|
||||
symbol = x: kotlin.String
|
||||
callableIdIfNonLocal = null
|
||||
]
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {
|
||||
5 -> (KtVariableLikeSignature:
|
||||
name = x
|
||||
receiverType = null
|
||||
returnType = kotlin.String
|
||||
symbol = x: kotlin.String
|
||||
callableIdIfNonLocal = null)
|
||||
}
|
||||
isInBestCandidates = true
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
KtInapplicableCallCandidateInfo:
|
||||
diagnostic = ERROR<null: OTHER_ERROR with <init>>
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(): A
|
||||
valueParameters = []
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {}
|
||||
isInBestCandidates = true
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
open class A() {
|
||||
}
|
||||
|
||||
class B(): <expr>A</expr>(5)
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
KtInapplicableCallCandidateInfo:
|
||||
diagnostic = ERROR<TOO_MANY_ARGUMENTS: Too many arguments for public constructor(): R|A|>
|
||||
candidate = KtDelegatedConstructorCall:
|
||||
kind = SUPER_CALL
|
||||
partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
|
||||
dispatchReceiver = null
|
||||
extensionReceiver = null
|
||||
signature = KtFunctionLikeSignature:
|
||||
receiverType = null
|
||||
returnType = A
|
||||
symbol = <constructor>(): A
|
||||
valueParameters = []
|
||||
callableIdIfNonLocal = null
|
||||
typeArgumentsMapping = {}
|
||||
argumentMapping = {}
|
||||
isInBestCandidates = true
|
||||
Reference in New Issue
Block a user