Szelethus accepted this revision. Szelethus added a comment. This revision is now accepted and ready to land.
LGTM! This patch is great! I think you're doing a great job with this project. ================ Comment at: clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp:670 - State = State->set<StreamMap>(StreamSym, StreamState::getOpened(Desc)); + // FilePositionIndeterminate is not cleared. + State = State->set<StreamMap>( ---------------- balazske wrote: > Szelethus wrote: > > But what if I inspect errno and conclude that the file position is intact? > > Is there such a thing? After a call to stream operation that might leave > > the file position indicator indeterminate and getting ferror, am I supposed > > to fseek or reopen the file no matter what? > > > > > There is not much information about what `errno` values mean an indeterminate > file position (and what errno values are possible at all after a specific > operation). Probably we can assume that only position reset (`fseek`, > `fsetpos`, `rewind`) and `fflush` fixes the wrong state. Many of stream > handling code anyway aborts the operation if error happens. Yeah, this makes sense. We should double check the standard in time though. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D80018/new/ https://reviews.llvm.org/D80018 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits