forked from OSchip/llvm-project
[clang-tidy] Fix modernize-use-nullptr only warns the first NULL argument.
Reviewers: alexfh Reviewed By: alexfh Subscribers: xazax.hun, cfe-commits Differential Revision: https://reviews.llvm.org/D34526 llvm-svn: 306651
This commit is contained in:
parent
6a3f5552cc
commit
f193bff5be
|
@ -235,7 +235,7 @@ public:
|
|||
allArgUsesValid(C)) {
|
||||
replaceWithNullptr(Check, SM, FileLocStart, FileLocEnd);
|
||||
}
|
||||
return skipSubTree();
|
||||
return true;
|
||||
}
|
||||
|
||||
if (SM.isMacroBodyExpansion(StartLoc) && SM.isMacroBodyExpansion(EndLoc)) {
|
||||
|
|
|
@ -275,3 +275,31 @@ void test_cast_nullptr() {
|
|||
G(g(static_cast<char*>(nullptr)));
|
||||
G(g(static_cast<const char*>(nullptr)));
|
||||
}
|
||||
|
||||
// Test on recognizing multiple NULLs.
|
||||
class H {
|
||||
public:
|
||||
H(bool);
|
||||
};
|
||||
|
||||
#define T(expression) H(expression);
|
||||
bool h(int *, int *, int * = nullptr);
|
||||
void test_multiple_nulls() {
|
||||
T(h(NULL, NULL));
|
||||
// CHECK-MESSAGES: :[[@LINE-1]]:7: warning: use nullptr
|
||||
// CHECK-MESSAGES: :[[@LINE-2]]:13: warning: use nullptr
|
||||
// CHECK-FIXES: T(h(nullptr, nullptr));
|
||||
T(h(NULL, nullptr));
|
||||
// CHECK-MESSAGES: :[[@LINE-1]]:7: warning: use nullptr
|
||||
// CHECK-FIXES: T(h(nullptr, nullptr));
|
||||
T(h(nullptr, NULL));
|
||||
// CHECK-MESSAGES: :[[@LINE-1]]:16: warning: use nullptr
|
||||
// CHECK-FIXES: T(h(nullptr, nullptr));
|
||||
T(h(nullptr, nullptr));
|
||||
T(h(NULL, NULL, NULL));
|
||||
// CHECK-MESSAGES: :[[@LINE-1]]:7: warning: use nullptr
|
||||
// CHECK-MESSAGES: :[[@LINE-2]]:13: warning: use nullptr
|
||||
// CHECK-MESSAGES: :[[@LINE-3]]:19: warning: use nullptr
|
||||
// CHECK-FIXES: T(h(nullptr, nullptr, nullptr));
|
||||
}
|
||||
#undef T
|
||||
|
|
Loading…
Reference in New Issue