NUL and newline, as this simplifies our implementation. */
/* Zero or more instances of backslash-newline. Following GCC, allow
white space between the backslash and the newline. */
NUL and newline, as this simplifies our implementation. */
/* Zero or more instances of backslash-newline. Following GCC, allow
white space between the backslash and the newline. */
- else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
- && ferror( yyin ) ) \
- YY_FATAL_ERROR( "input in flex scanner failed" );
+ else \
+ { \
+ errno=0; \
+ while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
+ { \
+ if( errno != EINTR) \
+ { \
+ YY_FATAL_ERROR( "input in flex scanner failed" ); \
+ break; \
+ } \
+ errno=0; \
+ clearerr(yyin); \
+ } \
+ }
/*----------------------------.
| Scanning Bison directives. |
`----------------------------*/
/*----------------------------.
| Scanning Bison directives. |
`----------------------------*/
#ifndef YY_ALWAYS_INTERACTIVE
#ifndef YY_NEVER_INTERACTIVE
extern int isatty YY_PROTO(( int ));
#endif
#endif
#ifndef YY_ALWAYS_INTERACTIVE
#ifndef YY_NEVER_INTERACTIVE
extern int isatty YY_PROTO(( int ));
#endif
#endif