summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2014-09-10 08:48:30 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2014-09-10 08:48:30 +0000
commitad335cf690c19510d62a3b627e2657bf9b8920fd (patch)
tree96c52ea22f939eee36c3f5f77caa94fc4894284f /clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
parenteb19aea4f987eefe344304de1a90183db973c861 (diff)
downloadbcm5719-llvm-ad335cf690c19510d62a3b627e2657bf9b8920fd.tar.gz
bcm5719-llvm-ad335cf690c19510d62a3b627e2657bf9b8920fd.zip
[clang-tidy] Don't try to fix header guard #endif comments if there are escaped
newlines involved. Getting that right is just not worth it. llvm-svn: 217480
Diffstat (limited to 'clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp')
-rw-r--r--clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp b/clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
index 92ae7cc0293..c175f2b5928 100644
--- a/clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
+++ b/clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
@@ -143,6 +143,13 @@ public:
*EndIfLenPtr = EndIfLen;
StringRef EndIfStr(EndIfData, EndIfLen);
+
+ // Give up if there's an escaped newline.
+ size_t FindEscapedNewline = EndIfStr.find_last_not_of(' ');
+ if (FindEscapedNewline != StringRef::npos &&
+ EndIfStr[FindEscapedNewline] == '\\')
+ return false;
+
return (EndIf.isValid() && !EndIfStr.endswith("// " + HeaderGuard.str()) &&
!EndIfStr.endswith("/* " + HeaderGuard.str() + " */"));
}
OpenPOWER on IntegriCloud