diff options
author | Nikolai Kosjar <nikolai.kosjar@qt.io> | 2019-10-07 14:31:32 +0200 |
---|---|---|
committer | Nikolai Kosjar <nikolai.kosjar@qt.io> | 2019-10-08 09:20:10 +0000 |
commit | 54fefd89b86f9b7c3496317bcfcf3882ff72e67c (patch) | |
tree | 284667f5855e901148f5e7f70aae87a4c28db275 /src/libs/cplusplus | |
parent | c2aaa9340881f8220c5683d253a147c2cd77ff6e (diff) | |
download | qt-creator-54fefd89b86f9b7c3496317bcfcf3882ff72e67c.tar.gz |
C++: Transfer noexcept specifier for refactoring actions
This applies for e.g.
* "Add Definition..." (on function decl)
* "Move Definition..." (on function decl)
* "Insert Virtual Functions of Base Class" (on class specifier)
Fixes: QTCREATORBUG-11849
Fixes: QTCREATORBUG-19699
Change-Id: I0d259bc1782470f3b3f19617230005a5594a5cca
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src/libs/cplusplus')
-rw-r--r-- | src/libs/cplusplus/CppRewriter.cpp | 1 | ||||
-rw-r--r-- | src/libs/cplusplus/TypePrettyPrinter.cpp | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/libs/cplusplus/CppRewriter.cpp b/src/libs/cplusplus/CppRewriter.cpp index fdb5de3851..c52963b023 100644 --- a/src/libs/cplusplus/CppRewriter.cpp +++ b/src/libs/cplusplus/CppRewriter.cpp @@ -136,6 +136,7 @@ public: funTy->setConst(type->isConst()); funTy->setVolatile(type->isVolatile()); funTy->setRefQualifier(type->refQualifier()); + funTy->setExceptionSpecification(type->exceptionSpecification()); funTy->setName(rewrite->rewriteName(type->name())); diff --git a/src/libs/cplusplus/TypePrettyPrinter.cpp b/src/libs/cplusplus/TypePrettyPrinter.cpp index c46117dde7..2ad59c55c8 100644 --- a/src/libs/cplusplus/TypePrettyPrinter.cpp +++ b/src/libs/cplusplus/TypePrettyPrinter.cpp @@ -487,6 +487,12 @@ void TypePrettyPrinter::visit(Function *type) ? QLatin1String("&") : QLatin1String("&&"); } + + // add exception specifier + if (const StringLiteral *spec = type->exceptionSpecification()) { + appendSpace(); + _text += QLatin1String(spec->chars()); + } } } |