Skip to content

Commit 0f7f8db

Browse files
authored
[clang][analyzer] Restrict 'fopen' modeling to POSIX versions in SimpleStreamChecker (#72016)
1 parent 5107a47 commit 0f7f8db

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ class SimpleStreamChecker : public Checker<check::PostCall,
9090
REGISTER_MAP_WITH_PROGRAMSTATE(StreamMap, SymbolRef, StreamState)
9191

9292
SimpleStreamChecker::SimpleStreamChecker()
93-
: OpenFn({"fopen"}), CloseFn({"fclose"}, 1) {
93+
: OpenFn({"fopen"}, 2), CloseFn({"fclose"}, 1) {
9494
// Initialize the bug types.
9595
DoubleCloseBugType.reset(
9696
new BugType(this, "Double fclose", "Unix Stream API Error"));

clang/test/Analysis/stream-non-posix-function.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
// RUN: %clang_analyze_cc1 -fno-builtin -analyzer-checker=core,alpha.unix.Stream -verify %s
2+
// RUN: %clang_analyze_cc1 -fno-builtin -analyzer-checker=core,alpha.unix.SimpleStream -verify %s
3+
24
// expected-no-diagnostics
35

46
typedef struct _FILE FILE;

0 commit comments

Comments
 (0)