Filter out non-builtin package fragments from module when needed
In subsequent commits, a JVM module will be able to have up to two package fragments for a given package FQ name. For example, for package "kotlin" in kotlin-runtime.jar there will be a LazyJavaPackageFragment with binary (Kotlin+Java) dependencies, and a BuiltInsPackageFragment for built-ins metadata (which is loaded from kotlin/kotlin.kotlin_builtins)
This commit is contained in:
+2
-1
@@ -17,6 +17,7 @@
|
||||
package org.jetbrains.kotlin.serialization.builtins
|
||||
|
||||
import com.intellij.psi.search.GlobalSearchScope
|
||||
import org.jetbrains.kotlin.builtins.BuiltInsPackageFragment
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns.*
|
||||
import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport
|
||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||
@@ -68,7 +69,7 @@ abstract class AbstractBuiltInsWithJDKMembersTest : KotlinTestWithEnvironment()
|
||||
val packageFragmentProvider = emptyModule.builtIns.builtInsModule.packageFragmentProvider
|
||||
|
||||
for (packageFqName in listOf<FqName>(BUILT_INS_PACKAGE_FQ_NAME, COLLECTIONS_PACKAGE_FQ_NAME, RANGES_PACKAGE_FQ_NAME)) {
|
||||
val loaded = packageFragmentProvider.getPackageFragments(packageFqName).single()
|
||||
val loaded = packageFragmentProvider.getPackageFragments(packageFqName).filterIsInstance<BuiltInsPackageFragment>().single()
|
||||
RecursiveDescriptorComparator.validateAndCompareDescriptorWithFile(
|
||||
loaded, configuration,
|
||||
File("compiler/testData/builtin-classes/$builtinVersionName/" + packageFqName.asString().replace('.', '-') + ".txt"))
|
||||
|
||||
Reference in New Issue
Block a user