-struct indesc {
- infunc fin; /* Pointer to input routine */
- unsigned ccount; /* Number of chars read */
-
- /* Fields used outside of _scanf */
- char* buf; /* Pointer to input buffer */
- unsigned size; /* Size of input buffer */
- unsigned fill; /* Fill mark of input buffer */
- unsigned ridx; /* Read index of input buffer */
+struct scanfdata {
+ getfunc get; /* Pointer to input routine */
+ ungetfunc unget; /* Pointer to pushback routine */
+ void* data; /* Pointer to struct. used outside of _scanf() */