A warning is produced if the getc call fails (returns EOF) and
the next called stream function is not feof and ferror
(both are needed).
This check is inspired by CERT rule FIO34-C "Distinguish between characters read from a file and EOF or WEOF".
https://wiki.sei.cmu.edu/confluence/display/c/FIO34-C.+Distinguish+between+characters+read+from+a+file+and+EOF+or+WEOF
Other similar functions (and wide versions) are to be added.
I'm 99% sure that the Preprocessor is retrievable in the checker registry function (register*Checker), and this code should be moved there, and EOFv be made non-mutable.