diff --git a/src/plugins/cpptools/cppcodecompletion.cpp b/src/plugins/cpptools/cppcodecompletion.cpp
index e45d9261c69b2c974b840804b462ede335726900..a68a4cd127c778474197865d43658732e0ecb267 100644
--- a/src/plugins/cpptools/cppcodecompletion.cpp
+++ b/src/plugins/cpptools/cppcodecompletion.cpp
@@ -636,6 +636,16 @@ bool CppCodeCompletion::triggersCompletion(TextEditor::ITextEditable *editor)
 {
     const int pos = editor->position();
     if (startOfOperator(editor, pos, /*token =*/ 0, /*want function call=*/ true) != pos) {
+        if (m_completionOperator == T_POUND) {
+            if (TextEditor::BaseTextEditor *edit = qobject_cast<TextEditor::BaseTextEditor *>(editor->widget())) {
+                QTextCursor tc(edit->document());
+                tc.setPosition(pos);
+                return tc.columnNumber() == 1;
+            }
+
+            return false;
+        }
+
         return true;
     }