Fixed incremental compilation for removed files.

This commit is contained in:
Evgeny Gerashchenko
2014-07-03 17:33:18 +04:00
parent 909a30c279
commit 11c51cf2a8
@@ -25,6 +25,7 @@ import com.intellij.util.ArrayUtil;
import com.intellij.util.SmartList; import com.intellij.util.SmartList;
import com.intellij.util.containers.ContainerUtil; import com.intellij.util.containers.ContainerUtil;
import kotlin.Function0; import kotlin.Function0;
import org.jetbrains.annotations.Mutable;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.codegen.context.CodegenContext; import org.jetbrains.jet.codegen.context.CodegenContext;
@@ -157,7 +158,7 @@ public class PackageCodegen {
return callables; return callables;
} }
private void generateDelegationsToPreviouslyCompiled(@NotNull Map<CallableMemberDescriptor, Runnable> generateCallableMemberTasks) { private void generateDelegationsToPreviouslyCompiled(@NotNull @Mutable Map<CallableMemberDescriptor, Runnable> generateCallableMemberTasks) {
for (final DeserializedCallableMemberDescriptor member : previouslyCompiledCallables) { for (final DeserializedCallableMemberDescriptor member : previouslyCompiledCallables) {
generateCallableMemberTasks.put(member, new Runnable() { generateCallableMemberTasks.put(member, new Runnable() {
@Override @Override
@@ -223,6 +224,8 @@ public class PackageCodegen {
} }
} }
generateDelegationsToPreviouslyCompiled(generateCallableMemberTasks);
if (!generateCallableMemberTasks.isEmpty()) { if (!generateCallableMemberTasks.isEmpty()) {
generatePackageFacadeClass(generateCallableMemberTasks, bindings); generatePackageFacadeClass(generateCallableMemberTasks, bindings);
} }
@@ -234,8 +237,6 @@ public class PackageCodegen {
) { ) {
generateKotlinPackageReflectionField(); generateKotlinPackageReflectionField();
generateDelegationsToPreviouslyCompiled(tasks);
for (CallableMemberDescriptor member : Ordering.from(MemberComparator.INSTANCE).sortedCopy(tasks.keySet())) { for (CallableMemberDescriptor member : Ordering.from(MemberComparator.INSTANCE).sortedCopy(tasks.keySet())) {
tasks.get(member).run(); tasks.get(member).run();
} }