static char yysccsid[] = "@(#)yaccpar 1.7 (Berkeley) 09/09/90"; #line 2 "parser.y" #pragma info( none ) #pragma info( none ) #pragma info( restore ) typedef unsigned int size_t; char * _Builtin __strcat( char *, const char * ); char * _Builtin __strchr( const char *, int ); int _Builtin __strcmp( const char *, const char * ); char * _Builtin __strcpy( char*, const char * ); size_t _Builtin __strlen( const char * ); char * _Builtin __strncat( char *, const char *, size_t ); int _Builtin __strncmp( const char *, const char *, size_t ); char * _Builtin __strncpy( char *, const char *, size_t ); char * _Builtin __strrchr( const char *, int ); int _Import _Optlink strcoll( const char *, const char * ); size_t _Import _Optlink strcspn( const char *, const char * ); char * _Import _Optlink strerror( int ); char * _Import _Optlink strpbrk( const char *, const char * ); size_t _Import _Optlink strspn( const char *, const char * ); char * _Import _Optlink strstr( const char *, const char * ); char * _Import _Optlink strtok( char*, const char * ); size_t _Import _Optlink strxfrm( char *, const char *, size_t ); char * _Import _Optlink strcat( char *, const char * ); char * _Import _Optlink strchr( const char *, int ); int _Import _Optlink strcmp( const char *, const char * ); char * _Import _Optlink strcpy( char *, const char * ); size_t _Import _Optlink strlen( const char * ); char * _Import _Optlink strncat( char *, const char *, size_t ); int _Import _Optlink strncmp( const char *, const char *, size_t ); char * _Import _Optlink strncpy( char *, const char *, size_t ); char * _Import _Optlink strrchr( const char *, int ); #pragma info( none ) #pragma info( restore ) void * _Builtin __memcpy( void *, const void *, size_t ); void * _Builtin __memchr( const void *, int, size_t ); int _Builtin __memcmp( const void *, const void *, size_t ); void * _Builtin __memset( void *, int, size_t ); void * _Builtin __memmove( void *, const void *, size_t ); void * _Import _Optlink memcpy( void *, const void *, size_t ); void * _Import _Optlink memchr( const void *, int, size_t ); int _Import _Optlink memcmp( const void *, const void *, size_t ); void * _Import _Optlink memset( void *, int, size_t ); void * _Import _Optlink memmove( void *, const void *, size_t ); #pragma info( none ) #pragma info( restore ) void * _Import _Optlink memccpy( void *, void *, int, unsigned int ); int _Import _Optlink memicmp( void *, void *, unsigned int ); char * _Import _Optlink strdup( const char * ); int _Import _Optlink stricmp( const char *, const char * ); char * _Import _Optlink strlwr( char * ); int _Import _Optlink strnicmp( const char *, const char *, size_t ); char * _Import _Optlink strupr( char * ); int _Import _Optlink strcmpi( const char *, const char * ); char * _Import _Optlink strrev( char * ); char * _Import _Optlink strset( char *, int ); char * _Import _Optlink strnset( char *, int, size_t ); char * _Import _Optlink _strerror( char * ); size_t _Import _Optlink _fstrcspn( const char *, const char * ); char * _Import _Optlink _fstrdup( const char * ); char * _Import _Optlink _nstrdup( const char * ); int _Import _Optlink _fstricmp( const char *, const char * ); char * _Import _Optlink _fstrlwr( char * ); int _Import _Optlink _fstrnicmp( const char *, const char *, size_t ); char * _Import _Optlink _fstrnset( char *, int, size_t ); char * _Import _Optlink _fstrpbrk( const char *, const char * ); char * _Import _Optlink _fstrrev( char * ); char * _Import _Optlink _fstrset( char *, int ); size_t _Import _Optlink _fstrspn( const char *, const char * ); char * _Import _Optlink _fstrstr( const char *, const char * ); char * _Import _Optlink _fstrtok( char*, const char * ); char * _Import _Optlink _fstrupr( char * ); #pragma map( _fstrcspn , "strcspn" ) #pragma map( _fstrdup , "strdup" ) #pragma map( _nstrdup , "strdup" ) #pragma map( _fstricmp , "stricmp" ) #pragma map( _fstrlwr , "strlwr" ) #pragma map( _fstrnicmp, "strnicmp" ) #pragma map( _fstrnset , "strnset" ) #pragma map( _fstrpbrk , "strpbrk" ) #pragma map( _fstrrev , "strrev" ) #pragma map( _fstrset , "strset" ) #pragma map( _fstrspn , "strspn" ) #pragma map( _fstrstr , "strstr" ) #pragma map( _fstrtok , "strtok" ) #pragma map( _fstrupr , "strupr" ) #pragma info( none ) #pragma info( restore ) #pragma info( restore ) #pragma info( none ) #pragma info( none ) #pragma info( restore ) int _Import _Optlink _access( const char *, int ); int _Import _Optlink _chmod( const char *, int ); int _Import _Optlink _chsize( int, long ); int _Import _Optlink _close( int ); int _Import _Optlink _creat( const char *, int ); int _Import _Optlink _dup( int ); int _Import _Optlink _dup2( int, int ); int _Import _Optlink __eof( int ); long _Import _Optlink _filelength( int ); int _Import _Optlink _isatty( int ); long _Import _Optlink _lseek( int, long, int ); int _Import _Optlink _open( const char *, int, ... ); int _Import _Optlink _read( int, void *, unsigned int ); int _Import _Optlink remove( const char * ); int _Import _Optlink rename( const char *, const char * ); int _Import _Optlink _sopen( const char *, int, int, ... ); long _Import _Optlink _tell( int ); int _Import _Optlink _umask( int ); int _Import _Optlink _unlink( const char * ); int _Import _Optlink _write( int, const void *, unsigned int ); int _Import _Optlink _setmode(int handle, int mode); int _Import _Optlink access( const char *, int ); int _Import _Optlink chmod( const char *, int ); int _Import _Optlink chsize( int, long ); int _Import _Optlink close( int ); int _Import _Optlink creat( const char *, int ); int _Import _Optlink dup( int ); int _Import _Optlink dup2( int, int ); int _Import _Optlink eof( int ); long _Import _Optlink filelength( int ); int _Import _Optlink isatty( int ); long _Import _Optlink lseek( int, long, int ); int _Import _Optlink open( const char *, int, ... ); int _Import _Optlink read( int, void *, unsigned int ); int _Import _Optlink sopen( const char *, int, int, ... ); long _Import _Optlink tell( int ); int _Import _Optlink umask( int ); int _Import _Optlink unlink( const char * ); int _Import _Optlink write( int, const void *, unsigned int ); int _Import _Optlink setmode(int handle, int mode); #pragma map( access , "_access" ) #pragma map( chmod , "_chmod" ) #pragma map( chsize , "_chsize" ) #pragma map( close , "_close" ) #pragma map( creat , "_creat" ) #pragma map( dup , "_dup" ) #pragma map( dup2 , "_dup2" ) #pragma map( eof , "__eof" ) #pragma map( filelength, "_filelength" ) #pragma map( isatty , "_isatty" ) #pragma map( lseek , "_lseek" ) #pragma map( open , "_open" ) #pragma map( read , "_read" ) #pragma map( sopen , "_sopen" ) #pragma map( tell , "_tell" ) #pragma map( umask , "_umask" ) #pragma map( unlink , "_unlink" ) #pragma map( write , "_write" ) #pragma map( setmode , "_setmode" ) #pragma info( none ) #pragma info( restore ) #pragma info( restore ) #pragma info( none ) #pragma info( none ) #pragma info( restore ) extern const double _infinity; double _Builtin __fabs( double ); double _Import _Optlink fabs( double ); #pragma info( none ) #pragma info( restore ) double _Import _Optlink atan2( double, double ); double _Import _Optlink ceil( double ); double _Import _Optlink cosh( double ); double _Import _Optlink exp( double ); double _Import _Optlink floor( double ); double _Import _Optlink fmod( double, double ); double _Import _Optlink frexp( double, int * ); double _Import _Optlink ldexp( double, int ); double _Import _Optlink log( double ); double _Import _Optlink log10( double ); double _Import _Optlink modf( double, double * ); double _Import _Optlink pow( double, double ); double _Import _Optlink sinh( double ); double _Import _Optlink tanh( double ); double _Import _Optlink asin( double ); double _Import _Optlink acos( double ); double _Import _Optlink atan( double ); double _Import _Optlink sin( double ); double _Import _Optlink cos( double ); double _Import _Optlink tan( double ); double _Import _Optlink sqrt( double ); double _Import _Optlink _erf( double ); double _Import _Optlink _erfc( double ); double _Import _Optlink _gamma( double ); double _Import _Optlink _hypot( double, double ); double _Import _Optlink _j0( double ); double _Import _Optlink _j1( double ); double _Import _Optlink _jn( int, double ); double _Import _Optlink _y0( double ); double _Import _Optlink _y1( double ); double _Import _Optlink _yn( int, double ); double _Import _Optlink erf( double ); double _Import _Optlink erfc( double ); double _Import _Optlink gamma( double ); double _Import _Optlink hypot( double, double ); double _Import _Optlink j0( double ); double _Import _Optlink j1( double ); double _Import _Optlink jn( int, double ); double _Import _Optlink y0( double ); double _Import _Optlink y1( double ); double _Import _Optlink yn( int, double ); #pragma map( erf, "_erf" ) #pragma map( erfc, "_erfc" ) #pragma map( gamma, "_gamma" ) #pragma map( hypot, "_hypot" ) #pragma map( j0, "_j0" ) #pragma map( j1, "_j1" ) #pragma map( jn, "_jn" ) #pragma map( y0, "_y0" ) #pragma map( y1, "_y1" ) #pragma map( yn, "_yn" ) extern const long double _LHUGE_VAL; struct complex { double x,y; }; double _Import _Optlink _cabs( struct complex ); #pragma info( none ) #pragma info( restore ) struct exception { int type; char *name; double arg1; double arg2; double retval; }; int _matherr( struct exception * ); int matherr( struct exception * ); #pragma map( matherr, "_matherr" ) long double _Optlink _atold( const char * ); #pragma info( none ) #pragma info( restore ) #pragma info( restore ) #pragma info( none ) #pragma info( none ) #pragma info( restore ) typedef unsigned short wchar_t; typedef struct _div_t { int quot; int rem; } div_t; typedef struct _ldiv_t { long int quot; long int rem; } ldiv_t; typedef unsigned long _System _EH_RTN(void *,void *,void *,void *); extern int _Import _Optlink _eh_del(_EH_RTN *); extern int _Import _Optlink _eh_add(_EH_RTN *); extern int _Import _mb_cur_max; int _Builtin __abs( int ); long int _Builtin __labs( long int ); double _Import _Optlink atof( const char * ); int _Import _Optlink atoi( const char * ); long int _Import _Optlink atol( const char * ); double _Import _Optlink strtod( const char *, char ** ); long int _Import _Optlink strtol( const char *, char **, int ); unsigned long int _Import _Optlink strtoul( const char *, char **, int ); int _Import _Optlink rand( void ); void _Import _Optlink srand( unsigned int ); void * (_Import _Optlink calloc)( size_t, size_t ); void (_Import _Optlink free)( void * ); void * (_Import _Optlink malloc)( size_t ); void * (_Import _Optlink realloc)( void *, size_t ); void _Import _Optlink abort( void ); int _Import _Optlink atexit( void ( * )( void ) ); void _Import _Optlink exit( int ); char * _Import _Optlink getenv( const char * ); int _Import _Optlink system( const char * ); void * _Import _Optlink bsearch( const void *, const void *, size_t, size_t, int ( * _Optlink __compare )( const void *, const void * ) ); void _Import _Optlink qsort( void *, size_t, size_t, int ( * _Optlink __compare )( const void *, const void * ) ); div_t _Import _Optlink div( int, int ); ldiv_t _Import _Optlink ldiv( long int, long int ); int _Import _Optlink mblen( const char *, size_t ); int _Import _Optlink mbtowc( wchar_t *, const char *, size_t ); int _Import _Optlink wctomb( char *, wchar_t ); size_t _Import _Optlink mbstowcs( wchar_t *, const char *, size_t ); size_t _Import _Optlink wcstombs( char *, const wchar_t *, size_t ); int _Import _Optlink abs ( int ); long int _Import _Optlink labs( long int ); #pragma info( none ) #pragma info( restore ) void * _Builtin __alloca( size_t ); #pragma info( none ) #pragma info( restore ) unsigned char _Builtin __parmdwords( void ); long double _Import _Optlink _atold( const char * ); char * _Import _Optlink ecvt( double, int, int *, int * ); char * _Import _Optlink _ecvt( double, int, int *, int * ); char * _Import _Optlink fcvt( double, int, int *, int * ); char * _Import _Optlink _fcvt( double, int, int *, int * ); int _Import _Optlink _freemod( unsigned long ); char * _Import _Optlink _fullpath(char *, char *, size_t); char * _Import _Optlink gcvt( double, int, char * ); char * _Import _Optlink _gcvt( double, int, char * ); int (_Import _Optlink _heapmin)( void ); char * _Import _Optlink itoa( int, char *, int ); char * _Import _Optlink _itoa( int, char *, int ); int _Import _Optlink _loadmod( char *, unsigned long * ); char * _Import _Optlink ltoa( long, char *, int ); char * _Import _Optlink _ltoa( long, char *, int ); size_t _Import _Optlink _msize(void *); int _Import _Optlink putenv( const char * ); int _Import _Optlink _putenv( const char * ); long double _Import _Optlink strtold( const char *, char ** ); long double _Import _Optlink _strtold( const char *, char ** ); char * _Import _Optlink ultoa( unsigned long, char *, int ); char * _Import _Optlink _ultoa( unsigned long, char *, int ); #pragma map( ecvt , "_ecvt" ) #pragma map( fcvt , "_fcvt" ) #pragma map( gcvt , "_gcvt" ) #pragma map( itoa , "_itoa" ) #pragma map( ltoa , "_ltoa" ) #pragma map( ultoa , "_ultoa" ) #pragma map( putenv , "_putenv" ) #pragma map( _strtold, "strtold" ) int _Import _Optlink _beginthread( void ( * _Optlink thread )( void * ), void *, unsigned, void * ); void _Import _Optlink _endthread( void ); void ** _Import _Optlink _threadstore( void ); #pragma map( atof , "_atofieee" ) #pragma map( strtod, "_strtodieee" ) void _Builtin __enable( void ); void _Builtin __disable( void ); int * _Import _Optlink _errno( void ); #pragma info( none ) #pragma info( restore ) int * _Import _Optlink __doserrno(void); #pragma info( none ) #pragma info( restore ) extern char ** _Import _environ; extern unsigned char _Import _osmajor; extern unsigned char _Import _osminor; extern unsigned char _Import _osmode; typedef int ( __onexit_t )( void ); typedef __onexit_t * onexit_t; void _Import _Optlink _exit( int ); onexit_t _Import _Optlink onexit( onexit_t ); onexit_t _Import _Optlink _onexit( onexit_t ); unsigned long _Builtin __lrotl(unsigned long, int); unsigned long _Builtin __lrotr(unsigned long, int); unsigned short _Builtin __srotl(unsigned short, int); unsigned short _Builtin __srotr(unsigned short, int); unsigned char _Builtin __crotl(unsigned char, int); unsigned char _Builtin __crotr(unsigned char, int); void _Import _Optlink _makepath( char *, char *, char *, char *, char * ); void _Import _Optlink _splitpath( char *, char *, char *, char *, char * ); void _Import _Optlink _searchenv( char *, char *, char *); void _Import _Optlink swab( char *, char *, int ); void _Import _Optlink _swab( char *, char *, int ); #pragma map( onexit , "_onexit" ) #pragma map( swab , "_swab" ) int _Import _Optlink rpmatch(const char *); int _Import _Optlink csid(const char *); int _Import _Optlink wcsid(const wchar_t); #pragma map( rpmatch, "_rpmatch" ) #pragma map( csid , "_csid" ) #pragma map( wcsid , "_wcsid" ) #pragma info( none ) #pragma info( restore ) #pragma info( restore ) char *proio_cons(); char * wxmake_integer(); char * wxmake_word(); char * wxmake_string(); char * wxmake_real(); char * wxmake_exp(); char * wxmake_exp2(); void add_expr(); void process_command(); void syntax_error(); int PROIO_yylex(void); int PROIO_yylook(void); int PROIO_yywrap(void); int PROIO_yyback(int *, int); void PROIO_yyoutput(int); #line 36 "parser.y" typedef union { char *s; } YYSTYPE; #line 44 "y_tab.c" short PROIO_yylhs[] = { -1, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 5, 5, 5, 5, }; short PROIO_yylen[] = { 2, 0, 2, 2, 2, 2, 4, 2, 3, 0, 1, 3, 3, 1, 1, 1, 1, 3, 3, 5, 1, }; short PROIO_yydefred[] = { 1, 0, 0, 0, 0, 2, 0, 5, 3, 0, 0, 0, 15, 7, 20, 0, 0, 13, 4, 0, 0, 0, 0, 8, 0, 6, 0, 18, 0, 12, 11, 0, 19, }; short PROIO_yydgoto[] = { 1, 5, 14, 15, 16, 17, }; short PROIO_yysindex[] = { 0, -2, 9, 2, 1, 0, 10, 0, 0, 11, -5, 17, 0, 0, 0, 14, -1, 0, 0, 33, 38, 41, 16, 0, 11, 0, 29, 0, 40, 0, 0, 44, 0, }; short PROIO_yyrindex[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 42, 21, 24, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 31, 0, 27, 0, 24, 0, 0, 0, 0, }; short PROIO_yygindex[] = { 0, 0, 45, -8, 0, 26, }; short PROIO_yytable[] = { 3, 19, 10, 11, 12, 24, 9, 4, 20, 21, 4, 13, 10, 11, 12, 8, 30, 10, 28, 12, 4, 9, 7, 18, 23, 4, 16, 16, 22, 14, 14, 16, 17, 17, 14, 10, 9, 17, 25, 26, 10, 9, 27, 31, 9, 32, 6, 9, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, }; short PROIO_yycheck[] = { 2, 9, 1, 2, 3, 6, 4, 9, 13, 14, 9, 10, 1, 2, 3, 13, 24, 1, 2, 3, 9, 4, 13, 13, 10, 9, 5, 6, 11, 5, 6, 10, 5, 6, 10, 5, 5, 10, 5, 1, 10, 10, 1, 14, 4, 1, 1, 5, 22, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 256, }; int PROIO_yydebug; int PROIO_yynerrs; int PROIO_yyerrflag; int PROIO_yychar; short *PROIO_yyssp; YYSTYPE *PROIO_yyvsp; YYSTYPE PROIO_yyval; YYSTYPE PROIO_yylval; short PROIO_yyss[600]; YYSTYPE PROIO_yyvs[600]; #line 118 "parser.y" #pragma info( none ) #pragma info( none ) #pragma info( restore ) enum _OPERATIONS { _IOINIT, _IOREAD, _IOWRITE, _IOREPOSITION, _IOFLUSH, _IOUNDEFOP }; #pragma pack( 1 ) typedef struct __file { unsigned char *_bufPtr; unsigned long int _count; unsigned long int _userFlags; unsigned long int _bufLen; unsigned long int _ungetCount; int _tempStore; unsigned char _ungetBuf[2]; enum _OPERATIONS _lastOp; char _filler; } FILE; #pragma pack( ) typedef struct __fpos_t { long int __fpos_elem[2]; } fpos_t; typedef char *__va_list; extern FILE * const _Import stdin; extern FILE * const _Import stdout; extern FILE * const _Import stderr; int _Import _Optlink fprintf( FILE *, const char *, ... ); int _Import _Optlink fscanf( FILE *, const char *, ... ); int _Import _Optlink printf( const char *, ... ); int _Import _Optlink scanf( const char *, ... ); int _Import _Optlink sprintf( char *, const char *, ... ); int _Import _Optlink sscanf( const char *, const char *, ... ); void _Import _Optlink clearerr( FILE * ); int _Import _Optlink fclose( FILE * ); int _Import _Optlink feof( FILE * ); int _Import _Optlink ferror( FILE * ); int _Import _Optlink fflush( FILE * ); int _Import _Optlink fgetc( FILE * ); int _Import _Optlink fgetpos( FILE *, fpos_t * ); char * _Import _Optlink fgets( char *, int, FILE * ); FILE * _Import _Optlink fopen( const char *, const char * ); int _Import _Optlink fputc( int, FILE * ); int _Import _Optlink fputs( const char *, FILE * ); size_t _Import _Optlink fread( void *, size_t, size_t, FILE * ); FILE * _Import _Optlink freopen( const char *, const char *, FILE * ); int _Import _Optlink fseek( FILE *, long int, int ); int _Import _Optlink fsetpos( FILE *, const fpos_t * ); long int _Import _Optlink ftell( FILE * ); size_t _Import _Optlink fwrite( const void *, size_t, size_t, FILE * ); int _Optlink getc( FILE * ); int _Optlink getchar( void ); char * _Import _Optlink gets( char * ); void _Import _Optlink perror( const char * ); int _Optlink putc( int, FILE * ); int _Optlink putchar( int ); int _Import _Optlink puts( const char * ); int _Import _Optlink remove( const char * ); int _Import _Optlink rename( const char *, const char * ); void _Import _Optlink rewind( FILE * ); void _Import _Optlink setbuf( FILE *, char * ); int _Import _Optlink setvbuf( FILE *, char *, int, size_t ); FILE * _Import _Optlink tmpfile( void ); char * _Import _Optlink tmpnam( char * ); int _Import _Optlink ungetc( int, FILE * ); int _Import _Optlink vfprintf( FILE *, const char *, __va_list ); int _Import _Optlink vprintf( const char *, __va_list ); int _Import _Optlink vsprintf( char *, const char *, __va_list ); #pragma map( fprintf, "_fprintfieee" ) #pragma map( printf , "_printfieee" ) #pragma map( sprintf, "_sprintfieee" ) #pragma map( fscanf , "_fscanfieee" ) #pragma map( scanf , "_scanfieee" ) #pragma map( sscanf , "_sscanfieee" ) #pragma map( vfprintf, "_vfprintfieee" ) #pragma map( vprintf , "_vprintfieee" ) #pragma map( vsprintf, "_vsprintfieee" ) int _Optlink _fcloseall( void ); int _Optlink _rmtmp( void ); FILE * _Optlink fdopen( int, const char *); int _Optlink fgetchar( void ); int _Optlink fileno( FILE * ); int _Optlink flushall( void ); int _Optlink fputchar( int ); char * _Optlink tempnam( char *, char * ); int _Optlink unlink( const char * ); FILE * _Optlink _fdopen( int, const char *); int _Optlink _fgetchar( void ); int _Optlink _fileno( FILE * ); int _Optlink _flushall( void ); int _Optlink _fputchar( int ); char * _Optlink _tempnam( char *, char * ); int _Optlink _unlink( const char * ); int _Optlink _set_crt_msg_handle( int ); #pragma map( fdopen , "_fdopen" ) #pragma map( fgetchar, "_fgetchar" ) #pragma map( fileno , "_fileno" ) #pragma map( flushall, "_flushall" ) #pragma map( fputchar, "_fputchar" ) #pragma map( tempnam , "_tempnam" ) #pragma info( none ) #pragma info( restore ) #pragma info( restore ) int read(); int PROIO_yywrap(void) { return 1; } typedef struct yy_buffer_state *YY_BUFFER_STATE; # line 1 "lexer.l" # line 9 "lexer.l" #pragma info( none ) #pragma info( none ) #pragma info( restore ) #pragma info( none ) #pragma info( restore ) #pragma info( restore ) static size_t lex_buffer_length = 0; static char *lex_buffer = 0; static size_t lex_string_ptr = 0; static int lex_read_from_string = 0; static int my_input(void); static int my_unput(char); # line 58 "lexer.l" struct yy_buffer_state { FILE *yy_input_file; unsigned char *yy_ch_buf; unsigned char *yy_buf_pos; int yy_buf_size; int yy_n_chars; int yy_eof_status; }; static YY_BUFFER_STATE yy_current_buffer; static unsigned char yy_hold_char; static int yy_n_chars; extern unsigned char *PROIO_yytext; extern int PROIO_yyleng; extern FILE *PROIO_yyin, *PROIO_yyout; unsigned char *PROIO_yytext; int PROIO_yyleng; FILE *PROIO_yyin = (FILE *) 0, *PROIO_yyout = (FILE *) 0; typedef int yy_state_type; static short int yy_accept[34] = { 0, 0, 0, 18, 16, 13, 14, 16, 16, 6, 7, 16, 8, 12, 16, 1, 11, 3, 9, 10, 2, 0, 5, 0, 0, 0, 4, 1, 15, 3, 5, 0, 0, 0 } ; static unsigned char yy_ec[256] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 4, 1, 1, 1, 1, 5, 6, 7, 8, 9, 10, 9, 11, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1, 1, 1, 14, 1, 1, 1, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 17, 18, 1, 15, 1, 15, 15, 15, 15, 19, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 1, 20, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 } ; static unsigned char yy_meta[21] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 3, 1, 2, 1 } ; static short int yy_base[37] = { 0, 0, 0, 48, 55, 55, 55, 17, 42, 55, 55, 19, 55, 55, 23, 17, 55, 0, 55, 55, 0, 18, 55, 19, 23, 21, 55, 12, 55, 0, 24, 25, 29, 55, 49, 52, 22 } ; static short int yy_def[37] = { 0, 33, 1, 33, 33, 33, 33, 34, 35, 33, 33, 33, 33, 33, 33, 33, 33, 36, 33, 33, 36, 34, 33, 34, 34, 35, 33, 33, 33, 36, 34, 34, 34, 0, 33, 33, 33 } ; static short int yy_nxt[76] = { 0, 4, 5, 6, 7, 8, 9, 10, 4, 11, 12, 13, 14, 15, 16, 17, 18, 4, 19, 20, 4, 22, 22, 30, 29, 27, 26, 22, 22, 30, 27, 28, 27, 30, 23, 23, 23, 24, 24, 24, 31, 23, 32, 24, 24, 24, 23, 26, 33, 24, 21, 21, 21, 25, 25, 3, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33 } ; static short int yy_chk[76] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 7, 21, 23, 36, 27, 25, 24, 30, 31, 15, 14, 11, 32, 7, 21, 23, 7, 21, 23, 24, 30, 31, 24, 30, 31, 32, 8, 3, 32, 34, 34, 34, 35, 35, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33 } ; static yy_state_type yy_last_accepting_state; static unsigned char *yy_last_accepting_cpos; static unsigned char *yy_c_buf_p = (unsigned char *) 0; static int yy_init = 1; static int yy_start = 0; static int yy_did_buffer_switch_on_eof; static yy_state_type yy_get_previous_state (); static yy_state_type yy_try_NUL_trans (); static int yy_get_next_buffer (); static void yyunput (); void PROIO_yyrestart (); void PROIO_yy_switch_to_buffer (); void PROIO_yy_load_buffer_state (); YY_BUFFER_STATE PROIO_yy_create_buffer (); void PROIO_yy_delete_buffer (); void PROIO_yy_init_buffer (); static int input (); int PROIO_yylex () { register yy_state_type yy_current_state; register unsigned char *yy_cp, *yy_bp; register int yy_act; if ( yy_init ) { ; if ( ! yy_start ) yy_start = 1; if ( ! PROIO_yyin ) PROIO_yyin = stdin; if ( ! PROIO_yyout ) PROIO_yyout = stdout; if ( yy_current_buffer ) PROIO_yy_init_buffer( yy_current_buffer, PROIO_yyin ); else yy_current_buffer = PROIO_yy_create_buffer( PROIO_yyin, (8192 * 2) ); PROIO_yy_load_buffer_state(); yy_init = 0; } while ( 1 ) { yy_cp = yy_c_buf_p; *yy_cp = yy_hold_char; yy_bp = yy_cp; yy_current_state = yy_start; yy_match: do { register unsigned char yy_c = yy_ec[*yy_cp]; if ( yy_accept[yy_current_state] ) { yy_last_accepting_state = yy_current_state; yy_last_accepting_cpos = yy_cp; } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = yy_def[yy_current_state]; if ( yy_current_state >= 34 ) yy_c = yy_meta[yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; ++yy_cp; } while ( yy_current_state != 33 ); yy_cp = yy_last_accepting_cpos; yy_current_state = yy_last_accepting_state; yy_find_action: yy_act = yy_accept[yy_current_state]; PROIO_yytext = yy_bp; PROIO_yyleng = yy_cp - yy_bp; yy_hold_char = *yy_cp; *yy_cp = '\0'; yy_c_buf_p = yy_cp;; ; do_action: switch ( yy_act ) { case 0: *yy_cp = yy_hold_char; yy_cp = yy_last_accepting_cpos; yy_current_state = yy_last_accepting_state; goto yy_find_action; case 1: # line 60 "lexer.l" {PROIO_yylval.s = strdup(( char*) PROIO_yytext); return 1;;} break; case 2: # line 62 "lexer.l" return 14;; break; case 3: # line 64 "lexer.l" {PROIO_yylval.s = strdup(( char*) PROIO_yytext); return 2;;} break; case 4: # line 66 "lexer.l" {int len = __strlen( (( char*) PROIO_yytext) ); PROIO_yytext[len-1] = 0; PROIO_yylval.s = strdup(( char*) (PROIO_yytext+1)); return 2;;} break; case 5: # line 71 "lexer.l" {PROIO_yylval.s = strdup(( char*) PROIO_yytext); return 3;;} break; case 6: # line 73 "lexer.l" return 4;; break; case 7: # line 75 "lexer.l" return 5;; break; case 8: # line 77 "lexer.l" return 6;; break; case 9: # line 79 "lexer.l" return 9;; break; case 10: # line 81 "lexer.l" return 10;; break; case 11: # line 83 "lexer.l" return 11;; break; case 12: # line 85 "lexer.l" return 13;; break; case 13: # line 87 "lexer.l" ; break; case 14: # line 89 "lexer.l" ; break; case 15: # line 91 "lexer.l" { loop: while (input() != '*'); switch (input()) { case '/': break; case '*': yyunput( '*', PROIO_yytext ); default: goto loop; } } break; case 16: # line 106 "lexer.l" return 8;; break; case 17: # line 108 "lexer.l" (void) fwrite( (char *) PROIO_yytext, PROIO_yyleng, 1, PROIO_yyout ); break; case (18 + 0 + 1): return ( 0 ); case 18: { int yy_amount_of_matched_text = yy_cp - PROIO_yytext - 1; *yy_cp = yy_hold_char; if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] ) { yy_state_type yy_next_state; yy_c_buf_p = PROIO_yytext + yy_amount_of_matched_text; yy_current_state = yy_get_previous_state(); yy_next_state = yy_try_NUL_trans( yy_current_state ); yy_bp = PROIO_yytext + 0; if ( yy_next_state ) { yy_cp = ++yy_c_buf_p; yy_current_state = yy_next_state; goto yy_match; } else { yy_cp = yy_last_accepting_cpos; yy_current_state = yy_last_accepting_state; goto yy_find_action; } } else switch ( yy_get_next_buffer() ) { case 1: { yy_did_buffer_switch_on_eof = 0; if ( PROIO_yywrap() ) { yy_c_buf_p = PROIO_yytext + 0; yy_act = (18 + (yy_start - 1) / 2 + 1); goto do_action; } else { if ( ! yy_did_buffer_switch_on_eof ) do { PROIO_yy_init_buffer( yy_current_buffer, PROIO_yyin ); PROIO_yy_load_buffer_state(); } while ( 0 ); } } break; case 0: yy_c_buf_p = PROIO_yytext + yy_amount_of_matched_text; yy_current_state = yy_get_previous_state(); yy_cp = yy_c_buf_p; yy_bp = PROIO_yytext + 0; goto yy_match; case 2: yy_c_buf_p = &yy_current_buffer->yy_ch_buf[yy_n_chars]; yy_current_state = yy_get_previous_state(); yy_cp = yy_c_buf_p; yy_bp = PROIO_yytext + 0; goto yy_find_action; } break; } default: do { (void) fputs( "fatal flex scanner internal error--no action found", stderr ); (void) fputc( ('\n'), (stderr) ); exit( 1 ); } while ( 0 ); } } } static int yy_get_next_buffer() { register unsigned char *dest = yy_current_buffer->yy_ch_buf; register unsigned char *source = PROIO_yytext - 1; register int number_to_move, i; int ret_val; if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] ) do { (void) fputs( "fatal flex scanner internal error--end of buffer missed", stderr ); (void) fputc( ('\n'), (stderr) ); exit( 1 ); } while ( 0 ); number_to_move = yy_c_buf_p - PROIO_yytext; for ( i = 0; i < number_to_move; ++i ) *(dest++) = *(source++); if ( yy_current_buffer->yy_eof_status != 0 ) yy_n_chars = 0; else { int num_to_read = yy_current_buffer->yy_buf_size - number_to_move - 1; if ( num_to_read > 8192 ) num_to_read = 8192; else if ( num_to_read <= 0 ) do { (void) fputs( "fatal error - scanner input buffer overflow", stderr ); (void) fputc( ('\n'), (stderr) ); exit( 1 ); } while ( 0 ); if (lex_read_from_string) { int c = my_input(); yy_n_chars = (c == 0) ? 0 : (((&yy_current_buffer->yy_ch_buf[number_to_move]))[0]=(c), 1); } else if ( (yy_n_chars = read( fileno(PROIO_yyin), (char *) (&yy_current_buffer->yy_ch_buf[number_to_move]), num_to_read )) < 0 ) do { (void) fputs( "read() in flex scanner failed", stderr ); (void) fputc( ('\n'), (stderr) ); exit( 1 ); } while ( 0 );; } if ( yy_n_chars == 0 ) { if ( number_to_move == 1 ) { ret_val = 1; yy_current_buffer->yy_eof_status = 2; } else { ret_val = 2; yy_current_buffer->yy_eof_status = 1; } } else ret_val = 0; yy_n_chars += number_to_move; yy_current_buffer->yy_ch_buf[yy_n_chars] = 0; yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = 0; PROIO_yytext = &yy_current_buffer->yy_ch_buf[1]; return ( ret_val ); } static yy_state_type yy_get_previous_state() { register yy_state_type yy_current_state; register unsigned char *yy_cp; yy_current_state = yy_start; for ( yy_cp = PROIO_yytext + 0; yy_cp < yy_c_buf_p; ++yy_cp ) { register unsigned char yy_c = (*yy_cp ? yy_ec[*yy_cp] : 1); if ( yy_accept[yy_current_state] ) { yy_last_accepting_state = yy_current_state; yy_last_accepting_cpos = yy_cp; } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = yy_def[yy_current_state]; if ( yy_current_state >= 34 ) yy_c = yy_meta[yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; } return ( yy_current_state ); } static yy_state_type yy_try_NUL_trans( yy_current_state ) register yy_state_type yy_current_state; { register int yy_is_jam; register unsigned char *yy_cp = yy_c_buf_p; register unsigned char yy_c = 1; if ( yy_accept[yy_current_state] ) { yy_last_accepting_state = yy_current_state; yy_last_accepting_cpos = yy_cp; } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = yy_def[yy_current_state]; if ( yy_current_state >= 34 ) yy_c = yy_meta[yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; yy_is_jam = (yy_current_state == 33); return ( yy_is_jam ? 0 : yy_current_state ); } static void yyunput( c, yy_bp ) unsigned char c; register unsigned char *yy_bp; { register unsigned char *yy_cp = yy_c_buf_p; *yy_cp = yy_hold_char; if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) { register int number_to_move = yy_n_chars + 2; register unsigned char *dest = &yy_current_buffer->yy_ch_buf[yy_current_buffer->yy_buf_size + 2]; register unsigned char *source = &yy_current_buffer->yy_ch_buf[number_to_move]; while ( source > yy_current_buffer->yy_ch_buf ) *--dest = *--source; yy_cp += dest - source; yy_bp += dest - source; yy_n_chars = yy_current_buffer->yy_buf_size; if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) do { (void) fputs( "flex scanner push-back overflow", stderr ); (void) fputc( ('\n'), (stderr) ); exit( 1 ); } while ( 0 ); } if ( yy_cp > yy_bp && yy_cp[-1] == '\n' ) yy_cp[-2] = '\n'; *--yy_cp = c; PROIO_yytext = yy_bp; PROIO_yyleng = yy_cp - yy_bp; yy_hold_char = *yy_cp; *yy_cp = '\0'; yy_c_buf_p = yy_cp;; } static int input() { int c; unsigned char *yy_cp = yy_c_buf_p; *yy_cp = yy_hold_char; if ( *yy_c_buf_p == 0 ) { if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] ) *yy_c_buf_p = '\0'; else { PROIO_yytext = yy_c_buf_p; ++yy_c_buf_p; switch ( yy_get_next_buffer() ) { case 1: { if ( PROIO_yywrap() ) { yy_c_buf_p = PROIO_yytext + 0; return ( (-1) ); } do { PROIO_yy_init_buffer( yy_current_buffer, PROIO_yyin ); PROIO_yy_load_buffer_state(); } while ( 0 ); return ( input() ); } break; case 0: yy_c_buf_p = PROIO_yytext + 0; break; case 2: do { (void) fputs( "unexpected last match in input()", stderr ); (void) fputc( ('\n'), (stderr) ); exit( 1 ); } while ( 0 ); } } } c = *yy_c_buf_p; yy_hold_char = *++yy_c_buf_p; return ( c ); } void PROIO_yyrestart( input_file ) FILE *input_file; { PROIO_yy_init_buffer( yy_current_buffer, input_file ); PROIO_yy_load_buffer_state(); } void PROIO_yy_switch_to_buffer( new_buffer ) YY_BUFFER_STATE new_buffer; { if ( yy_current_buffer == new_buffer ) return; if ( yy_current_buffer ) { *yy_c_buf_p = yy_hold_char; yy_current_buffer->yy_buf_pos = yy_c_buf_p; yy_current_buffer->yy_n_chars = yy_n_chars; } yy_current_buffer = new_buffer; PROIO_yy_load_buffer_state(); yy_did_buffer_switch_on_eof = 1; } void PROIO_yy_load_buffer_state() { yy_n_chars = yy_current_buffer->yy_n_chars; PROIO_yytext = yy_c_buf_p = yy_current_buffer->yy_buf_pos; PROIO_yyin = yy_current_buffer->yy_input_file; yy_hold_char = *yy_c_buf_p; } YY_BUFFER_STATE PROIO_yy_create_buffer( file, size ) FILE *file; int size; { YY_BUFFER_STATE b; b = (YY_BUFFER_STATE) malloc( sizeof( struct yy_buffer_state ) ); if ( ! b ) do { (void) fputs( "out of dynamic memory in yy_create_buffer()", stderr ); (void) fputc( ('\n'), (stderr) ); exit( 1 ); } while ( 0 ); b->yy_buf_size = size; b->yy_ch_buf = (unsigned char *) malloc( (unsigned) (b->yy_buf_size + 2) ); if ( ! b->yy_ch_buf ) do { (void) fputs( "out of dynamic memory in yy_create_buffer()", stderr ); (void) fputc( ('\n'), (stderr) ); exit( 1 ); } while ( 0 ); PROIO_yy_init_buffer( b, file ); return ( b ); } void PROIO_yy_delete_buffer( b ) YY_BUFFER_STATE b; { if ( b == yy_current_buffer ) yy_current_buffer = (YY_BUFFER_STATE) 0; free( (char *) b->yy_ch_buf ); free( (char *) b ); } void PROIO_yy_init_buffer( b, file ) YY_BUFFER_STATE b; FILE *file; { b->yy_input_file = file; b->yy_ch_buf[0] = '\n'; b->yy_n_chars = 1; b->yy_ch_buf[1] = 0; b->yy_ch_buf[2] = 0; b->yy_buf_pos = &b->yy_ch_buf[1]; b->yy_eof_status = 0; } # line 108 "lexer.l" static int lex_input() { return input(); } void LexFromFile(FILE *fd) { lex_read_from_string = 0; PROIO_yyin = fd; yy_init = 1; } void LexFromString(char *buffer) { lex_read_from_string = 1; lex_buffer = buffer; lex_buffer_length = __strlen( (( char*) buffer) ); lex_string_ptr = 0; yy_init = 1; } static int my_input( void ) { if (lex_read_from_string) { if (lex_string_ptr == lex_buffer_length) return 0; else { char c = lex_buffer[lex_string_ptr++]; return c; } } else { return lex_input(); } } void wxExprCleanUp() { if (yy_current_buffer) PROIO_yy_delete_buffer(yy_current_buffer); } void PROIO_yyerror(char *s) { syntax_error(s); } int PROIO_yywrap() { return 1; } #line 247 "y_tab.c" int PROIO_yyparse() { register int yym, yyn, yystate; PROIO_yynerrs = 0; PROIO_yyerrflag = 0; PROIO_yychar = (-1); PROIO_yyssp = PROIO_yyss; PROIO_yyvsp = PROIO_yyvs; *PROIO_yyssp = yystate = 0; yyloop: if (yyn = PROIO_yydefred[yystate]) goto yyreduce; if (PROIO_yychar < 0) { if ((PROIO_yychar = PROIO_yylex()) < 0) PROIO_yychar = 0; } if ((yyn = PROIO_yysindex[yystate]) && (yyn += PROIO_yychar) >= 0 && yyn <= 254 && PROIO_yycheck[yyn] == PROIO_yychar) { if (PROIO_yyssp >= PROIO_yyss + 600 - 1) { goto yyoverflow; } *++PROIO_yyssp = yystate = PROIO_yytable[yyn]; *++PROIO_yyvsp = PROIO_yylval; PROIO_yychar = (-1); if (PROIO_yyerrflag > 0) --PROIO_yyerrflag; goto yyloop; } if ((yyn = PROIO_yyrindex[yystate]) && (yyn += PROIO_yychar) >= 0 && yyn <= 254 && PROIO_yycheck[yyn] == PROIO_yychar) { yyn = PROIO_yytable[yyn]; goto yyreduce; } if (PROIO_yyerrflag) goto yyinrecovery; yynewerror: PROIO_yyerror("syntax error"); yyerrlab: ++PROIO_yynerrs; yyinrecovery: if (PROIO_yyerrflag < 3) { PROIO_yyerrflag = 3; for (;;) { if ((yyn = PROIO_yysindex[*PROIO_yyssp]) && (yyn += 256) >= 0 && yyn <= 254 && PROIO_yycheck[yyn] == 256) { if (PROIO_yyssp >= PROIO_yyss + 600 - 1) { goto yyoverflow; } *++PROIO_yyssp = yystate = PROIO_yytable[yyn]; *++PROIO_yyvsp = PROIO_yylval; goto yyloop; } else { if (PROIO_yyssp <= PROIO_yyss) goto yyabort; --PROIO_yyssp; --PROIO_yyvsp; } } } else { if (PROIO_yychar == 0) goto yyabort; PROIO_yychar = (-1); goto yyloop; } yyreduce: yym = PROIO_yylen[yyn]; PROIO_yyval = PROIO_yyvsp[1-yym]; switch (yyn) { case 3: #line 68 "parser.y" {process_command(proio_cons(wxmake_word(PROIO_yyvsp[-1].s), 0)); free(PROIO_yyvsp[-1].s);} break; case 4: #line 70 "parser.y" {process_command(PROIO_yyvsp[-1].s);} break; case 5: #line 72 "parser.y" {syntax_error("Unrecognized command.");} break; case 6: #line 76 "parser.y" {PROIO_yyval.s = proio_cons(wxmake_word(PROIO_yyvsp[-3].s), PROIO_yyvsp[-1].s); free(PROIO_yyvsp[-3].s);} break; case 7: #line 78 "parser.y" {PROIO_yyval.s = proio_cons(0, 0);} break; case 8: #line 80 "parser.y" {PROIO_yyval.s = PROIO_yyvsp[-1].s; } break; case 9: #line 84 "parser.y" {PROIO_yyval.s = 0;} break; case 10: #line 86 "parser.y" {PROIO_yyval.s = proio_cons(PROIO_yyvsp[0].s, 0);} break; case 11: #line 89 "parser.y" {PROIO_yyval.s = proio_cons(PROIO_yyvsp[-2].s, PROIO_yyvsp[0].s);} break; case 12: #line 93 "parser.y" {PROIO_yyval.s = proio_cons(wxmake_word("="), proio_cons(wxmake_word(PROIO_yyvsp[-2].s), proio_cons(PROIO_yyvsp[0].s, 0))); free(PROIO_yyvsp[-2].s); } break; case 13: #line 96 "parser.y" {PROIO_yyval.s = PROIO_yyvsp[0].s; } break; case 14: #line 99 "parser.y" {PROIO_yyval.s = wxmake_word(PROIO_yyvsp[0].s); free(PROIO_yyvsp[0].s);} break; case 15: #line 101 "parser.y" {PROIO_yyval.s = wxmake_string(PROIO_yyvsp[0].s); free(PROIO_yyvsp[0].s);} break; case 16: #line 103 "parser.y" {PROIO_yyval.s = wxmake_integer(PROIO_yyvsp[0].s); free(PROIO_yyvsp[0].s);} break; case 17: #line 105 "parser.y" {PROIO_yyval.s = wxmake_real(PROIO_yyvsp[-2].s, PROIO_yyvsp[0].s); free(PROIO_yyvsp[-2].s); free(PROIO_yyvsp[0].s); } break; case 18: #line 107 "parser.y" {PROIO_yyval.s = wxmake_exp(PROIO_yyvsp[-2].s, PROIO_yyvsp[0].s); free(PROIO_yyvsp[-2].s); free(PROIO_yyvsp[0].s); } break; case 19: #line 110 "parser.y" {PROIO_yyval.s = wxmake_exp2(PROIO_yyvsp[-4].s, PROIO_yyvsp[-2].s, PROIO_yyvsp[0].s); free(PROIO_yyvsp[-4].s); free(PROIO_yyvsp[-2].s); free(PROIO_yyvsp[0].s); } break; case 20: #line 114 "parser.y" {PROIO_yyval.s = PROIO_yyvsp[0].s;} break; #line 461 "y_tab.c" } PROIO_yyssp -= yym; yystate = *PROIO_yyssp; PROIO_yyvsp -= yym; yym = PROIO_yylhs[yyn]; if (yystate == 0 && yym == 0) { yystate = 1; *++PROIO_yyssp = 1; *++PROIO_yyvsp = PROIO_yyval; if (PROIO_yychar < 0) { if ((PROIO_yychar = PROIO_yylex()) < 0) PROIO_yychar = 0; } if (PROIO_yychar == 0) goto yyaccept; goto yyloop; } if ((yyn = PROIO_yygindex[yym]) && (yyn += yystate) >= 0 && yyn <= 254 && PROIO_yycheck[yyn] == yystate) yystate = PROIO_yytable[yyn]; else yystate = PROIO_yydgoto[yym]; if (PROIO_yyssp >= PROIO_yyss + 600 - 1) { goto yyoverflow; } *++PROIO_yyssp = yystate; *++PROIO_yyvsp = PROIO_yyval; goto yyloop; yyoverflow: PROIO_yyerror("yacc stack overflow"); yyabort: return (1); yyaccept: return (0); }