home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / OS2-YACC.ZIP / YCPYCD.2C < prev    next >
Text File  |  1989-09-29  |  1KB  |  48 lines

  1. /*
  2.   HEADER: CUG     nnn.nn;
  3.   TITLE:     YACC - Yet Another Compilier-Compilier
  4.   VERSION:     1.0 for IBM-PC
  5.   DATE:      JAN 28, 1985
  6.   DESCRIPTION:     LALR(1) Parser Generator. From UNIX
  7.   KEYWORDS:     Parser Generator Compilier-Compilier YACC
  8.   SYSTEM:     IBM-PC and Compatiables
  9.   FILENAME:      YCPYCD.2C
  10.   WARNINGS:     This program is not for the casual user. It will
  11.          be useful primarily to expert developers.
  12.   CRC:         N/A
  13.   SEE-ALSO:     LEX and PREP
  14.   AUTHORS:     Scott Guthery 11100 leafwood lane Austin, TX 78750
  15.   COMPILERS:     DESMET-C
  16.   REFERENCES:     UNIX Systems Manuals
  17. */
  18.  
  19. #include "y1.h"
  20. #include "y2.h"
  21.  
  22. void cpycode( void )
  23.    {
  24.    /* copies code between \{ and \} */
  25.  
  26.    int c;
  27.    c = unix_getc(finput);
  28.    if( c == '\n' ) 
  29.       {
  30.       c = unix_getc(finput);
  31.       lineno++;
  32.       }
  33.    fprintf( ftable, "\n# line %d\n", lineno );
  34.    while( c>=0 )
  35.       {
  36.       if( c=='\\' )
  37.          if( (c=unix_getc(finput)) == '}' ) return;
  38.          else putc('\\', ftable );
  39.       if( c=='%' )
  40.          if( (c=unix_getc(finput)) == '}' ) return;
  41.          else putc('%', ftable );
  42.       putc( c , ftable );
  43.       if( c == '\n' ) ++lineno;
  44.       c = unix_getc(finput);
  45.       }
  46.    error("eof before %%}" );
  47.    }
  48.