diff --git a/src/plugins/cpptools/cppcodecompletion.cpp b/src/plugins/cpptools/cppcodecompletion.cpp
index 2a714dbab502b9046af5a834189edee6aea357ff..9f2a5cd8b9c20902d1a8b4517ad2b5d1a2e355e0 100644
--- a/src/plugins/cpptools/cppcodecompletion.cpp
+++ b/src/plugins/cpptools/cppcodecompletion.cpp
@@ -1276,7 +1276,7 @@ void CppCodeCompletion::completeNamespace(const QList<Symbol *> &candidates,
     }
 
     foreach (Scope *scope, todo) {
-        if (! scope->isNamespaceScope())
+        if (! (scope->isNamespaceScope() || scope->isEnumScope()))
             continue;
 
         addCompletionItem(scope->owner());
@@ -1300,7 +1300,7 @@ void CppCodeCompletion::completeClass(const QList<Symbol *> &candidates,
     context.expand(klass->members(), context.visibleScopes(), &todo);
 
     foreach (Scope *scope, todo) {
-        if (! scope->isClassScope())
+        if (! (scope->isClassScope() || scope->isEnumScope()))
             continue;
 
         addCompletionItem(scope->owner());