[FIR] Fix rendering of SUSPENSION_POINT_INSIDE_CRITICAL_SECTION
#KT-61826 Fixed
This commit is contained in:
committed by
Space Team
parent
ed4386a962
commit
e996760e7e
+2
-2
@@ -11,8 +11,8 @@ import org.jetbrains.kotlin.diagnostics.KtDiagnosticRenderers.TO_STRING
|
||||
import org.jetbrains.kotlin.diagnostics.rendering.BaseDiagnosticRendererFactory
|
||||
import org.jetbrains.kotlin.diagnostics.rendering.CommonRenderers.STRING
|
||||
import org.jetbrains.kotlin.diagnostics.rendering.Renderer
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirDiagnosticRenderers.DECLARATION_NAME
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirDiagnosticRenderers.RENDER_TYPE
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirDiagnosticRenderers.SYMBOL
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.jvm.FirJvmErrors.CONCURRENT_HASH_MAP_CONTAINS_OPERATOR
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.jvm.FirJvmErrors.CONFLICTING_JVM_DECLARATIONS
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.jvm.FirJvmErrors.DELEGATION_BY_IN_JVM_RECORD
|
||||
@@ -238,7 +238,7 @@ object FirJvmErrorsDefaultMessages : BaseDiagnosticRendererFactory() {
|
||||
map.put(
|
||||
SUSPENSION_POINT_INSIDE_CRITICAL_SECTION,
|
||||
"The ''{0}'' suspension point is inside a critical section.",
|
||||
SYMBOL
|
||||
DECLARATION_NAME
|
||||
)
|
||||
map.put(
|
||||
CONCURRENT_HASH_MAP_CONTAINS_OPERATOR,
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
compiler/testData/cli/jvm/suspensionPointInMonitor.kt:26:13: error: the 'suspend fun suspensionPoint(): Unit' suspension point is inside a critical section.
|
||||
compiler/testData/cli/jvm/suspensionPointInMonitor.kt:26:13: error: the 'suspensionPoint' suspension point is inside a critical section.
|
||||
suspensionPoint()
|
||||
^
|
||||
compiler/testData/cli/jvm/suspensionPointInMonitor.kt:60:17: error: the 'suspend fun suspensionPoint(): Unit' suspension point is inside a critical section.
|
||||
compiler/testData/cli/jvm/suspensionPointInMonitor.kt:60:17: error: the 'suspensionPoint' suspension point is inside a critical section.
|
||||
suspensionPoint()
|
||||
^
|
||||
COMPILATION_ERROR
|
||||
|
||||
Vendored
+18
@@ -0,0 +1,18 @@
|
||||
/suspensionPointInMonitorNewInf.kt:19:13: error: the 'suspensionPoint' suspension point is inside a critical section
|
||||
suspensionPoint()
|
||||
^
|
||||
/suspensionPointInMonitorNewInf.kt:23:13: error: the 'suspensionPoint' suspension point is inside a critical section
|
||||
suspensionPoint()
|
||||
^
|
||||
/suspensionPointInMonitorNewInf.kt:26:30: error: the 'suspensionPoint' suspension point is inside a critical section
|
||||
synchronized(lock, { suspensionPoint() })
|
||||
^
|
||||
/suspensionPointInMonitorNewInf.kt:38:13: error: the 'suspensionPoint' suspension point is inside a critical section
|
||||
suspensionPoint()
|
||||
^
|
||||
/suspensionPointInMonitorNewInf.kt:45:9: error: the 'suspensionPoint' suspension point is inside a critical section
|
||||
suspensionPoint()
|
||||
^
|
||||
/suspensionPointInMonitorNewInf.kt:54:45: error: the 'returnsInt' suspension point is inside a critical section
|
||||
return@synchronized 1 + returnsInt()
|
||||
^
|
||||
compiler/testData/diagnostics/testsWithStdLib/coroutines/suspensionPointInMonitorNewInf.fir.diag.txt
Vendored
+13
@@ -0,0 +1,13 @@
|
||||
/suspensionPointInMonitorNewInf.kt:(377,392): error: The 'suspensionPoint' suspension point is inside a critical section.
|
||||
|
||||
/suspensionPointInMonitorNewInf.kt:(453,468): error: The 'suspensionPoint' suspension point is inside a critical section.
|
||||
|
||||
/suspensionPointInMonitorNewInf.kt:(511,526): error: The 'suspensionPoint' suspension point is inside a critical section.
|
||||
|
||||
/suspensionPointInMonitorNewInf.kt:(796,811): error: The 'suspensionPoint' suspension point is inside a critical section.
|
||||
|
||||
/suspensionPointInMonitorNewInf.kt:(886,901): error: The 'suspensionPoint' suspension point is inside a critical section.
|
||||
|
||||
/suspensionPointInMonitorNewInf.kt:(1045,1051): warning: Check for instance is always 'true'.
|
||||
|
||||
/suspensionPointInMonitorNewInf.kt:(1101,1111): error: The 'returnsInt' suspension point is inside a critical section.
|
||||
+2
-1
@@ -1,4 +1,5 @@
|
||||
// FIR_IDENTICAL
|
||||
// RENDER_DIAGNOSTICS_FULL_TEXT
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER, -USELESS_IS_CHECK
|
||||
// SKIP_TXT
|
||||
|
||||
@@ -58,4 +59,4 @@ suspend fun ifWhenAndOtherNonsence() {
|
||||
}
|
||||
}
|
||||
|
||||
suspend fun returnsInt(): Int = 0
|
||||
suspend fun returnsInt(): Int = 0
|
||||
|
||||
Reference in New Issue
Block a user