diff options
author | Sam McCall <sam.mccall@gmail.com> | 2019-01-16 08:29:54 +0000 |
---|---|---|
committer | Sam McCall <sam.mccall@gmail.com> | 2019-01-16 08:29:54 +0000 |
commit | ba595fda49ec5e4db6d3f8d90804f2e601272799 (patch) | |
tree | 9d8c45b65ffebd03f8c9b72875c736c43827c731 | |
parent | 6f8dfe3883f9d5503747771d856f80d3d760acb4 (diff) |
[clang-tidy] Avoid fuchsia-overloaded-operator false positive with lambdas after r351047
-rw-r--r-- | clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp | 2 | ||||
-rw-r--r-- | clang-tools-extra/test/clang-tidy/fuchsia-overloaded-operator.cpp | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp b/clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp index 8e6c74f322e..4aab1e01d48 100644 --- a/clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp +++ b/clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp @@ -21,6 +21,8 @@ AST_MATCHER(FunctionDecl, isFuchsiaOverloadedOperator) { if (CXXMethodNode->isCopyAssignmentOperator() || CXXMethodNode->isMoveAssignmentOperator()) return false; + if (CXXMethodNode->getParent()->isLambda()) + return false; } return Node.isOverloadedOperator(); } diff --git a/clang-tools-extra/test/clang-tidy/fuchsia-overloaded-operator.cpp b/clang-tools-extra/test/clang-tidy/fuchsia-overloaded-operator.cpp index be65a329dc6..7f7a36e8c98 100644 --- a/clang-tools-extra/test/clang-tidy/fuchsia-overloaded-operator.cpp +++ b/clang-tools-extra/test/clang-tidy/fuchsia-overloaded-operator.cpp @@ -19,3 +19,5 @@ A operator-(const A &A1, const A &A2); void operator delete(void*, void*) throw(); // CHECK-MESSAGES: [[@LINE-1]]:1: warning: overloading 'operator delete' is disallowed + +auto x = []{}; |