diff options
Diffstat (limited to 'lib/Checker/UnixAPIChecker.cpp')
-rw-r--r-- | lib/Checker/UnixAPIChecker.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/Checker/UnixAPIChecker.cpp b/lib/Checker/UnixAPIChecker.cpp index 0c9a45f06f..213e798005 100644 --- a/lib/Checker/UnixAPIChecker.cpp +++ b/lib/Checker/UnixAPIChecker.cpp @@ -15,9 +15,13 @@ #include "GRExprEngineInternalChecks.h" #include "clang/Checker/PathSensitive/CheckerVisitor.h" #include "clang/Checker/BugReporter/BugType.h" +#include "clang/Analysis/Support/Optional.h" #include "llvm/ADT/StringSwitch.h" #include <fcntl.h> +#include "clang/Basic/TargetInfo.h" + + using namespace clang; namespace { @@ -57,6 +61,9 @@ static inline void LazyInitialize(BugType *&BT, const char *name) { //===----------------------------------------------------------------------===// static void CheckOpen(CheckerContext &C, const CallExpr *CE, BugType *&BT) { + if (C.getASTContext().Target.getTriple().getVendor() != llvm::Triple::Apple) + return; + LazyInitialize(BT, "Improper use of 'open'"); // Look at the 'oflags' argument for the O_CREAT flag. |