From b35d340056adeb840e606c25767a5acee169630a Mon Sep 17 00:00:00 2001 From: Svetlana Isakova Date: Mon, 20 Feb 2012 20:12:50 +0400 Subject: [PATCH] KT-1270 Poor highlighting when trying to dereference a nullable reference --- .../expressions/BasicExpressionTypingVisitor.java | 2 +- .../tests/nullabilityAndAutoCasts/kt1270.jet | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 compiler/testData/diagnostics/tests/nullabilityAndAutoCasts/kt1270.jet diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.java b/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.java index 3b75a149b29..85df4a44b45 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.java @@ -611,7 +611,7 @@ public class BasicExpressionTypingVisitor extends ExpressionTypingVisitor { checkSuper(receiver, resultingDescriptor, context.trace, selectorExpression); return resultingDescriptor.getOutType(); } - if (resolutionResult.isAmbiguity()) { + if (resolutionResult.isAmbiguity() || resolutionResult.singleResult()) { temporaryTrace.commit(); return null; } diff --git a/compiler/testData/diagnostics/tests/nullabilityAndAutoCasts/kt1270.jet b/compiler/testData/diagnostics/tests/nullabilityAndAutoCasts/kt1270.jet new file mode 100644 index 00000000000..e718fda7f56 --- /dev/null +++ b/compiler/testData/diagnostics/tests/nullabilityAndAutoCasts/kt1270.jet @@ -0,0 +1,13 @@ +//KT-1270 Poor highlighting when trying to dereference a nullable reference +//+JDK + +package kt1270 + +fun foo() { + val sc = java.util.HashMap()[""] + val value = sc.value +} + +private class SomeClass() { + val value : Int = 5 +}