home *** CD-ROM | disk | FTP | other *** search
/ minnie.tuhs.org / unixen.tar / unixen / PDP-11 / Trees / V7 / usr / src / cmd / lex / ldefs.c < prev    next >
Encoding:
C/C++ Source or Header  |  1979-01-10  |  3.2 KB  |  163 lines

  1. # include <stdio.h>
  2. # define PP 1
  3. # ifdef unix
  4.  
  5. # define CWIDTH 7
  6. # define CMASK 0177
  7. # define ASCII 1
  8. # endif
  9.  
  10. # ifdef gcos
  11. # define CWIDTH 9
  12. # define CMASK 0777
  13. # define ASCII 1
  14. # endif
  15.  
  16. # ifdef ibm
  17. # define CWIDTH 8
  18. # define CMASK 0377
  19. # define EBCDIC 1
  20. # endif
  21.  
  22. # ifdef ASCII
  23. # define NCH 128
  24. # endif
  25.  
  26. # ifdef EBCDIC
  27. # define NCH 256
  28. # endif
  29.  
  30.  
  31. # define TOKENSIZE 1000
  32. # define DEFSIZE 40
  33. # define DEFCHAR 1000
  34. # define STARTCHAR 100
  35. # define STARTSIZE 256
  36. # define CCLSIZE 1000
  37. # ifdef SMALL
  38. # define TREESIZE 600
  39. # define NTRANS 1500
  40. # define NSTATES 300
  41. # define MAXPOS 1500
  42. # define NOUTPUT 1500
  43. # endif
  44.  
  45. # ifndef SMALL
  46. # define TREESIZE 1000
  47. # define NSTATES 500
  48. # define MAXPOS 2500
  49. # define NTRANS 2000
  50. # define NOUTPUT 3000
  51. # endif
  52. # define NACTIONS 100
  53. # define ALITTLEEXTRA 30
  54.  
  55. # define RCCL NCH+90
  56. # define RNCCL NCH+91
  57. # define RSTR NCH+92
  58. # define RSCON NCH+93
  59. # define RNEWE NCH+94
  60. # define FINAL NCH+95
  61. # define RNULLS NCH+96
  62. # define RCAT NCH+97
  63. # define STAR NCH+98
  64. # define PLUS NCH+99
  65. # define QUEST NCH+100
  66. # define DIV NCH+101
  67. # define BAR NCH+102
  68. # define CARAT NCH+103
  69. # define S1FINAL NCH+104
  70. # define S2FINAL NCH+105
  71.  
  72. # define DEFSECTION 1
  73. # define RULESECTION 2
  74. # define ENDSECTION 5
  75. # define TRUE 1
  76. # define FALSE 0
  77.  
  78. # define PC 1
  79. # define PS 1
  80.  
  81. # ifdef DEBUG
  82. # define LINESIZE 110
  83. extern int yydebug;
  84. extern int debug;        /* 1 = on */
  85. extern int charc;
  86. # endif
  87.  
  88. # ifndef DEBUG
  89. # define freturn(s) s
  90. # endif
  91.  
  92. extern int sargc;
  93. extern char **sargv;
  94. extern char buf[520];
  95. extern int ratfor;        /* 1 = ratfor, 0 = C */
  96. extern int yyline;        /* line number of file */
  97. extern int sect;
  98. extern int eof;
  99. extern int lgatflg;
  100. extern int divflg;
  101. extern int funcflag;
  102. extern int pflag;
  103. extern int casecount;
  104. extern int chset;    /* 1 = char set modified */
  105. extern FILE *fin, *fout, *fother, *errorf;
  106. extern int fptr;
  107. extern char *ratname, *cname;
  108. extern int prev;    /* previous input character */
  109. extern int pres;    /* present input character */
  110. extern int peek;    /* next input character */
  111. extern int *name;
  112. extern int *left;
  113. extern int *right;
  114. extern int *parent;
  115. extern char *nullstr;
  116. extern int tptr;
  117. extern char pushc[TOKENSIZE];
  118. extern char *pushptr;
  119. extern char slist[STARTSIZE];
  120. extern char *slptr;
  121. extern char **def, **subs, *dchar;
  122. extern char **sname, *schar;
  123. extern char *ccl;
  124. extern char *ccptr;
  125. extern char *dp, *sp;
  126. extern int dptr, sptr;
  127. extern char *bptr;        /* store input position */
  128. extern char *tmpstat;
  129. extern int count;
  130. extern int **foll;
  131. extern int *nxtpos;
  132. extern int *positions;
  133. extern int *gotof;
  134. extern int *nexts;
  135. extern char *nchar;
  136. extern int **state;
  137. extern int *sfall;        /* fallback state num */
  138. extern char *cpackflg;        /* true if state has been character packed */
  139. extern int *atable, aptr;
  140. extern int nptr;
  141. extern char symbol[NCH];
  142. extern char cindex[NCH];
  143. extern int xstate;
  144. extern int stnum;
  145. extern int ctable[];
  146. extern int ZCH;
  147. extern int ccount;
  148. extern char match[NCH];
  149. extern char extra[NACTIONS];
  150. extern char *pcptr, *pchar;
  151. extern int pchlen;
  152. extern int nstates, maxpos;
  153. extern int yytop;
  154. extern int report;
  155. extern int ntrans, treesize, outsize;
  156. extern long rcount;
  157. extern int optim;
  158. extern int *verify, *advance, *stoff;
  159. extern int scon;
  160. extern char *psave;
  161. extern char *calloc(), *myalloc();
  162. extern int buserr(), segviol();
  163.