diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/ClosureCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/ClosureCodegen.java index e0cc263d9fa..d120d109d07 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/ClosureCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/ClosureCodegen.java @@ -236,21 +236,22 @@ public class ClosureCodegen extends ObjectOrClosureCodegen { iv.aconst(null); // @todo iv.invokespecial(funClass, "", "(Ljet/typeinfo/TypeInfo;)V"); - i = 1; - for (Type type : argTypes) { - StackValue.local(0, JetTypeMapper.TYPE_OBJECT).put(JetTypeMapper.TYPE_OBJECT, iv); - StackValue.local(i, type).put(type, iv); - final String fieldName; - if (captureThis && i == 1) { - fieldName = "this$0"; - } - else { - if (captureReceiver != null && (captureThis && i == 2 || !captureThis && i == 1)) { - fieldName = "receiver$0"; + i = 1; + for (Type type : argTypes) { + StackValue.local(0, JetTypeMapper.TYPE_OBJECT).put(JetTypeMapper.TYPE_OBJECT, iv); + StackValue.local(i, type).put(type, iv); + final String fieldName; + if (captureThis && i == 1) { + fieldName = "this$0"; } else { - fieldName = "$" + (i); - i++; + if (captureReceiver != null && (captureThis && i == 2 || !captureThis && i == 1)) { + fieldName = "receiver$0"; + } + else { + fieldName = "$" + (i); + i++; + } } } diff --git a/idea/src/org/jetbrains/jet/plugin/java/JavaElementFinder.java b/idea/src/org/jetbrains/jet/plugin/java/JavaElementFinder.java index 5dcc079631f..6b66dda97b0 100644 --- a/idea/src/org/jetbrains/jet/plugin/java/JavaElementFinder.java +++ b/idea/src/org/jetbrains/jet/plugin/java/JavaElementFinder.java @@ -28,6 +28,7 @@ import com.intellij.util.containers.Stack; import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.codegen.ClassBuilder; import org.jetbrains.jet.codegen.ClassBuilderFactory; +import org.jetbrains.jet.codegen.CodegenUtil; import org.jetbrains.jet.codegen.GenerationState; import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetNamespace; @@ -81,7 +82,7 @@ public class JavaElementFinder extends PsiElementFinder { for (PsiFile psiFile : psiFiles) { if (psiFile instanceof JetFile) { - if (qualifiedName.equals(((JetFile) psiFile).getRootNamespace().getFQName())) { + if (qualifiedName.equals(CodegenUtil.getFQName(((JetFile) psiFile).getRootNamespace()))) { return new PsiPackageImpl(psiFile.getManager(), qualifiedName); } } @@ -144,7 +145,7 @@ public class JavaElementFinder extends PsiElementFinder { final GenerationState state = new GenerationState(project, builderFactory) { @Override protected void generateNamespace(JetNamespace namespace) { - final PsiJavaFileStubImpl fileStub = new PsiJavaFileStubImpl(namespace.getFQName(), true); + final PsiJavaFileStubImpl fileStub = new PsiJavaFileStubImpl(CodegenUtil.getFQName(namespace), true); PsiManager manager = PsiManager.getInstance(project); stubStack.push(fileStub);