[FIR] KT-53479: Paraphrase INSTANCE_ACCESS_BEFORE_SUPER_CALL

This commit is contained in:
Nikolay Lunyak
2022-09-07 13:56:49 +03:00
committed by Space
parent 367761008b
commit dccb7faf2e
5 changed files with 8 additions and 8 deletions
@@ -25,7 +25,7 @@ FILE: instanceAccessBeforeSuperCall.kt
}
public constructor(x: R|kotlin/Int|): R|C| {
this<R|C|>(fun <anonymous>(): <ERROR TYPE REF: Cannot access ''<this>'' before superclass constructor has been called> <inline=Unknown> {
this<R|C|>(fun <anonymous>(): <ERROR TYPE REF: Cannot access ''<this>'' before the instance has been initialized> <inline=Unknown> {
lval a: R|kotlin/Int| = Int(10)
^ this@R|/C|
}
@@ -664,7 +664,7 @@ object FirErrorsDefaultMessages : BaseDiagnosticRendererFactory() {
)
map.put(
INSTANCE_ACCESS_BEFORE_SUPER_CALL,
"Cannot access ''{0}'' before superclass constructor has been called",
"Cannot access ''{0}'' before the instance has been initialized",
TO_STRING
)
map.put(CREATING_AN_INSTANCE_OF_ABSTRACT_CLASS, "Cannot create an instance of an abstract class")
@@ -172,7 +172,7 @@ class ConeOuterClassArgumentsRequired(
}
class ConeInstanceAccessBeforeSuperCall(val target: String) : ConeDiagnostic {
override val reason: String get() = "Cannot access ''${target}'' before superclass constructor has been called"
override val reason: String get() = "Cannot access ''${target}'' before the instance has been initialized"
}
class ConeUnsupportedCallableReferenceTarget(override val candidate: AbstractCandidate) : ConeDiagnosticWithSingleCandidate {
@@ -698,7 +698,7 @@ public class DefaultErrorMessages {
MAP.put(EXPLICIT_DELEGATION_CALL_REQUIRED,
"Explicit 'this' or 'super' call is required. There is no constructor in superclass that can be called without arguments");
MAP.put(INSTANCE_ACCESS_BEFORE_SUPER_CALL, "Cannot access ''{0}'' before superclass constructor has been called", NAME);
MAP.put(INSTANCE_ACCESS_BEFORE_SUPER_CALL, "Cannot access ''{0}'' before the instance has been initialized", NAME);
MAP.put(ILLEGAL_SELECTOR, "The expression cannot be a selector (occur after a dot)");
@@ -4,7 +4,7 @@ warning: ATTENTION!
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:2:26: error: unresolved reference: getSomeInt
constructor(x: Int = getSomeInt(), other: A = this, header: String = keker) {}
^
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:2:51: error: cannot access '<this>' before superclass constructor has been called
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:2:51: error: cannot access '<this>' before the instance has been initialized
constructor(x: Int = getSomeInt(), other: A = this, header: String = keker) {}
^
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:2:74: error: unresolved reference: keker
@@ -13,13 +13,13 @@ compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:2:74: error: unresolv
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:7:20: error: 'this' is not defined in this context
class B(other: B = this)
^
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:10:32: error: argument type mismatch: actual type is kotlin/Function0<ERROR CLASS: Cannot access ''<this>'' before superclass constructor has been called> but kotlin/Int was expected
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:10:32: error: argument type mismatch: actual type is kotlin/Function0<ERROR CLASS: Cannot access ''<this>'' before the instance has been initialized> but kotlin/Int was expected
constructor(x: Int) : this({
^
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:12:9: error: argument type mismatch: actual type is ERROR CLASS: Cannot access ''<this>'' before superclass constructor has been called but ERROR CLASS: Unknown return lambda parameter type was expected
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:12:9: error: argument type mismatch: actual type is ERROR CLASS: Cannot access ''<this>'' before the instance has been initialized but ERROR CLASS: Unknown return lambda parameter type was expected
this
^
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:12:9: error: cannot access '<this>' before superclass constructor has been called
compiler/testData/cli/jvm/instanceAccessBeforeSuperCall.kt:12:9: error: cannot access '<this>' before the instance has been initialized
this
^
COMPILATION_ERROR