diff options
author | Rainer Keller <Rainer.Keller@qt.io> | 2017-01-11 13:39:15 +0100 |
---|---|---|
committer | Rainer Keller <Rainer.Keller@qt.io> | 2017-01-12 11:23:29 +0000 |
commit | b7ccfd3c107e2edc3823cd79cf67d8e4e34f668b (patch) | |
tree | fbc725d6f97b3498fad5e4f6e1051f25a32aca69 /src/qdoc/cppcodeparser.cpp | |
parent | 980fbea7adb3d31b8017f844bc8856612d3f7cff (diff) | |
download | qttools-b7ccfd3c107e2edc3823cd79cf67d8e4e34f668b.tar.gz |
qdoc: Implement C++11 'override' specifier support
Change-Id: Iad837dbdaf492eff77ced4d93dc05095e1d89400
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Michael Winkelmann <Michael.winkelmann@qt.io>
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
Diffstat (limited to 'src/qdoc/cppcodeparser.cpp')
-rw-r--r-- | src/qdoc/cppcodeparser.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/qdoc/cppcodeparser.cpp b/src/qdoc/cppcodeparser.cpp index c7d1e3507..740216b1f 100644 --- a/src/qdoc/cppcodeparser.cpp +++ b/src/qdoc/cppcodeparser.cpp @@ -1314,8 +1314,8 @@ bool CppCodeParser::matchDataType(CodeChunk *dataType, QString *var, bool qProp) 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 + else if (qProp && (match(Tok_default) || match(Tok_final) || match(Tok_override))) { + // Hack to make 'default', 'final' and 'override' work again in Q_PROPERTY *var = previousLexeme(); } } @@ -1587,6 +1587,7 @@ bool CppCodeParser::matchFunctionDecl(Aggregate *parent, // look for const bool matchedConst = match(Tok_const); bool matchFinal = match(Tok_final); + bool matchOverride = match(Tok_override); bool isDeleted = false; bool isDefaulted = false; @@ -1706,6 +1707,7 @@ bool CppCodeParser::matchFunctionDecl(Aggregate *parent, func->setIsDeleted(isDeleted); func->setIsDefaulted(isDefaulted); func->setFinal(matchFinal); + func->setOverride(matchOverride); if (isQPrivateSignal) func->setPrivateSignal(); } @@ -2073,7 +2075,7 @@ bool CppCodeParser::matchProperty(Aggregate *parent) property->setDataType(dataType.toString()); while (tok != Tok_RightParen && tok != Tok_Eoi) { - if (!match(Tok_Ident) && !match(Tok_default) && !match(Tok_final)) + if (!match(Tok_Ident) && !match(Tok_default) && !match(Tok_final) && !match(Tok_override)) return false; QString key = previousLexeme(); QString value; |