aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/cppeditor/cppquickfixes.cpp
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2020-10-27 11:07:50 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2020-10-27 11:40:37 +0000
commit0ebb004d8510b9c28fd0faab4f5ba53c490c28bd (patch)
tree02b09ffc15940e0d01402afeffedfb35b2a60115 /src/plugins/cppeditor/cppquickfixes.cpp
parenteef708192e340551c37a7307085c77fa326a0a78 (diff)
CppEditor: Make "Complete Switch" quickfix work with enum classesv4.14.0-beta1
Fixes: QTCREATORBUG-20475 Change-Id: Id21a007ab4b652dcfe49d97bfa4c9fa77bacf8c4 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/plugins/cppeditor/cppquickfixes.cpp')
-rw-r--r--src/plugins/cppeditor/cppquickfixes.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/plugins/cppeditor/cppquickfixes.cpp b/src/plugins/cppeditor/cppquickfixes.cpp
index 2265d2ea5c..a59f2c18f2 100644
--- a/src/plugins/cppeditor/cppquickfixes.cpp
+++ b/src/plugins/cppeditor/cppquickfixes.cpp
@@ -2740,7 +2740,12 @@ static Enum *findEnum(const QList<LookupItem> &results, const LookupContext &ctx
return e;
if (const NamedType *namedType = type->asNamedType()) {
if (ClassOrNamespace *con = ctxt.lookupType(namedType->name(), result.scope())) {
- const QList<Enum *> enums = con->unscopedEnums();
+ QList<Enum *> enums = con->unscopedEnums();
+ const QList<Symbol *> symbols = con->symbols();
+ for (Symbol * const s : symbols) {
+ if (const auto e = s->asEnum())
+ enums << e;
+ }
const Name *referenceName = namedType->name();
if (const QualifiedNameId *qualifiedName = referenceName->asQualifiedNameId())
referenceName = qualifiedName->name();