[clang-tools-extra] r369739 - [clang-tidy] Don't emit google-runtime-references warning for functions defined in macros.

Haojian Wu via cfe-commits cfe-commits at lists.llvm.org
Fri Aug 23 01:47:27 PDT 2019


Author: hokein
Date: Fri Aug 23 01:47:27 2019
New Revision: 369739

URL: http://llvm.org/viewvc/llvm-project?rev=369739&view=rev
Log:
[clang-tidy] Don't emit google-runtime-references warning for functions defined in macros.

Summary:
The macro are usually defined in the common/base headers which are hard
for normal users to modify it.

Reviewers: gribozavr, alexfh

Subscribers: xazax.hun, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D66631

Modified:
    clang-tools-extra/trunk/clang-tidy/google/NonConstReferences.cpp
    clang-tools-extra/trunk/test/clang-tidy/google-runtime-references.cpp

Modified: clang-tools-extra/trunk/clang-tidy/google/NonConstReferences.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/google/NonConstReferences.cpp?rev=369739&r1=369738&r2=369739&view=diff
==============================================================================
--- clang-tools-extra/trunk/clang-tidy/google/NonConstReferences.cpp (original)
+++ clang-tools-extra/trunk/clang-tidy/google/NonConstReferences.cpp Fri Aug 23 01:47:27 2019
@@ -52,6 +52,9 @@ void NonConstReferences::check(const Mat
   if (Function == nullptr || Function->isImplicit())
     return;
 
+  if (Function->getLocation().isMacroID())
+    return;
+
   if (!Function->isCanonicalDecl())
     return;
 

Modified: clang-tools-extra/trunk/test/clang-tidy/google-runtime-references.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/google-runtime-references.cpp?rev=369739&r1=369738&r2=369739&view=diff
==============================================================================
--- clang-tools-extra/trunk/test/clang-tidy/google-runtime-references.cpp (original)
+++ clang-tools-extra/trunk/test/clang-tidy/google-runtime-references.cpp Fri Aug 23 01:47:27 2019
@@ -149,3 +149,7 @@ void f8(B &);
 }
 void f9(whitelist::A &);
 void f10(whitelist::B &);
+
+#define DEFINE_F(name) void name(int& a)
+
+DEFINE_F(func) {}




More information about the cfe-commits mailing list