https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106300
Bug ID: 106300 Summary: RFE: analyzer support for more ways of obtaining an open file descriptor Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: analyzer Assignee: dmalcolm at gcc dot gnu.org Reporter: dmalcolm at gcc dot gnu.org Blocks: 106003 Target Milestone: --- Currently -fanalyzer special-cases "open" for obtaining a possibly-open file descriptor (in sm-fd.cc). We should probably support other ways of obtaining possibly-open file descriptors, either by special-casing them, or via some new attribute: creat() https://www.man7.org/linux/man-pages/man3/creat.3p.html pipe() and friends: int pipe(int pipefd[2]); int pipe2(int pipefd[2], int flags); https://www.man7.org/linux/man-pages/man2/pipe.2.html dup() and friends covered in bug 106298 fcntl() https://man7.org/linux/man-pages/man2/fcntl.2.html (though that's probably a deep rabbit-hole that we may not want to go down) socket() https://www.man7.org/linux/man-pages/man3/socket.3p.html See also bug 106140. Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106003 [Bug 106003] RFE: -fanalyzer could complain about misuse of file-descriptors