codegen: fix calls to global functions when loaded from java descriptors
This commit is contained in:
+4
-2
@@ -633,7 +633,8 @@ public class JavaDescriptorResolver {
|
||||
resolveParentDescriptor(psiPackage),
|
||||
Collections.<AnnotationDescriptor>emptyList(), // TODO
|
||||
name == null ? JAVA_ROOT : name,
|
||||
name == null ? JAVA_ROOT : psiPackage.getQualifiedName()
|
||||
name == null ? JAVA_ROOT : psiPackage.getQualifiedName(),
|
||||
true
|
||||
);
|
||||
|
||||
namespaceData.namespaceDescriptor.setMemberScope(new JavaPackageScope(psiPackage.getQualifiedName(), namespaceData.namespaceDescriptor, semanticServices));
|
||||
@@ -657,7 +658,8 @@ public class JavaDescriptorResolver {
|
||||
resolveParentDescriptor(psiClass),
|
||||
Collections.<AnnotationDescriptor>emptyList(), // TODO
|
||||
psiClass.getName(),
|
||||
psiClass.getQualifiedName()
|
||||
psiClass.getQualifiedName(),
|
||||
false
|
||||
);
|
||||
namespaceData.namespaceDescriptor.setMemberScope(new JavaClassMembersScope(namespaceData.namespaceDescriptor, psiClass, semanticServices, true));
|
||||
semanticServices.getTrace().record(BindingContext.NAMESPACE, psiClass, namespaceData.namespaceDescriptor);
|
||||
|
||||
+8
-1
@@ -14,11 +14,14 @@ import java.util.List;
|
||||
public class JavaNamespaceDescriptor extends AbstractNamespaceDescriptorImpl {
|
||||
private JetScope memberScope;
|
||||
private final String qualifiedName;
|
||||
/** Namespace of class with static methods */
|
||||
private final boolean namespace;
|
||||
|
||||
public JavaNamespaceDescriptor(DeclarationDescriptor containingDeclaration, List<AnnotationDescriptor> annotations,
|
||||
@NotNull String name, @NotNull String qualifiedName) {
|
||||
@NotNull String name, @NotNull String qualifiedName, boolean namespace) {
|
||||
super(containingDeclaration, annotations, name);
|
||||
this.qualifiedName = qualifiedName;
|
||||
this.namespace = namespace;
|
||||
}
|
||||
|
||||
public void setMemberScope(@NotNull JetScope memberScope) {
|
||||
@@ -34,4 +37,8 @@ public class JavaNamespaceDescriptor extends AbstractNamespaceDescriptorImpl {
|
||||
public String getQualifiedName() {
|
||||
return qualifiedName;
|
||||
}
|
||||
|
||||
public boolean isNamespace() {
|
||||
return namespace;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user