Call Resolver: Report UNRESOLVED_REFERENCE instead of EXPRESSION_EXPECTED_PACKAGE_FOUND when callee expession is resolved to package
This commit is contained in:
+3
-2
@@ -212,9 +212,10 @@ public class CallExpressionResolver {
|
||||
context, "trace to resolve as variable with 'invoke' call", callExpression);
|
||||
JetType type = getVariableType((JetSimpleNameExpression) calleeExpression, receiver, callOperationNode,
|
||||
context.replaceTraceAndCache(temporaryForVariable), result);
|
||||
if (result[0]) {
|
||||
Qualifier qualifier = temporaryForVariable.trace.get(BindingContext.QUALIFIER, calleeExpression);
|
||||
if (result[0] && (qualifier == null || qualifier.getPackageView() == null)) {
|
||||
temporaryForVariable.commit();
|
||||
context.trace.report(FUNCTION_EXPECTED.on((JetReferenceExpression) calleeExpression, calleeExpression,
|
||||
context.trace.report(FUNCTION_EXPECTED.on(calleeExpression, calleeExpression,
|
||||
type != null ? type : ErrorUtils.createErrorType("")));
|
||||
return JetTypeInfo.create(null, context.dataFlowInfo);
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ fun x(f : Foo) {
|
||||
f.<!NO_VALUE_FOR_PARAMETER, FUNCTION_CALL_EXPECTED!>bar<!>
|
||||
|
||||
f.<!FUNCTION_EXPECTED!>a<!>()
|
||||
<!EXPRESSION_EXPECTED_PACKAGE_FOUND, FUNCTION_EXPECTED!>c<!>()
|
||||
<!UNRESOLVED_REFERENCE!>c<!>()
|
||||
<!FUNCTION_EXPECTED!>R<!>()
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
package to
|
||||
|
||||
import a.a
|
||||
|
||||
fun f(i: a.a) {
|
||||
a.a
|
||||
a.a()
|
||||
a()
|
||||
}
|
||||
Reference in New Issue
Block a user