diff options
| -rw-r--r-- | clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp | 5 | ||||
| -rw-r--r-- | clang/test/Analysis/diagnostics/Inputs/include/sys/queue.h | 1 |
2 files changed, 2 insertions, 4 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp b/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp index a397f33c992..00c92d8153e 100644 --- a/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp +++ b/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp @@ -1539,12 +1539,11 @@ LikelyFalsePositiveSuppressionBRVisitor::getEndPath(BugReporterContext &BRC, SourceManager &SM = BRC.getSourceManager(); FullSourceLoc Loc = BR.getLocation(SM).asLocation(); while (Loc.isMacroID()) { - if (SM.isInSystemMacro(Loc) && - (SM.getFilename(SM.getSpellingLoc(Loc)).endswith("sys/queue.h"))) { + Loc = Loc.getSpellingLoc(); + if (SM.getFilename(Loc).endswith("sys/queue.h")) { BR.markInvalid(getTag(), 0); return 0; } - Loc = Loc.getSpellingLoc(); } return 0; diff --git a/clang/test/Analysis/diagnostics/Inputs/include/sys/queue.h b/clang/test/Analysis/diagnostics/Inputs/include/sys/queue.h index e5698ed443b..2740e174f25 100644 --- a/clang/test/Analysis/diagnostics/Inputs/include/sys/queue.h +++ b/clang/test/Analysis/diagnostics/Inputs/include/sys/queue.h @@ -1,4 +1,3 @@ -#pragma clang system_header void free(void *); #define FREE_POINTER(x) free(x) |

