diff --git a/src/libs/cplusplus/TokenUnderCursor.cpp b/src/libs/cplusplus/TokenUnderCursor.cpp
index d75688ab3fcc06a92d863ed80d3ecbcd8361b0a5..d857753d30671af730016c158ce86bfe1fe85bfb 100644
--- a/src/libs/cplusplus/TokenUnderCursor.cpp
+++ b/src/libs/cplusplus/TokenUnderCursor.cpp
@@ -49,7 +49,7 @@ SimpleToken TokenUnderCursor::operator()(const QTextCursor &cursor, QTextBlock *
     tokenize.setSkipComments(false);
 
     QTextBlock block = cursor.block();
-    int column = cursor.columnNumber();
+    int column = cursor.position() - cursor.block().position();
 
     _text = block.text();
     _tokens = tokenize(_text, previousBlockState(block));