home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 2 / crawlyvol2.bin / program / c / yaccsrc2 / ycpycd.c < prev    next >
Encoding:
C/C++ Source or Header  |  1991-05-19  |  700 b   |  35 lines

  1.  
  2. # include "y2.h" 
  3.  
  4. void cpycode( )
  5. {
  6.   /* copies code between \{ and \} */
  7.  
  8.   int c;
  9.   c = unix_getc( finput );
  10.   if ( c == '\n' )
  11.     {
  12.       c = unix_getc( finput );
  13.       lineno++;
  14.     }
  15.   fprintf( ftable, "\n# line %d\n", lineno );
  16.   while ( c >= 0 )
  17.     {
  18.       if ( c == '\\' )
  19.         if ( ( c = unix_getc( finput ) ) == '}' )
  20.           return;
  21.         else
  22.           putc( '\\', ftable );
  23.       if ( c == '%' )
  24.         if ( ( c = unix_getc( finput ) ) == '}' )
  25.           return;
  26.         else
  27.           putc( '%', ftable );
  28.       putc( c, ftable );
  29.       if ( c == '\n' )
  30.         ++lineno;
  31.       c = unix_getc( finput );
  32.     }
  33.   error( "eof before %%}" );
  34. }
  35.