Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kotlin 2.1.20 #200

Open
wants to merge 13 commits into
base: master
Choose a base branch
from
Open
2 changes: 1 addition & 1 deletion .idea/kotlinc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ buildscript {

allprojects {
group = "com.rickclephas.kmp"
version = "1.0.0-ALPHA-39"
version = "1.0.0-ALPHA-39-kotlin-2.1.20-Beta2"

repositories {
mavenCentral()
Expand Down
4 changes: 2 additions & 2 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[versions]
kotlin = "2.1.10"
kotlin = "2.1.20-Beta2"
kotlinx-coroutines = "1.10.1"
kotlinx-binary-compatibility-validator = "0.16.3"
ksp = "2.1.10-1.0.29"
ksp = "2.1.20-Beta2-1.0.29"
kotlinpoet = "1.18.1"
junit = "5.9.1"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ internal fun FirExtension.buildNativeFunction(

receiverParameter = buildReceiverParameterCopy(
originalSymbol.receiverParameter,
symbol,
origin,
typeParameters.substitutor
)
valueParameters.addAll(buildValueParametersCopy(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ internal fun FirExtension.buildNativeProperty(

receiverParameter = buildReceiverParameterCopy(
originalSymbol.receiverParameter,
symbol,
origin,
typeParameters.substitutor
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ internal fun FirExtension.buildPropertySetter(
valueParameters.add(
buildDefaultSetterValueParameter {
resolvePhase = FirResolvePhase.BODY_RESOLVE
containingFunctionSymbol = this@buildPropertyAccessor.symbol
containingDeclarationSymbol = this@buildPropertyAccessor.symbol
moduleData = propertyBuilder.moduleData
origin = propertyBuilder.origin
returnTypeRef = propertyBuilder.returnTypeRef
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,35 @@ package com.rickclephas.kmp.nativecoroutines.compiler.fir.codegen

import org.jetbrains.kotlin.KtFakeSourceElementKind
import org.jetbrains.kotlin.fakeElement
import org.jetbrains.kotlin.fir.declarations.FirDeclarationOrigin
import org.jetbrains.kotlin.fir.declarations.FirReceiverParameter
import org.jetbrains.kotlin.fir.declarations.FirResolvePhase
import org.jetbrains.kotlin.fir.declarations.builder.buildReceiverParameter
import org.jetbrains.kotlin.fir.extensions.FirExtension
import org.jetbrains.kotlin.fir.moduleData
import org.jetbrains.kotlin.fir.resolve.substitution.ConeSubstitutor
import org.jetbrains.kotlin.fir.symbols.FirBasedSymbol
import org.jetbrains.kotlin.fir.symbols.impl.FirReceiverParameterSymbol
import org.jetbrains.kotlin.fir.toFirResolvedTypeRef
import org.jetbrains.kotlin.fir.types.coneType

internal fun FirExtension.buildReceiverParameterCopy(
originalParameter: FirReceiverParameter?,
containingDeclarationSymbol: FirBasedSymbol<*>,
origin: FirDeclarationOrigin,
substitutor: ConeSubstitutor
): FirReceiverParameter? {
if (originalParameter == null) return null
return buildReceiverParameter {
resolvePhase = FirResolvePhase.BODY_RESOLVE
moduleData = session.moduleData
this.origin = origin

source = originalParameter.source?.fakeElement(KtFakeSourceElementKind.PluginGenerated)

symbol = FirReceiverParameterSymbol()
this.containingDeclarationSymbol = containingDeclarationSymbol

typeRef = originalParameter.typeRef.coneType
.let(substitutor::substituteOrSelf)
.toFirResolvedTypeRef()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ internal fun FirExtension.buildSharedFlowReplayCacheProperty(

receiverParameter = buildReceiverParameterCopy(
originalSymbol.receiverParameter,
symbol,
origin,
typeParameters.substitutor
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,8 @@ internal fun FirExtension.buildStateFlowValueProperty(

receiverParameter = buildReceiverParameterCopy(
originalSymbol.receiverParameter,
symbol,
origin,
typeParameters.substitutor
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import org.jetbrains.kotlin.fir.types.coneType

internal fun FirExtension.buildValueParametersCopy(
originalParameters: List<FirValueParameterSymbol>,
containingFunctionSymbol: FirFunctionSymbol<*>,
containingDeclarationSymbol: FirFunctionSymbol<*>,
origin: FirDeclarationOrigin,
substitutor: ConeSubstitutor,
): List<FirValueParameter> = originalParameters.map { parameter ->
Expand All @@ -30,7 +30,7 @@ internal fun FirExtension.buildValueParametersCopy(

symbol = FirValueParameterSymbol(parameter.name)
name = parameter.name
this.containingFunctionSymbol = containingFunctionSymbol
this.containingDeclarationSymbol = containingDeclarationSymbol

isCrossinline = parameter.isCrossinline
isNoinline = parameter.isNoinline
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import org.jetbrains.kotlin.ir.declarations.IrVariable
import org.jetbrains.kotlin.ir.expressions.IrExpression
import org.jetbrains.kotlin.ir.symbols.UnsafeDuringIrConstructionAPI
import org.jetbrains.kotlin.ir.types.*
import org.jetbrains.kotlin.ir.util.isNullable
import org.jetbrains.kotlin.ir.util.substitute

@UnsafeDuringIrConstructionAPI
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import org.jetbrains.kotlin.ir.declarations.IrProperty
import org.jetbrains.kotlin.ir.expressions.IrBlockBody
import org.jetbrains.kotlin.ir.symbols.UnsafeDuringIrConstructionAPI
import org.jetbrains.kotlin.ir.types.*
import org.jetbrains.kotlin.ir.util.isNullable

@UnsafeDuringIrConstructionAPI
internal fun GeneratorContext.buildSharedFlowReplayCacheGetterBody(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ import org.jetbrains.kotlin.ir.builders.*
import org.jetbrains.kotlin.ir.declarations.IrProperty
import org.jetbrains.kotlin.ir.expressions.IrBlockBody
import org.jetbrains.kotlin.ir.symbols.UnsafeDuringIrConstructionAPI
import org.jetbrains.kotlin.ir.types.isNullable
import org.jetbrains.kotlin.ir.types.makeNullable
import org.jetbrains.kotlin.ir.types.typeOrFail
import org.jetbrains.kotlin.ir.util.isNullable

@UnsafeDuringIrConstructionAPI
internal fun GeneratorContext.buildStateFlowValueGetterBody(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ import com.rickclephas.kmp.nativecoroutines.compiler.services.KmpNativeCoroutine
import org.jetbrains.kotlin.platform.konan.NativePlatforms
import org.jetbrains.kotlin.test.Constructor
import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder
import org.jetbrains.kotlin.test.directives.ConfigurationDirectives.WITH_PLATFORM_LIBS
import org.jetbrains.kotlin.test.directives.ConfigurationDirectives.WITH_STDLIB
import org.jetbrains.kotlin.test.directives.NativeEnvironmentConfigurationDirectives.WITH_PLATFORM_LIBS
import org.jetbrains.kotlin.test.frontend.classic.handlers.OldNewInferenceMetaInfoProcessor
import org.jetbrains.kotlin.test.initIdeaConfiguration
import org.jetbrains.kotlin.test.model.*
Expand All @@ -29,7 +29,7 @@ abstract class AbstractBaseDiagnosticsTest<R : ResultingArtifact.FrontendOutput<
abstract val frontend: Constructor<FrontendFacade<R>>
abstract fun TestConfigurationBuilder.handlersSetup()

final override fun TestConfigurationBuilder.configuration() {
override fun configure(builder: TestConfigurationBuilder) = with(builder) {
globalDefaults {
frontend = targetFrontend
targetPlatform = NativePlatforms.unspecifiedNativePlatform
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,14 @@ import com.rickclephas.kmp.nativecoroutines.compiler.services.KmpNativeCoroutine
import org.jetbrains.kotlin.config.JvmDefaultMode
import org.jetbrains.kotlin.test.Constructor
import org.jetbrains.kotlin.test.FirParser
import org.jetbrains.kotlin.test.TargetBackend
import org.jetbrains.kotlin.test.backend.handlers.IrPrettyKotlinDumpHandler
import org.jetbrains.kotlin.test.backend.ir.IrBackendInput
import org.jetbrains.kotlin.test.backend.ir.IrConstCheckerHandler
import org.jetbrains.kotlin.test.backend.ir.IrDiagnosticsHandler
import org.jetbrains.kotlin.test.backend.ir.JvmIrBackendFacade
import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder
import org.jetbrains.kotlin.test.builders.configureFirHandlersStep
import org.jetbrains.kotlin.test.builders.configureIrHandlersStep
import org.jetbrains.kotlin.test.configuration.configureDumpHandlersForCodegenTest
import org.jetbrains.kotlin.test.directives.CodegenTestDirectives.DUMP_IR
import org.jetbrains.kotlin.test.directives.CodegenTestDirectives.DUMP_KT_IR
import org.jetbrains.kotlin.test.directives.CodegenTestDirectives.IGNORE_DEXING
Expand All @@ -34,7 +33,6 @@ import org.jetbrains.kotlin.test.frontend.fir.handlers.FirScopeDumpHandler
import org.jetbrains.kotlin.test.initIdeaConfiguration
import org.jetbrains.kotlin.test.model.*
import org.jetbrains.kotlin.test.runners.codegen.AbstractJvmBlackBoxCodegenTestBase
import org.jetbrains.kotlin.test.runners.codegen.configureDumpHandlersForCodegenTest
import org.jetbrains.kotlin.test.services.EnvironmentBasedStandardLibrariesPathProvider
import org.jetbrains.kotlin.test.services.KotlinStandardLibrariesPathProvider
import org.junit.jupiter.api.BeforeAll
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@ import org.jetbrains.kotlin.test.Constructor
import org.jetbrains.kotlin.test.FirParser
import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder
import org.jetbrains.kotlin.test.builders.firHandlersStep
import org.jetbrains.kotlin.test.configuration.configurationForClassicAndFirTestsAlongside
import org.jetbrains.kotlin.test.configuration.enableLazyResolvePhaseChecking
import org.jetbrains.kotlin.test.directives.configureFirParser
import org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade
import org.jetbrains.kotlin.test.frontend.fir.FirOutputArtifact
import org.jetbrains.kotlin.test.frontend.fir.handlers.FirDiagnosticsHandler
import org.jetbrains.kotlin.test.frontend.fir.handlers.FirResolvedTypesVerifier
import org.jetbrains.kotlin.test.model.*
import org.jetbrains.kotlin.test.runners.configurationForClassicAndFirTestsAlongside
import org.jetbrains.kotlin.test.runners.enableLazyResolvePhaseChecking

abstract class AbstractFirBaseDiagnosticsTest(
private val parser: FirParser
Expand Down
Loading
Loading