summaryrefslogtreecommitdiff
path: root/src/qdoc/cppcodeparser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qdoc/cppcodeparser.cpp')
-rw-r--r--src/qdoc/cppcodeparser.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/qdoc/cppcodeparser.cpp b/src/qdoc/cppcodeparser.cpp
index 7a930e3ad..03b74b83e 100644
--- a/src/qdoc/cppcodeparser.cpp
+++ b/src/qdoc/cppcodeparser.cpp
@@ -1179,7 +1179,7 @@ bool CppCodeParser::matchTemplateHeader()
return matchTemplateAngles();
}
-bool CppCodeParser::matchDataType(CodeChunk *dataType, QString *var)
+bool CppCodeParser::matchDataType(CodeChunk *dataType, QString *var, bool qProp)
{
/*
This code is really hard to follow... sorry. The loop is there to match
@@ -1305,6 +1305,10 @@ bool CppCodeParser::matchDataType(CodeChunk *dataType, QString *var)
if (varComment.exactMatch(previousLexeme()))
*var = varComment.cap(1);
}
+ else if (qProp && (match(Tok_default) || match(Tok_final))) {
+ // Hack to make 'default' and 'final' work again in Q_PROPERTY
+ *var = previousLexeme();
+ }
}
if (tok == Tok_LeftBracket) {
@@ -2015,7 +2019,7 @@ bool CppCodeParser::matchProperty(Aggregate *parent)
QString name;
CodeChunk dataType;
- if (!matchDataType(&dataType, &name))
+ if (!matchDataType(&dataType, &name, true))
return false;
PropertyNode *property = new PropertyNode(parent, name);