diff --git a/src/plugins/qmljseditor/qmljseditor.cpp b/src/plugins/qmljseditor/qmljseditor.cpp
index 1a8490dc673d47827c65f8b10eb24b2b8201fbc4..d7e3d2add5e761b1d7f813332627c9e44a7ef42d 100644
--- a/src/plugins/qmljseditor/qmljseditor.cpp
+++ b/src/plugins/qmljseditor/qmljseditor.cpp
@@ -40,6 +40,7 @@
 #include "qmljsautocompleter.h"
 
 #include <qmljs/qmljsbind.h>
+#include <qmljs/qmljsevaluate.h>
 #include <qmljs/qmljsdocument.h>
 #include <qmljs/qmljsicontextpane.h>
 #include <qmljs/qmljslookupcontext.h>
@@ -1310,7 +1311,8 @@ TextEditor::BaseTextEditor::Link QmlJSTextEditor::findLinkAt(const QTextCursor &
     }
 
     LookupContext::Ptr lookupContext = semanticInfo.lookupContext(semanticInfo.astPath(cursorPosition));
-    const Interpreter::Value *value = lookupContext->evaluate(node);
+    Evaluate evaluator(lookupContext->context());
+    const Interpreter::Value *value = evaluator.reference(node);
 
     QString fileName;
     int line = 0, column = 0;