diff options
| author | Aaron Ballman <aaron@aaronballman.com> | 2019-10-30 13:44:18 -0400 |
|---|---|---|
| committer | Aaron Ballman <aaron@aaronballman.com> | 2019-10-30 13:45:37 -0400 |
| commit | 661d2ce619e05dc47a9a232333c01dcba445cd13 (patch) | |
| tree | a57afb58737ac71cadec2113ddf6dd706ea58a57 /clang-tools-extra/clang-tidy/modernize | |
| parent | 5cc605bcc183ffcee9386a37e55b4863d72b045c (diff) | |
| download | bcm5719-llvm-661d2ce619e05dc47a9a232333c01dcba445cd13.tar.gz bcm5719-llvm-661d2ce619e05dc47a9a232333c01dcba445cd13.zip | |
Fix modernize-use-nodiscard for classes marked [[nodiscard]]
Current implementation suggests to add [[nodiscard]] to methods even if the
return type is marked already as [[nodiscard]].
Patch by Eugene Sedykh.
Diffstat (limited to 'clang-tools-extra/clang-tidy/modernize')
| -rw-r--r-- | clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.cpp b/clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.cpp index d2ac7d529ce..f9d72f5d62c 100644 --- a/clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.cpp +++ b/clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.cpp @@ -100,7 +100,9 @@ void UseNodiscardCheck::registerMatchers(MatchFinder *Finder) { cxxMethodDecl( allOf(isConst(), isDefinitionOrInline(), unless(anyOf( - returns(voidType()), isNoReturn(), isOverloadedOperator(), + returns(voidType()), + returns(hasDeclaration(decl(hasAttr(clang::attr::WarnUnusedResult)))), + isNoReturn(), isOverloadedOperator(), isVariadic(), hasTemplateReturnType(), hasClassMutableFields(), isConversionOperator(), hasAttr(clang::attr::WarnUnusedResult), |

