KT-1763 UnsupportedOperationException during creating ImportClassAndFunFix
#KT-1763 fixed
This commit is contained in:
+12
-3
@@ -30,14 +30,17 @@ import org.jetbrains.jet.lang.psi.*;
|
|||||||
import org.jetbrains.jet.lang.resolve.*;
|
import org.jetbrains.jet.lang.resolve.*;
|
||||||
import org.jetbrains.jet.lang.resolve.calls.autocasts.DataFlowInfo;
|
import org.jetbrains.jet.lang.resolve.calls.autocasts.DataFlowInfo;
|
||||||
import org.jetbrains.jet.lang.resolve.calls.inference.*;
|
import org.jetbrains.jet.lang.resolve.calls.inference.*;
|
||||||
import org.jetbrains.jet.lang.resolve.scopes.*;
|
import org.jetbrains.jet.lang.resolve.scopes.JetScope;
|
||||||
|
import org.jetbrains.jet.lang.resolve.scopes.WritableScope;
|
||||||
|
import org.jetbrains.jet.lang.resolve.scopes.WritableScopeImpl;
|
||||||
import org.jetbrains.jet.lang.resolve.scopes.receivers.ExpressionReceiver;
|
import org.jetbrains.jet.lang.resolve.scopes.receivers.ExpressionReceiver;
|
||||||
import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverDescriptor;
|
import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverDescriptor;
|
||||||
import org.jetbrains.jet.lang.types.checker.JetTypeChecker;
|
|
||||||
import org.jetbrains.jet.lang.types.lang.JetStandardClasses;
|
|
||||||
import org.jetbrains.jet.lang.types.JetType;
|
import org.jetbrains.jet.lang.types.JetType;
|
||||||
|
import org.jetbrains.jet.lang.types.NamespaceType;
|
||||||
import org.jetbrains.jet.lang.types.TypeUtils;
|
import org.jetbrains.jet.lang.types.TypeUtils;
|
||||||
import org.jetbrains.jet.lang.types.Variance;
|
import org.jetbrains.jet.lang.types.Variance;
|
||||||
|
import org.jetbrains.jet.lang.types.checker.JetTypeChecker;
|
||||||
|
import org.jetbrains.jet.lang.types.lang.JetStandardClasses;
|
||||||
import org.jetbrains.jet.lang.types.lang.JetStandardLibrary;
|
import org.jetbrains.jet.lang.types.lang.JetStandardLibrary;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -209,6 +212,12 @@ public class ExpressionTypingUtils {
|
|||||||
@NotNull CallableDescriptor receiverArgument
|
@NotNull CallableDescriptor receiverArgument
|
||||||
) {
|
) {
|
||||||
JetType type = expectedReceiver.getType();
|
JetType type = expectedReceiver.getType();
|
||||||
|
|
||||||
|
if (type instanceof NamespaceType) {
|
||||||
|
// This fake class ruins standard algorithms
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
if (checkReceiverResolution(expectedReceiver, type, receiverArgument)) return true;
|
if (checkReceiverResolution(expectedReceiver, type, receiverArgument)) return true;
|
||||||
if (type.isNullable()) {
|
if (type.isNullable()) {
|
||||||
JetType notNullableType = TypeUtils.makeNotNullable(type);
|
JetType notNullableType = TypeUtils.makeNotNullable(type);
|
||||||
|
|||||||
Reference in New Issue
Block a user