balazske added a comment.

It is a way of find some of the cases with the mentioned way of tracking what 
operations are allowed after what operations with or without error check, on a 
specific stream. Instead of a stream a symbol that is passed to the function at 
a specific argument can be used (to generalize for other than streams). If the 
code would work this way, the check to discover the "error check statement" is 
still needed, like now in the checker.

But I think it is no problem to say that the return value should be checked 
always (for the specific functions). The fact that a function has failed and 
the return value was not checked is in itself a bug and should not discovered 
only when a later function is called. This is not always possible. For example 
at `strtol` type of functions we can only find if the return value is checked 
for special error return value. A failing `strtol` may not cause any 
discoverable abnormal conditions later.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D72705/new/

https://reviews.llvm.org/D72705



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to