diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index 6c9e2e9..5826a8c 100644 --- a/buildSrc/src/main/kotlin/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -3,11 +3,11 @@ object Versions { const val intellij = "2022.1" - const val project = "2.1.0-162.1" + const val project = "2.1.0-170.1" const val idePlugin = "221-$project" - const val kotlin = "1.6.20" - const val coroutines = "1.6.0" + const val kotlin = "1.7.0-RC" + const val coroutines = "1.6.1" const val publicationGroup = "me.him188" } \ No newline at end of file diff --git a/compiler-plugin/build.gradle.kts b/compiler-plugin/build.gradle.kts index 9479e84..3447da2 100644 --- a/compiler-plugin/build.gradle.kts +++ b/compiler-plugin/build.gradle.kts @@ -46,7 +46,12 @@ dependencies tests@{ testImplementation(kotlin("test-junit5")) - testImplementation("com.github.tschuchortdev:kotlin-compile-testing:1.4.8-alpha02") + testImplementation("com.github.tschuchortdev:kotlin-compile-testing:1.4.9-alpha01") { + exclude("org.jetbrains.kotlin", "kotlin-annotation-processing-embeddable") + } + testRuntimeOnly("org.jetbrains.kotlin:kotlin-annotation-processing-embeddable:1.7.0-RC") + + testImplementation("org.assertj:assertj-core:3.22.0") testImplementation("org.junit.jupiter:junit-jupiter-api:5.8.2") diff --git a/compiler-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/compiler/backend/ir/analyzeCapabilityForGeneratingBridges.kt b/compiler-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/compiler/backend/ir/analyzeCapabilityForGeneratingBridges.kt index cecfcc0..de2693f 100644 --- a/compiler-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/compiler/backend/ir/analyzeCapabilityForGeneratingBridges.kt +++ b/compiler-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/compiler/backend/ir/analyzeCapabilityForGeneratingBridges.kt @@ -71,7 +71,7 @@ fun IrFunction.analyzeCapabilityForGeneratingBridges(ext: IBridgeConfiguration): } val containingClass = parentClassOrNull - if (containingClass?.isInline == true) { + if (containingClass?.isValue == true) { // inside inline class not supported return InlineClassesNotSupported(jvmBlockingBridgeAnnotation ?: return EnableForModule, containingClass.descriptor) diff --git a/compiler-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/compiler/backend/ir/generator.kt b/compiler-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/compiler/backend/ir/generator.kt index 5b589da..5ba1525 100644 --- a/compiler-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/compiler/backend/ir/generator.kt +++ b/compiler-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/compiler/backend/ir/generator.kt @@ -94,7 +94,7 @@ internal fun IrFunction.hasDuplicateBridgeFunction(): Boolean = parentFileOrClas internal fun IrType.isClassType(fqName: FqNameUnsafe, hasQuestionMark: Boolean? = null): Boolean { if (this !is IrSimpleType) return false - if (hasQuestionMark != null && this.hasQuestionMark != hasQuestionMark) return false + if (hasQuestionMark != null && this.isMarkedNullable() != hasQuestionMark) return false return classifier.isClassWithFqName(fqName) }