balazske added a comment.

Probably we need to clarify when to make warnings. Originally I do not wanted a 
warning after for example failed read, because it is possible to retry the 
operation. But the standard says that after failed fread the file position is 
indeterminate, so a new read may get indeterminate values that is a case for 
warning. The character I/O functions may work not this way so after failed 
`fgetc` it may be possible to retry it and no warning is needed. Some 
operations such as `fclose` and `fseek` can be called in error (including EOF) 
state.

For this to work we need more kinds of error states, or save the type of the 
last operation in the state (and use it to determine if warning is needed). 
Probably the best is to have only a single "failed" state and determine what 
kind of error is possible based on the saved last operation type. A "feof" and 
"ferror" kind of error state is still needed because after a call to `feof` if 
it returned true the error type is fixed to EOF error.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D75851



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

Reply via email to