diff --git a/src/libs/cplusplus/ResolveExpression.cpp b/src/libs/cplusplus/ResolveExpression.cpp
index a24751562703301a2e6878a507a6a85fc4b5fc27..939c48eb18c585d336bd6e279ad65b73c76f75d0 100644
--- a/src/libs/cplusplus/ResolveExpression.cpp
+++ b/src/libs/cplusplus/ResolveExpression.cpp
@@ -669,8 +669,11 @@ bool ResolveExpression::visit(ObjCMessageExpressionAST *ast)
             }
         }
 
-        if (binding)
-            addResults(binding->lookup(ast->selector->name));
+        if (binding) {
+            foreach (Symbol *s, binding->lookup(ast->selector->name))
+                if (ObjCMethod *m = s->asObjCMethod())
+                    addResult(m->returnType(), result.scope());
+        }
     }
 
     return false;