Builtins are passed into builtins module
Fixes circular dependency
This commit is contained in:
@@ -111,7 +111,7 @@ public class KotlinBuiltIns {
|
||||
private KotlinBuiltIns() {
|
||||
LockBasedStorageManager storageManager = new LockBasedStorageManager();
|
||||
builtInsModule = new ModuleDescriptorImpl(
|
||||
Name.special("<built-ins module>"), storageManager, ModuleParameters.Empty.INSTANCE$
|
||||
Name.special("<built-ins module>"), storageManager, ModuleParameters.Empty.INSTANCE$, this
|
||||
);
|
||||
|
||||
PackageFragmentProvider packageFragmentProvider = BuiltinsPackage.createBuiltInPackageFragmentProvider(
|
||||
|
||||
@@ -32,7 +32,8 @@ import kotlin.properties.Delegates
|
||||
public class ModuleDescriptorImpl(
|
||||
moduleName: Name,
|
||||
private val storageManager: StorageManager,
|
||||
private val moduleParameters: ModuleParameters
|
||||
private val moduleParameters: ModuleParameters,
|
||||
override val builtIns: KotlinBuiltIns
|
||||
) : DeclarationDescriptorImpl(Annotations.EMPTY, moduleName), ModuleDescriptor, ModuleParameters by moduleParameters {
|
||||
init {
|
||||
if (!moduleName.isSpecial()) {
|
||||
@@ -40,6 +41,12 @@ public class ModuleDescriptorImpl(
|
||||
}
|
||||
}
|
||||
|
||||
public constructor(
|
||||
moduleName: Name,
|
||||
storageManager: StorageManager,
|
||||
moduleParameters: ModuleParameters
|
||||
) : this(moduleName, storageManager, moduleParameters, KotlinBuiltIns.getInstance())
|
||||
|
||||
private var dependencies: ModuleDependencies? = null
|
||||
private var packageFragmentProviderForModuleContent: PackageFragmentProvider? = null
|
||||
|
||||
@@ -102,9 +109,6 @@ public class ModuleDescriptorImpl(
|
||||
assert(friend != this) { "Attempt to make module $id a friend to itself" }
|
||||
friendModules.add(friend)
|
||||
}
|
||||
|
||||
override val builtIns: KotlinBuiltIns
|
||||
get() = KotlinBuiltIns.getInstance()
|
||||
}
|
||||
|
||||
public interface ModuleDependencies {
|
||||
|
||||
Reference in New Issue
Block a user