[clang-tools-extra] [clang-tidy] modernize-use-nullptr matches "NULL" in templates (PR #109169)

Thomas Köppe via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 19 13:35:57 PDT 2024


================
@@ -84,6 +84,29 @@ void test_macro_expansion4() {
 #undef MY_NULL
 }
 
+template <typename T> struct pear {
+  // If you say __null (or NULL), we assume that T will always be a pointer
----------------
tkoeppe wrote:

That was the whole thing we were belaboring earlier -- this test defines `NULL` to `0` and thus isn't caught, but in production, it's defined as `__null`, where the new code catches it. We don't actually have code to detect "this was spelled as a macro", I'm afraid (right, @zygoloid?).

https://github.com/llvm/llvm-project/pull/109169


More information about the cfe-commits mailing list