diff --git a/plugins/scripting/scripting-compiler-impl/src/org/jetbrains/kotlin/scripting/resolve/LazyScriptDescriptor.kt b/plugins/scripting/scripting-compiler-impl/src/org/jetbrains/kotlin/scripting/resolve/LazyScriptDescriptor.kt index 1de07187e06..49717d2fa30 100644 --- a/plugins/scripting/scripting-compiler-impl/src/org/jetbrains/kotlin/scripting/resolve/LazyScriptDescriptor.kt +++ b/plugins/scripting/scripting-compiler-impl/src/org/jetbrains/kotlin/scripting/resolve/LazyScriptDescriptor.kt @@ -41,6 +41,7 @@ import org.jetbrains.kotlin.types.TypeSubstitutor import org.jetbrains.kotlin.types.Variance import org.jetbrains.kotlin.types.typeUtil.isNothing import org.jetbrains.kotlin.types.typeUtil.isUnit +import org.jetbrains.kotlin.types.typeUtil.replaceArgumentsWithStarProjections import org.jetbrains.kotlin.utils.addToStdlib.firstIsInstanceOrNull import kotlin.reflect.KClass import kotlin.reflect.KType @@ -261,12 +262,14 @@ class LazyScriptDescriptor( private val scriptProvidedProperties: () -> List = resolveSession.storageManager.createLazyValue { scriptCompilationConfiguration()[ScriptCompilationConfiguration.providedProperties].orEmpty() .mapNotNull { (name, type) -> - findTypeDescriptor(getScriptingClass(type), Errors.MISSING_SCRIPT_PROVIDED_PROPERTY_CLASS) - ?.let { name.toValidJvmIdentifier() to it.defaultType.makeNullableAsSpecified(type.isNullable) } - }.map { (name, classDescriptor) -> + findTypeDescriptor(getScriptingClass(type), Errors.MISSING_SCRIPT_PROVIDED_PROPERTY_CLASS)?.let { + name.toValidJvmIdentifier() to + it.defaultType.makeNullableAsSpecified(type.isNullable).replaceArgumentsWithStarProjections() + } + }.map { (name, type) -> ScriptProvidedPropertyDescriptor( Name.identifier(name), - classDescriptor, + type, thisAsReceiverParameter, true, this