From b53ccf7facaf43f32e53e049534a7edf5dcc7a60 Mon Sep 17 00:00:00 2001 From: Dmitriy Novozhilov Date: Tue, 29 Aug 2023 15:44:50 +0300 Subject: [PATCH] [FIR2IR] Drop Fir2IrSymbols in favor of IrPublicSymbol...Impl Effectively, those two symbol hierarchies have the same semantics, so there is no sense to keep them both --- .../kotlin/fir/backend/Fir2IrConverter.kt | 10 ++--- .../fir/backend/Fir2IrDeclarationStorage.kt | 4 -- .../Fir2IrCallableDeclarationsGenerator.kt | 25 ++++------- .../generators/Fir2IrClassifiersGenerator.kt | 11 ++--- .../Fir2IrLazyDeclarationsGenerator.kt | 14 ++++--- .../kotlin/fir/lazy/Fir2IrLazyProperty.kt | 14 ++++--- .../kotlin/fir/symbols/Fir2IrSymbols.kt | 41 ------------------- .../ir/symbols/impl/IrPublicSymbolBase.kt | 3 ++ 8 files changed, 35 insertions(+), 87 deletions(-) delete mode 100644 compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/symbols/Fir2IrSymbols.kt diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt index 1575aaa770e..c4e3cea1995 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt @@ -17,7 +17,7 @@ import org.jetbrains.kotlin.descriptors.DescriptorVisibilities import org.jetbrains.kotlin.descriptors.Modality import org.jetbrains.kotlin.fir.* import org.jetbrains.kotlin.fir.analysis.checkers.toRegularClassSymbol -import org.jetbrains.kotlin.fir.backend.generators.* +import org.jetbrains.kotlin.fir.backend.generators.DataClassMembersGenerator import org.jetbrains.kotlin.fir.declarations.* import org.jetbrains.kotlin.fir.declarations.utils.isLocal import org.jetbrains.kotlin.fir.declarations.utils.isSynthetic @@ -28,8 +28,6 @@ import org.jetbrains.kotlin.fir.extensions.extensionService import org.jetbrains.kotlin.fir.extensions.generatedMembers import org.jetbrains.kotlin.fir.extensions.generatedNestedClassifiers import org.jetbrains.kotlin.fir.resolve.ScopeSession -import org.jetbrains.kotlin.fir.symbols.Fir2IrConstructorSymbol -import org.jetbrains.kotlin.fir.symbols.Fir2IrSimpleFunctionSymbol import org.jetbrains.kotlin.fir.symbols.lazyDeclarationResolver import org.jetbrains.kotlin.ir.PsiIrFileEntry import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET @@ -42,6 +40,8 @@ import org.jetbrains.kotlin.ir.interpreter.IrInterpreterConfiguration import org.jetbrains.kotlin.ir.interpreter.IrInterpreterEnvironment import org.jetbrains.kotlin.ir.interpreter.checker.EvaluationMode import org.jetbrains.kotlin.ir.interpreter.transformer.transformConst +import org.jetbrains.kotlin.ir.symbols.impl.IrConstructorPublicSymbolImpl +import org.jetbrains.kotlin.ir.symbols.impl.IrSimpleFunctionPublicSymbolImpl import org.jetbrains.kotlin.ir.util.KotlinMangler import org.jetbrains.kotlin.ir.util.NaiveSourceBasedFileEntryImpl import org.jetbrains.kotlin.ir.util.defaultType @@ -246,7 +246,7 @@ class Fir2IrConverter( val signature = irClass.symbol.signature!! - val irPrimaryConstructor = symbolTable.declareConstructor(signature, { Fir2IrConstructorSymbol(signature) }) { irSymbol -> + val irPrimaryConstructor = symbolTable.declareConstructor(signature, { IrConstructorPublicSymbolImpl(signature) }) { irSymbol -> irFactory.createConstructor( UNDEFINED_OFFSET, UNDEFINED_OFFSET, IrDeclarationOrigin.DEFINED, @@ -274,7 +274,7 @@ class Fir2IrConverter( } } - val irFragmentFunction = symbolTable.declareSimpleFunction(signature, { Fir2IrSimpleFunctionSymbol(signature) }) { irSymbol -> + val irFragmentFunction = symbolTable.declareSimpleFunction(signature, { IrSimpleFunctionPublicSymbolImpl(signature) }) { irSymbol -> val lastStatement = codeFragment.block.statements.lastOrNull() val returnType = (lastStatement as? FirExpression)?.coneTypeOrNull?.toIrType(typeConverter) ?: irBuiltIns.unitType diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt index c4b58c26368..def0f3d19e4 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt @@ -24,8 +24,6 @@ import org.jetbrains.kotlin.fir.references.toResolvedValueParameterSymbol import org.jetbrains.kotlin.fir.resolve.providers.firProvider import org.jetbrains.kotlin.fir.resolve.toSymbol import org.jetbrains.kotlin.fir.symbols.ConeClassLikeLookupTag -import org.jetbrains.kotlin.fir.symbols.Fir2IrConstructorSymbol -import org.jetbrains.kotlin.fir.symbols.Fir2IrScriptSymbol import org.jetbrains.kotlin.fir.symbols.FirBasedSymbol import org.jetbrains.kotlin.fir.symbols.impl.* import org.jetbrains.kotlin.fir.types.* @@ -34,8 +32,6 @@ import org.jetbrains.kotlin.ir.builders.declarations.UNDEFINED_PARAMETER_INDEX import org.jetbrains.kotlin.ir.declarations.* import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin.GeneratedByPlugin import org.jetbrains.kotlin.ir.declarations.impl.IrClassImpl -import org.jetbrains.kotlin.ir.declarations.impl.IrScriptImpl -import org.jetbrains.kotlin.ir.declarations.impl.SCRIPT_K2_ORIGIN import org.jetbrains.kotlin.ir.declarations.lazy.IrLazyClass import org.jetbrains.kotlin.ir.expressions.IrSyntheticBodyKind import org.jetbrains.kotlin.ir.symbols.* diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrCallableDeclarationsGenerator.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrCallableDeclarationsGenerator.kt index 73cc1c72423..07a75edad2a 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrCallableDeclarationsGenerator.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrCallableDeclarationsGenerator.kt @@ -24,8 +24,9 @@ import org.jetbrains.kotlin.fir.lazy.Fir2IrLazyProperty import org.jetbrains.kotlin.fir.references.toResolvedBaseSymbol import org.jetbrains.kotlin.fir.resolve.dfa.cfg.isLocalClassOrAnonymousObject import org.jetbrains.kotlin.fir.resolve.isKFunctionInvoke -import org.jetbrains.kotlin.fir.symbols.* +import org.jetbrains.kotlin.fir.symbols.ConeClassLikeLookupTag import org.jetbrains.kotlin.fir.symbols.impl.FirNamedFunctionSymbol +import org.jetbrains.kotlin.fir.symbols.lazyResolveToPhase import org.jetbrains.kotlin.fir.types.* import org.jetbrains.kotlin.fir.utils.exceptions.withFirEntry import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET @@ -73,7 +74,7 @@ class Fir2IrCallableDeclarationsGenerator(val components: Fir2IrComponents) : Fi return if (signature == null) { factory(IrSimpleFunctionSymbolImpl()) } else { - symbolTable.declareSimpleFunction(signature, { Fir2IrSimpleFunctionSymbol(signature) }, factory) + symbolTable.declareSimpleFunction(signature, { IrSimpleFunctionPublicSymbolImpl(signature) }, factory) } } @@ -178,7 +179,7 @@ class Fir2IrCallableDeclarationsGenerator(val components: Fir2IrComponents) : Fi return if (signature == null) factory(IrConstructorSymbolImpl()) else - symbolTable.declareConstructor(signature, { Fir2IrConstructorSymbol(signature) }, factory) + symbolTable.declareConstructor(signature, { IrConstructorPublicSymbolImpl(signature) }, factory) } fun createIrConstructor( @@ -233,7 +234,7 @@ class Fir2IrCallableDeclarationsGenerator(val components: Fir2IrComponents) : Fi return if (signature == null) factory(IrPropertySymbolImpl()) else - symbolTable.declareProperty(signature, { Fir2IrPropertySymbol(signature) }, factory) + symbolTable.declareProperty(signature, { IrPropertyPublicSymbolImpl(signature) }, factory) } fun createIrProperty( @@ -387,16 +388,6 @@ class Fir2IrCallableDeclarationsGenerator(val components: Fir2IrComponents) : Fi // ------------------------------------ property accessors ------------------------------------ - private fun declareIrAccessor( - signature: IdSignature?, - factory: (IrSimpleFunctionSymbol) -> IrSimpleFunction - ): IrSimpleFunction { - return if (signature == null) - factory(IrSimpleFunctionSymbolImpl()) - else - symbolTable.declareSimpleFunction(signature, { Fir2IrSimpleFunctionSymbol(signature) }, factory) - } - private fun createIrPropertyAccessor( propertyAccessor: FirPropertyAccessor?, property: FirProperty, @@ -417,9 +408,7 @@ class Fir2IrCallableDeclarationsGenerator(val components: Fir2IrComponents) : Fi signatureComposer.composeAccessorSignature(property, isSetter, fakeOverrideOwnerLookupTag) } val containerSource = (correspondingProperty as? IrProperty)?.containerSource - return declareIrAccessor( - signature - ) { symbol -> + return declareIrSimpleFunction(signature) { symbol -> val accessorReturnType = if (isSetter) irBuiltIns.unitType else propertyType val visibility = propertyAccessor?.visibility?.let { components.visibilityConverter.convertToDescriptorVisibility(it) @@ -925,7 +914,7 @@ class Fir2IrCallableDeclarationsGenerator(val components: Fir2IrComponents) : Fi fun createIrScript(script: FirScript): IrScript = script.convertWithOffsets { startOffset, endOffset -> val signature = signatureComposer.composeSignature(script)!! - symbolTable.declareScript(signature, { Fir2IrScriptSymbol(signature) }) { symbol -> + symbolTable.declareScript(signature, { IrScriptPublicSymbolImpl(signature) }) { symbol -> IrScriptImpl(symbol, script.name, irFactory, startOffset, endOffset).also { irScript -> irScript.origin = SCRIPT_K2_ORIGIN irScript.metadata = FirMetadataSource.Script(script) diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrClassifiersGenerator.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrClassifiersGenerator.kt index d3f6988f506..d6c5eb3093b 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrClassifiersGenerator.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrClassifiersGenerator.kt @@ -15,9 +15,6 @@ import org.jetbrains.kotlin.fir.lazy.Fir2IrLazyClass import org.jetbrains.kotlin.fir.resolve.getSymbolByLookupTag import org.jetbrains.kotlin.fir.resolve.providers.firProvider import org.jetbrains.kotlin.fir.symbols.ConeClassLikeLookupTag -import org.jetbrains.kotlin.fir.symbols.Fir2IrClassSymbol -import org.jetbrains.kotlin.fir.symbols.Fir2IrEnumEntrySymbol -import org.jetbrains.kotlin.fir.symbols.Fir2IrTypeAliasSymbol import org.jetbrains.kotlin.fir.types.toLookupTag import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET import org.jetbrains.kotlin.ir.declarations.* @@ -106,7 +103,7 @@ class Fir2IrClassifiersGenerator(val components: Fir2IrComponents) : Fir2IrCompo return if (signature == null) factory(IrClassSymbolImpl()) else - symbolTable.declareClass(signature, { Fir2IrClassSymbol(signature) }, factory) + symbolTable.declareClass(signature, { IrClassPublicSymbolImpl(signature) }, factory) } fun createIrClass( @@ -325,7 +322,7 @@ class Fir2IrClassifiersGenerator(val components: Fir2IrComponents) : Fir2IrCompo return if (signature == null) factory(IrTypeAliasSymbolImpl()) else - symbolTable.declareTypeAlias(signature, { Fir2IrTypeAliasSymbol(signature) }, factory) + symbolTable.declareTypeAlias(signature, { IrTypeAliasPublicSymbolImpl(signature) }, factory) } fun createIrTypeAlias( @@ -400,7 +397,7 @@ class Fir2IrClassifiersGenerator(val components: Fir2IrComponents) : Fir2IrCompo return if (signature == null) factory(IrEnumEntrySymbolImpl()) else - symbolTable.declareEnumEntry(signature, { Fir2IrEnumEntrySymbol(signature) }, factory) + symbolTable.declareEnumEntry(signature, { IrEnumEntryPublicSymbolImpl(signature) }, factory) } fun createIrEnumEntry( @@ -474,7 +471,7 @@ class Fir2IrClassifiersGenerator(val components: Fir2IrComponents) : Fir2IrCompo val parentClass = parentId?.let { createIrClassSymbolForNotFoundClass(it.toLookupTag()) } val irParent = parentClass?.owner ?: declarationStorage.getIrExternalPackageFragment(classId.packageFqName) - return symbolTable.referenceClass(signature, { Fir2IrClassSymbol(signature) }) { + return symbolTable.referenceClass(signature, { IrClassPublicSymbolImpl(signature) }) { irFactory.createClass( startOffset = UNDEFINED_OFFSET, endOffset = UNDEFINED_OFFSET, diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrLazyDeclarationsGenerator.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrLazyDeclarationsGenerator.kt index 665d3b050e3..79d73ec96ac 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrLazyDeclarationsGenerator.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/Fir2IrLazyDeclarationsGenerator.kt @@ -9,7 +9,10 @@ import org.jetbrains.kotlin.fir.backend.Fir2IrComponents import org.jetbrains.kotlin.fir.backend.convertWithOffsets import org.jetbrains.kotlin.fir.backend.irOrigin import org.jetbrains.kotlin.fir.backend.isStubPropertyForPureField -import org.jetbrains.kotlin.fir.declarations.* +import org.jetbrains.kotlin.fir.declarations.FirConstructor +import org.jetbrains.kotlin.fir.declarations.FirProperty +import org.jetbrains.kotlin.fir.declarations.FirRegularClass +import org.jetbrains.kotlin.fir.declarations.FirSimpleFunction import org.jetbrains.kotlin.fir.dispatchReceiverClassLookupTagOrNull import org.jetbrains.kotlin.fir.isSubstitutionOrIntersectionOverride import org.jetbrains.kotlin.fir.lazy.Fir2IrLazyClass @@ -18,11 +21,10 @@ import org.jetbrains.kotlin.fir.lazy.Fir2IrLazyProperty import org.jetbrains.kotlin.fir.lazy.Fir2IrLazySimpleFunction import org.jetbrains.kotlin.fir.originalForSubstitutionOverride import org.jetbrains.kotlin.fir.resolve.providers.firProvider -import org.jetbrains.kotlin.fir.symbols.Fir2IrConstructorSymbol -import org.jetbrains.kotlin.fir.symbols.Fir2IrPropertySymbol import org.jetbrains.kotlin.ir.declarations.* -import org.jetbrains.kotlin.ir.symbols.IrClassSymbol import org.jetbrains.kotlin.ir.symbols.IrSymbolInternals +import org.jetbrains.kotlin.ir.symbols.impl.IrConstructorPublicSymbolImpl +import org.jetbrains.kotlin.ir.symbols.impl.IrPropertyPublicSymbolImpl import org.jetbrains.kotlin.ir.util.IdSignature import org.jetbrains.kotlin.utils.addToStdlib.runIf @@ -57,7 +59,7 @@ class Fir2IrLazyDeclarationsGenerator(val components: Fir2IrComponents) : Fir2Ir lazyParent: IrDeclarationParent, declarationOrigin: IrDeclarationOrigin ): IrProperty { - val symbol = Fir2IrPropertySymbol(signature) + val symbol = IrPropertyPublicSymbolImpl(signature) val firPropertySymbol = fir.symbol fun create(startOffset: Int, endOffset: Int): Fir2IrLazyProperty { @@ -95,7 +97,7 @@ class Fir2IrLazyDeclarationsGenerator(val components: Fir2IrComponents) : Fir2Ir declarationOrigin: IrDeclarationOrigin, lazyParent: IrDeclarationParent, ): IrConstructor = fir.convertWithOffsets { startOffset, endOffset -> - symbolTable.declareConstructor(signature, { Fir2IrConstructorSymbol(signature) }) { symbol -> + symbolTable.declareConstructor(signature, { IrConstructorPublicSymbolImpl(signature) }) { symbol -> Fir2IrLazyConstructor(components, startOffset, endOffset, declarationOrigin, fir, symbol).apply { parent = lazyParent } diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/lazy/Fir2IrLazyProperty.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/lazy/Fir2IrLazyProperty.kt index 649d76c49fb..ddfd93bd3eb 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/lazy/Fir2IrLazyProperty.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/lazy/Fir2IrLazyProperty.kt @@ -9,8 +9,11 @@ import org.jetbrains.kotlin.descriptors.DescriptorVisibility import org.jetbrains.kotlin.descriptors.Modality import org.jetbrains.kotlin.descriptors.PropertyDescriptor import org.jetbrains.kotlin.descriptors.isAnnotationClass -import org.jetbrains.kotlin.fir.backend.* +import org.jetbrains.kotlin.fir.backend.ConversionTypeOrigin +import org.jetbrains.kotlin.fir.backend.Fir2IrComponents +import org.jetbrains.kotlin.fir.backend.asCompileTimeIrInitializer import org.jetbrains.kotlin.fir.backend.generators.generateOverriddenPropertySymbols +import org.jetbrains.kotlin.fir.backend.toIrConst import org.jetbrains.kotlin.fir.declarations.FirProperty import org.jetbrains.kotlin.fir.declarations.FirRegularClass import org.jetbrains.kotlin.fir.declarations.impl.FirDefaultPropertyGetter @@ -18,8 +21,6 @@ import org.jetbrains.kotlin.fir.declarations.impl.FirDefaultPropertySetter import org.jetbrains.kotlin.fir.declarations.utils.* import org.jetbrains.kotlin.fir.expressions.FirConstExpression import org.jetbrains.kotlin.fir.expressions.FirExpression -import org.jetbrains.kotlin.fir.symbols.Fir2IrPropertySymbol -import org.jetbrains.kotlin.fir.symbols.Fir2IrSimpleFunctionSymbol import org.jetbrains.kotlin.fir.types.resolvedType import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI import org.jetbrains.kotlin.ir.declarations.* @@ -27,6 +28,7 @@ import org.jetbrains.kotlin.ir.declarations.lazy.lazyVar import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.expressions.IrExpressionBody import org.jetbrains.kotlin.ir.symbols.IrPropertySymbol +import org.jetbrains.kotlin.ir.symbols.impl.IrSimpleFunctionPublicSymbolImpl import org.jetbrains.kotlin.ir.types.IrType import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.name.NameUtils @@ -39,7 +41,7 @@ class Fir2IrLazyProperty( override var origin: IrDeclarationOrigin, override val fir: FirProperty, val containingClass: FirRegularClass?, - override val symbol: Fir2IrPropertySymbol, + override val symbol: IrPropertySymbol, override var isFakeOverride: Boolean ) : IrProperty(), AbstractFir2IrLazyDeclaration, Fir2IrComponents by components { init { @@ -175,7 +177,7 @@ class Fir2IrLazyProperty( isSetter = false, containingClass?.symbol?.toLookupTag() )!! - symbolTable.declareSimpleFunction(signature, symbolFactory = { Fir2IrSimpleFunctionSymbol(signature) }) { symbol -> + symbolTable.declareSimpleFunction(signature, symbolFactory = { IrSimpleFunctionPublicSymbolImpl(signature) }) { symbol -> Fir2IrLazyPropertyAccessor( components, startOffset, endOffset, when { @@ -203,7 +205,7 @@ class Fir2IrLazyProperty( isSetter = true, containingClass?.symbol?.toLookupTag() )!! - symbolTable.declareSimpleFunction(signature, symbolFactory = { Fir2IrSimpleFunctionSymbol(signature) }) { symbol -> + symbolTable.declareSimpleFunction(signature, symbolFactory = { IrSimpleFunctionPublicSymbolImpl(signature) }) { symbol -> Fir2IrLazyPropertyAccessor( components, startOffset, endOffset, when { diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/symbols/Fir2IrSymbols.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/symbols/Fir2IrSymbols.kt deleted file mode 100644 index 55a0c92add2..00000000000 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/symbols/Fir2IrSymbols.kt +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. - * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. - */ - -package org.jetbrains.kotlin.fir.symbols - -import org.jetbrains.kotlin.descriptors.* -import org.jetbrains.kotlin.ir.declarations.* -import org.jetbrains.kotlin.ir.symbols.* -import org.jetbrains.kotlin.ir.util.IdSignature - -class Fir2IrClassSymbol(signature: IdSignature) : - Fir2IrBindableSymbol(signature), - IrClassSymbol - -class Fir2IrTypeAliasSymbol(signature: IdSignature) : - Fir2IrBindableSymbol(signature), - IrTypeAliasSymbol - -class Fir2IrEnumEntrySymbol(signature: IdSignature) : - Fir2IrBindableSymbol(signature), - IrEnumEntrySymbol - -class Fir2IrSimpleFunctionSymbol( - signature: IdSignature -) : Fir2IrBindableSymbol(signature), - IrSimpleFunctionSymbol - -class Fir2IrConstructorSymbol(signature: IdSignature) : - Fir2IrBindableSymbol(signature), - IrConstructorSymbol - -class Fir2IrPropertySymbol( - signature: IdSignature -) : Fir2IrBindableSymbol(signature), - IrPropertySymbol - -class Fir2IrScriptSymbol(signature: IdSignature) : - Fir2IrBindableSymbol(signature), - IrScriptSymbol diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPublicSymbolBase.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPublicSymbolBase.kt index 7bbbca7e4ba..a58413d7ff6 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPublicSymbolBase.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPublicSymbolBase.kt @@ -107,3 +107,6 @@ class IrFieldPublicSymbolImpl(sig: IdSignature, descriptor: PropertyDescriptor? class IrTypeParameterPublicSymbolImpl(sig: IdSignature, descriptor: TypeParameterDescriptor? = null) : IrBindablePublicSymbolBase(sig, descriptor), IrTypeParameterSymbol + +class IrScriptPublicSymbolImpl(sig: IdSignature, descriptor: ScriptDescriptor? = null) : + IrBindablePublicSymbolBase(sig, descriptor), IrScriptSymbol