Revert "Minor, move SpecialNames.isSafeIdentifier check a little earlier"

This reverts commit a3055edda9.

It turns out, this re-introduces an AssertionError at ClassId.<init> ("Class
name must not be root") when LazyJavaPackageScope#getContributedClassifier is
called during SAM constructor resolution below in
LazyJavaPackageScope#computeNonDeclaredFunctions, which was overlooked at the
time the commit was pushed
This commit is contained in:
Alexander Udalov
2016-05-04 17:41:49 +03:00
parent 16c38a2415
commit 17dacb1efa
3 changed files with 11 additions and 9 deletions
@@ -21,6 +21,7 @@ import org.jetbrains.kotlin.incremental.components.LookupLocation
import org.jetbrains.kotlin.incremental.components.NoLookupLocation
import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.name.SpecialNames
import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter
import org.jetbrains.kotlin.serialization.ProtoBuf
import org.jetbrains.kotlin.serialization.deserialization.DeserializationComponents
@@ -48,7 +49,8 @@ open class DeserializedPackageMemberScope(
= computeDescriptors(kindFilter, nameFilter, NoLookupLocation.WHEN_GET_ALL_DESCRIPTORS)
override fun getContributedClassifier(name: Name, location: LookupLocation): ClassifierDescriptor? {
if (name in classNames || c.components.fictitiousClassDescriptorFactory.shouldCreateClass(packageFqName, name)) {
if (SpecialNames.isSafeIdentifier(name) &&
(name in classNames || c.components.fictitiousClassDescriptorFactory.shouldCreateClass(packageFqName, name))) {
return getClassDescriptor(name)
}
return null