diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2014-09-10 08:48:30 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2014-09-10 08:48:30 +0000 |
commit | ad335cf690c19510d62a3b627e2657bf9b8920fd (patch) | |
tree | 96c52ea22f939eee36c3f5f77caa94fc4894284f /clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp | |
parent | eb19aea4f987eefe344304de1a90183db973c861 (diff) | |
download | bcm5719-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.cpp | 7 |
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() + " */")); } |