home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1992 March / Source_Code_CD-ROM_Walnut_Creek_March_1992.iso / usenet / compsrcs / unix / volume06 / yaccref < prev    next >
SHell self-extracting ARchive  |  1988-09-11  |  12.5 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was processed as: SHell self-extracting ARchive (archive/shar).

You can browse this item here: yaccref

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert SHell self-extracting ARchive (archive/shar) magic Supported
1% dexvert Text File (text/txt) fallback Supported
100% file ASCII text default
100% checkBytes Printable ASCII default
100% perlTextCheck Likely Text (Perl) default
100% siegfried fmt/329 Shell Archive Format default
100% detectItEasy Format: plain text[LF] default (weak)
100% xdgMime message/rfc822 default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 53 75 62 6a 65 63 74 3a | 20 76 30 36 69 30 35 31 |Subject:| v06i051|
|00000010| 3a 20 20 43 72 6f 73 73 | 2d 72 65 66 65 72 65 6e |: Cross|-referen|
|00000020| 63 65 20 66 6f 72 20 59 | 61 63 63 20 28 79 79 72 |ce for Y|acc (yyr|
|00000030| 65 66 29 0a 4e 65 77 73 | 67 72 6f 75 70 73 3a 20 |ef).News|groups: |
|00000040| 6d 6f 64 2e 73 6f 75 72 | 63 65 73 0a 41 70 70 72 |mod.sour|ces.Appr|
|00000050| 6f 76 65 64 3a 20 72 73 | 40 6d 69 72 72 6f 72 2e |oved: rs|@mirror.|
|00000060| 55 55 43 50 0a 0a 53 75 | 62 6d 69 74 74 65 64 20 |UUCP..Su|bmitted |
|00000070| 62 79 3a 20 43 61 74 68 | 79 20 54 61 79 6c 6f 72 |by: Cath|y Taylor|
|00000080| 20 3c 73 65 69 73 6d 6f | 21 6d 63 76 61 78 21 63 | <seismo|!mcvax!c|
|00000090| 6f 6d 70 2e 6c 61 6e 63 | 73 2e 61 63 2e 75 6b 21 |omp.lanc|s.ac.uk!|
|000000a0| 63 61 74 68 79 3e 0a 4d | 6f 64 2e 73 6f 75 72 63 |cathy>.M|od.sourc|
|000000b0| 65 73 3a 20 56 6f 6c 75 | 6d 65 20 36 2c 20 49 73 |es: Volu|me 6, Is|
|000000c0| 73 75 65 20 35 31 0a 41 | 72 63 68 69 76 65 2d 6e |sue 51.A|rchive-n|
|000000d0| 61 6d 65 3a 20 79 79 72 | 65 66 0a 0a 5b 20 20 49 |ame: yyr|ef..[ I|
|000000e0| 20 63 68 61 6e 67 65 64 | 20 74 68 65 20 6e 61 6d | changed| the nam|
|000000f0| 65 20 74 6f 20 79 79 72 | 65 66 2c 20 61 64 64 65 |e to yyr|ef, adde|
|00000100| 64 20 61 20 4d 61 6b 65 | 66 69 6c 65 2c 20 61 6e |d a Make|file, an|
|00000110| 64 20 62 72 6f 6b 65 20 | 75 70 20 74 68 65 0a 20 |d broke |up the. |
|00000120| 20 20 6d 61 69 6c 20 6d | 65 73 73 61 67 65 20 49 | mail m|essage I|
|00000130| 20 72 65 63 65 69 76 65 | 64 20 69 6e 74 6f 20 61 | receive|d into a|
|00000140| 20 52 45 41 44 4d 45 20 | 61 6e 64 20 61 20 6d 61 | README |and a ma|
|00000150| 6e 70 61 67 65 2e 20 20 | 2d 2d 72 24 20 5d 0a 0a |npage. |--r$ ]..|
|00000160| 54 68 65 20 66 6f 6c 6c | 6f 77 69 6e 67 20 73 6f |The foll|owing so|
|00000170| 75 72 63 65 20 66 6f 72 | 6d 73 20 74 68 65 20 78 |urce for|ms the x|
|00000180| 72 65 66 20 70 72 6f 67 | 72 61 6d 20 66 6f 72 20 |ref prog|ram for |
|00000190| 73 79 6e 74 61 63 74 69 | 63 61 6c 6c 79 20 63 6f |syntacti|cally co|
|000001a0| 72 72 65 63 74 0a 59 61 | 63 63 20 66 69 6c 65 73 |rrect.Ya|cc files|
|000001b0| 2e 0a 0a 41 6c 6c 20 74 | 6f 6b 65 6e 73 20 61 6e |...All t|okens an|
|000001c0| 64 20 6e 6f 6e 2d 74 65 | 72 6d 69 6e 61 6c 73 20 |d non-te|rminals |
|000001d0| 69 6e 20 74 68 65 20 67 | 72 61 6d 6d 61 72 20 61 |in the g|rammar a|
|000001e0| 72 65 20 6c 6f 63 61 74 | 65 64 2c 20 74 6f 67 65 |re locat|ed, toge|
|000001f0| 74 68 65 72 20 77 69 74 | 68 0a 61 20 6c 69 73 74 |ther wit|h.a list|
|00000200| 20 6f 66 20 74 68 65 20 | 6c 69 6e 65 20 6e 75 6d | of the |line num|
|00000210| 62 65 72 73 20 61 74 20 | 77 68 69 63 68 20 74 68 |bers at |which th|
|00000220| 65 79 20 6f 63 63 75 72 | 2e 20 54 68 65 20 6f 75 |ey occur|. The ou|
|00000230| 74 70 75 74 20 69 73 20 | 61 0a 6e 75 6d 62 65 72 |tput is |a.number|
|00000240| 65 64 20 6c 69 73 74 69 | 6e 67 20 6f 66 20 74 68 |ed listi|ng of th|
|00000250| 65 20 59 61 63 63 20 67 | 72 61 6d 6d 61 72 20 75 |e Yacc g|rammar u|
|00000260| 70 20 74 6f 20 74 68 65 | 20 73 65 63 6f 6e 64 20 |p to the| second |
|00000270| 27 25 25 27 20 6f 72 20 | 45 4f 46 2c 0a 66 6f 6c |'%%' or |EOF,.fol|
|00000280| 6c 6f 77 65 64 20 62 79 | 20 74 68 65 20 78 72 65 |lowed by| the xre|
|00000290| 66 20 74 61 62 6c 65 2e | 20 53 68 6f 75 6c 64 20 |f table.| Should |
|000002a0| 61 20 73 79 6e 74 61 78 | 20 65 72 72 6f 72 20 6f |a syntax| error o|
|000002b0| 63 63 75 72 20 62 65 66 | 6f 72 65 20 6e 6f 72 6d |ccur bef|ore norm|
|000002c0| 61 6c 0a 74 65 72 6d 69 | 6e 61 74 69 6f 6e 2c 20 |al.termi|nation, |
|000002d0| 74 68 65 20 67 72 61 6d | 6d 61 72 20 6c 69 73 74 |the gram|mar list|
|000002e0| 69 6e 67 20 65 6e 64 73 | 20 61 6e 64 20 61 73 20 |ing ends| and as |
|000002f0| 6d 75 63 68 20 6f 66 20 | 74 68 65 20 74 61 62 6c |much of |the tabl|
|00000300| 65 20 61 73 20 68 61 73 | 0a 62 65 65 6e 20 63 6f |e as has|.been co|
|00000310| 6e 73 74 72 75 63 74 65 | 64 20 69 73 20 70 72 69 |nstructe|d is pri|
|00000320| 6e 74 65 64 2e 20 41 6c | 6c 20 63 6f 6d 6d 65 6e |nted. Al|l commen|
|00000330| 74 73 20 2f 2a 20 2e 2e | 20 2a 2f 20 2c 20 25 7b |ts /* ..| */ , %{|
|00000340| 20 2e 2e 20 25 7d 20 61 | 6e 64 0a 61 63 74 69 6f | .. %} a|nd.actio|
|00000350| 6e 73 20 7b 20 2e 2e 20 | 7d 20 61 72 65 20 69 67 |ns { .. |} are ig|
|00000360| 6e 6f 72 65 64 2c 20 61 | 6c 74 68 6f 75 67 68 20 |nored, a|lthough |
|00000370| 74 68 65 79 20 61 70 70 | 65 61 72 20 69 6e 20 74 |they app|ear in t|
|00000380| 68 65 20 6c 69 73 74 69 | 6e 67 2e 0a 0a 23 21 2f |he listi|ng...#!/|
|00000390| 62 69 6e 2f 73 68 0a 23 | 20 54 68 69 73 20 69 73 |bin/sh.#| This is|
|000003a0| 20 61 20 73 68 65 6c 6c | 20 61 72 63 68 69 76 65 | a shell| archive|
|000003b0| 2e 20 20 52 65 6d 6f 76 | 65 20 61 6e 79 74 68 69 |. Remov|e anythi|
|000003c0| 6e 67 20 62 65 66 6f 72 | 65 20 74 68 69 73 20 6c |ng befor|e this l|
|000003d0| 69 6e 65 2c 0a 23 20 74 | 68 65 6e 20 75 6e 70 61 |ine,.# t|hen unpa|
|000003e0| 63 6b 20 69 74 20 62 79 | 20 73 61 76 69 6e 67 20 |ck it by| saving |
|000003f0| 69 74 20 69 6e 20 61 20 | 66 69 6c 65 20 61 6e 64 |it in a |file and|
|00000400| 20 74 79 70 69 6e 67 20 | 22 73 68 20 66 69 6c 65 | typing |"sh file|
|00000410| 22 2e 0a 23 20 43 6f 6e | 74 65 6e 74 73 3a 20 20 |"..# Con|tents: |
|00000420| 4d 61 6b 65 66 69 6c 65 | 20 52 45 41 44 4d 45 20 |Makefile| README |
|00000430| 79 79 72 65 66 2e 31 20 | 79 79 72 65 66 2d 67 72 |yyref.1 |yyref-gr|
|00000440| 61 6d 6d 65 72 20 79 79 | 72 65 66 2d 6c 65 78 0a |ammer yy|ref-lex.|
|00000450| 23 09 79 79 72 65 66 2d | 6c 69 6e 65 2e 68 0a 20 |#.yyref-|line.h. |
|00000460| 0a 65 63 68 6f 20 78 20 | 2d 20 4d 61 6b 65 66 69 |.echo x |- Makefi|
|00000470| 6c 65 0a 73 65 64 20 27 | 73 2f 5e 58 58 2f 2f 27 |le.sed '|s/^XX//'|
|00000480| 20 3e 20 22 4d 61 6b 65 | 66 69 6c 65 22 20 3c 3c | > "Make|file" <<|
|00000490| 27 40 2f 2f 45 2a 4f 2a | 46 20 4d 61 6b 65 66 69 |'@//E*O*|F Makefi|
|000004a0| 6c 65 2f 2f 27 0a 0a 58 | 58 43 46 4c 41 47 53 3d |le//'..X|XCFLAGS=|
|000004b0| 0a 58 58 79 79 72 65 66 | 3a 09 79 79 72 65 66 2d |.XXyyref|:.yyref-|
|000004c0| 6c 65 78 20 79 79 72 65 | 66 2d 67 72 61 6d 6d 61 |lex yyre|f-gramma|
|000004d0| 72 0a 58 58 09 6c 65 78 | 20 79 79 72 65 66 2d 6c |r.XX.lex| yyref-l|
|000004e0| 65 78 0a 58 58 09 79 61 | 63 63 20 2d 76 64 20 79 |ex.XX.ya|cc -vd y|
|000004f0| 79 72 65 66 2d 67 72 61 | 6d 6d 61 72 0a 58 58 09 |yref-gra|mmar.XX.|
|00000500| 63 63 20 24 28 43 46 4c | 41 47 53 29 20 79 2e 74 |cc $(CFL|AGS) y.t|
|00000510| 61 62 2e 63 20 2d 6f 20 | 79 79 72 65 66 0a 0a 58 |ab.c -o |yyref..X|
|00000520| 58 63 6c 65 61 6e 3a 0a | 58 58 09 72 6d 20 2d 66 |Xclean:.|XX.rm -f|
|00000530| 20 6c 65 78 2e 79 79 2e | 63 20 79 2e 74 61 62 2e | lex.yy.|c y.tab.|
|00000540| 3f 20 79 2e 6f 75 74 70 | 75 74 20 79 79 72 65 66 |? y.outp|ut yyref|
|00000550| 0a 40 2f 2f 45 2a 4f 2a | 46 20 4d 61 6b 65 66 69 |.@//E*O*|F Makefi|
|00000560| 6c 65 2f 2f 0a 63 68 6d | 6f 64 20 75 3d 72 77 2c |le//.chm|od u=rw,|
|00000570| 67 3d 72 77 2c 6f 3d 72 | 77 20 4d 61 6b 65 66 69 |g=rw,o=r|w Makefi|
|00000580| 6c 65 0a 20 0a 65 63 68 | 6f 20 78 20 2d 20 52 45 |le. .ech|o x - RE|
|00000590| 41 44 4d 45 0a 73 65 64 | 20 27 73 2f 5e 58 58 2f |ADME.sed| 's/^XX/|
|000005a0| 2f 27 20 3e 20 22 52 45 | 41 44 4d 45 22 20 3c 3c |/' > "RE|ADME" <<|
|000005b0| 27 40 2f 2f 45 2a 4f 2a | 46 20 52 45 41 44 4d 45 |'@//E*O*|F README|
|000005c0| 2f 2f 27 0a 58 58 41 20 | 43 4f 55 50 4c 45 20 4f |//'.XXA |COUPLE O|
|000005d0| 46 20 4e 4f 54 45 53 20 | 4f 4e 20 43 4f 4e 46 49 |F NOTES |ON CONFI|
|000005e0| 47 55 52 41 54 49 4f 4e | 20 50 41 52 41 4d 45 54 |GURATION| PARAMET|
|000005f0| 45 52 53 3a 0a 58 58 28 | 53 65 65 20 74 68 65 20 |ERS:.XX(|See the |
|00000600| 63 6f 64 65 20 73 65 63 | 74 69 6f 6e 20 6f 66 20 |code sec|tion of |
|00000610| 79 79 72 65 66 2d 67 72 | 61 6d 6d 61 72 29 0a 58 |yyref-gr|ammar).X|
|00000620| 58 09 54 61 62 6c 65 20 | 64 61 74 61 20 69 73 20 |X.Table |data is |
|00000630| 73 74 6f 72 65 64 20 69 | 6e 20 22 74 61 62 6c 65 |stored i|n "table|
|00000640| 5b 5d 22 2c 20 77 68 69 | 63 68 20 68 6f 6c 64 73 |[]", whi|ch holds|
|00000650| 20 4d 41 58 49 44 45 4e | 54 53 20 74 65 72 6d 69 | MAXIDEN|TS termi|
|00000660| 6e 61 6c 2f 6e 6f 6e 2d | 0a 58 58 74 65 72 6d 69 |nal/non-|.XXtermi|
|00000670| 6e 61 6c 20 6e 61 6d 65 | 73 2c 20 65 61 63 68 20 |nal name|s, each |
|00000680| 6f 66 20 6c 65 6e 67 74 | 68 20 3c 3d 20 4d 41 58 |of lengt|h <= MAX|
|00000690| 43 48 41 52 53 2e 20 41 | 20 74 6f 74 61 6c 20 6f |CHARS. A| total o|
|000006a0| 66 20 4d 41 58 44 45 46 | 53 20 64 65 66 69 6e 69 |f MAXDEF|S defini|
|000006b0| 6e 67 20 28 72 68 73 20 | 6f 66 0a 58 58 72 75 6c |ng (rhs |of.XXrul|
|000006c0| 65 29 20 6f 63 63 75 72 | 61 6e 63 65 73 20 63 61 |e) occur|ances ca|
|000006d0| 6e 20 62 65 20 68 65 6c | 64 2c 20 61 6e 64 20 61 |n be hel|d, and a|
|000006e0| 20 74 6f 74 61 6c 20 6f | 66 20 4d 41 58 4f 43 43 | total o|f MAXOCC|
|000006f0| 53 20 6c 68 73 20 6f 63 | 63 75 72 61 6e 63 65 73 |S lhs oc|curances|
|00000700| 2e 20 45 61 63 68 0a 58 | 58 69 64 65 6e 74 69 66 |. Each.X|Xidentif|
|00000710| 69 65 72 20 77 68 69 63 | 68 20 6d 61 79 20 62 65 |ier whic|h may be|
|00000720| 20 74 68 65 20 73 74 61 | 72 74 20 74 6f 6b 65 6e | the sta|rt token|
|00000730| 20 69 73 20 70 72 69 6e | 74 65 64 20 66 6f 6c 6c | is prin|ted foll|
|00000740| 6f 77 69 6e 67 20 74 68 | 65 20 6d 65 73 73 61 67 |owing th|e messag|
|00000750| 65 20 68 65 6c 64 0a 58 | 58 69 6e 20 22 73 74 61 |e held.X|Xin "sta|
|00000760| 72 74 5f 6d 61 79 62 65 | 5b 5d 22 20 2d 20 6c 69 |rt_maybe|[]" - li|
|00000770| 6b 65 77 69 73 65 20 61 | 6c 6c 20 70 6f 73 73 69 |kewise a|ll possi|
|00000780| 62 6c 65 20 74 6f 6b 65 | 6e 73 20 61 72 65 20 61 |ble toke|ns are a|
|00000790| 63 63 6f 6d 70 61 6e 69 | 65 64 20 62 79 0a 58 58 |ccompani|ed by.XX|
|000007a0| 22 74 6f 6b 65 6e 5f 6d | 61 79 62 65 5b 5d 22 2e |"token_m|aybe[]".|
|000007b0| 20 41 6c 6c 20 64 65 66 | 69 6e 69 6e 67 20 6f 63 | All def|ining oc|
|000007c0| 63 75 72 61 6e 63 65 73 | 20 61 72 65 20 70 72 69 |curances| are pri|
|000007d0| 6e 74 65 64 20 66 6f 6c | 6c 6f 77 69 6e 67 0a 58 |nted fol|lowing.X|
|000007e0| 58 22 64 65 63 6c 61 72 | 65 64 5f 61 74 5f 6d 61 |X"declar|ed_at_ma|
|000007f0| 72 6b 5b 5d 22 2c 20 61 | 6e 64 20 61 6c 6c 20 6f |rk[]", a|nd all o|
|00000800| 74 68 65 72 20 6f 63 63 | 75 72 61 6e 63 65 73 20 |ther occ|urances |
|00000810| 66 6f 6c 6c 6f 77 69 6e | 67 20 22 6f 63 63 75 72 |followin|g "occur|
|00000820| 73 5f 61 74 5f 6d 61 72 | 6b 5b 5d 22 2e 0a 0a 40 |s_at_mar|k[]"...@|
|00000830| 2f 2f 45 2a 4f 2a 46 20 | 52 45 41 44 4d 45 2f 2f |//E*O*F |README//|
|00000840| 0a 63 68 6d 6f 64 20 75 | 3d 72 77 2c 67 3d 72 77 |.chmod u|=rw,g=rw|
|00000850| 2c 6f 3d 72 77 20 52 45 | 41 44 4d 45 0a 20 0a 65 |,o=rw RE|ADME. .e|
|00000860| 63 68 6f 20 78 20 2d 20 | 79 79 72 65 66 2e 31 0a |cho x - |yyref.1.|
|00000870| 73 65 64 20 27 73 2f 5e | 58 58 2f 2f 27 20 3e 20 |sed 's/^|XX//' > |
|00000880| 22 79 79 72 65 66 2e 31 | 22 20 3c 3c 27 40 2f 2f |"yyref.1|" <<'@//|
|00000890| 45 2a 4f 2a 46 20 79 79 | 72 65 66 2e 31 2f 2f 27 |E*O*F yy|ref.1//'|
|000008a0| 0a 58 58 2e 54 48 20 59 | 59 52 45 46 20 31 20 4c |.XX.TH Y|YREF 1 L|
|000008b0| 4f 43 41 4c 0a 58 58 2e | 53 48 20 4e 41 4d 45 0a |OCAL.XX.|SH NAME.|
|000008c0| 58 58 79 79 72 65 66 20 | 5c 2d 20 67 65 6e 65 72 |XXyyref |\- gener|
|000008d0| 61 74 65 20 63 72 6f 73 | 73 5c 2d 72 65 66 65 72 |ate cros|s\-refer|
|000008e0| 65 6e 63 65 20 66 6f 72 | 20 59 41 43 43 20 69 6e |ence for| YACC in|
|000008f0| 70 75 74 0a 58 58 2e 53 | 48 20 53 59 4e 4f 50 53 |put.XX.S|H SYNOPS|
|00000900| 49 53 0a 58 58 2e 42 20 | 79 79 72 65 66 0a 58 58 |IS.XX.B |yyref.XX|
|00000910| 5b 20 3c 20 69 6e 70 75 | 74 66 69 6c 65 20 5d 0a |[ < inpu|tfile ].|
|00000920| 58 58 2e 53 48 20 44 45 | 53 43 52 49 50 54 49 4f |XX.SH DE|SCRIPTIO|
|00000930| 4e 0a 58 58 2e 49 20 59 | 79 72 65 66 0a 58 58 67 |N.XX.I Y|yref.XXg|
|00000940| 65 6e 65 72 61 74 65 73 | 20 63 72 6f 73 73 5c 2d |enerates| cross\-|
|00000950| 72 65 66 65 72 65 6e 63 | 65 73 20 66 6f 72 0a 58 |referenc|es for.X|
|00000960| 58 2e 49 52 20 79 61 63 | 63 20 28 31 29 0a 58 58 |X.IR yac|c (1).XX|
|00000970| 69 6e 70 75 74 20 66 69 | 6c 65 73 2e 0a 58 58 49 |input fi|les..XXI|
|00000980| 74 20 72 65 61 64 73 20 | 73 6f 75 72 63 65 20 66 |t reads |source f|
|00000990| 72 6f 6d 20 73 74 61 6e | 64 61 72 64 20 69 6e 70 |rom stan|dard inp|
|000009a0| 75 74 2c 20 61 6e 64 20 | 75 70 6f 6e 20 45 4f 46 |ut, and |upon EOF|
|000009b0| 20 6f 72 20 73 65 65 69 | 6e 67 20 74 68 65 20 73 | or seei|ng the s|
|000009c0| 65 63 6f 6e 64 0a 58 58 | 2e 42 20 25 25 0a 58 58 |econd.XX|.B %%.XX|
|000009d0| 74 68 61 74 20 6d 61 72 | 6b 73 20 74 68 65 20 65 |that mar|ks the e|
|000009e0| 6e 64 20 6f 66 20 74 68 | 65 20 72 75 6c 65 73 20 |nd of th|e rules |
|000009f0| 70 6f 72 74 69 6f 6e 2c | 20 67 65 6e 65 72 61 74 |portion,| generat|
|00000a00| 65 73 20 61 20 63 72 6f | 73 73 5c 2d 72 65 66 65 |es a cro|ss\-refe|
|00000a10| 72 65 6e 63 65 0a 58 58 | 6c 69 73 74 20 6f 66 20 |rence.XX|list of |
|00000a20| 61 6c 6c 20 70 61 72 73 | 65 72 20 74 6f 6b 65 6e |all pars|er token|
|00000a30| 73 2e 0a 58 58 2e 50 50 | 0a 58 58 49 6e 20 63 61 |s..XX.PP|.XXIn ca|
|00000a40| 73 65 20 6f 66 20 73 79 | 6e 74 61 78 20 65 72 72 |se of sy|ntax err|
|00000a50| 6f 72 73 20 69 6e 20 74 | 68 65 20 69 6e 70 75 74 |ors in t|he input|
|00000a60| 2c 0a 58 58 2e 49 20 79 | 79 72 65 66 0a 58 58 74 |,.XX.I y|yref.XXt|
|00000a70| 72 69 65 73 20 74 6f 20 | 67 65 6e 65 72 61 74 65 |ries to |generate|
|00000a80| 20 61 73 20 6d 75 63 68 | 20 69 6e 66 6f 72 6d 61 | as much| informa|
|00000a90| 74 69 6f 6e 20 61 73 20 | 69 74 20 63 61 6e 2e 0a |tion as |it can..|
|00000aa0| 58 58 2e 50 50 0a 58 58 | 54 68 65 20 6f 75 74 70 |XX.PP.XX|The outp|
|00000ab0| 75 74 20 63 6f 6e 73 69 | 73 74 73 20 6f 66 20 61 |ut consi|sts of a|
|00000ac0| 20 6e 75 6d 62 65 72 20 | 6c 69 73 74 69 6e 67 20 | number |listing |
|00000ad0| 6f 66 20 74 68 65 20 68 | 65 61 64 65 72 20 61 6e |of the h|eader an|
|00000ae0| 64 20 72 75 6c 65 73 20 | 70 61 72 74 2c 0a 58 58 |d rules |part,.XX|
|00000af0| 66 6f 6c 6c 6f 77 65 64 | 20 62 79 20 74 68 65 20 |followed| by the |
|00000b00| 63 72 6f 73 73 5c 2d 72 | 65 66 65 72 65 6e 63 65 |cross\-r|eference|
|00000b10| 3a 0a 58 58 2e 52 53 0a | 58 58 2e 6e 66 0a 58 58 |:.XX.RS.|XX.nf.XX|
|00000b20| 20 20 20 31 20 3a 09 25 | 7b 0a 58 58 20 20 20 32 | 1 :.%|{.XX 2|
|00000b30| 20 3a 09 23 20 69 6e 63 | 6c 75 64 65 20 3c 63 74 | :.# inc|lude <ct|
|00000b40| 79 70 65 2e 68 3e 0a 58 | 58 20 20 20 33 20 3a 09 |ype.h>.X|X 3 :.|
|00000b50| 25 7d 0a 58 58 20 20 20 | 34 20 3a 09 0a 58 58 20 |%}.XX |4 :..XX |
|00000b60| 20 20 35 20 3a 09 0a 58 | 58 20 20 20 36 20 3a 09 | 5 :..X|X 6 :.|
|00000b70| 09 2f 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |./******|********|
|00000b80| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000b90| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000ba0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 5c 0a 58 58 20 20 20 |********|*\.XX |
|00000bb0| 37 20 3a 09 09 2a 09 09 | 09 09 09 09 09 2a 0a 58 |7 :..*..|.....*.X|
|00000bc0| 58 20 20 20 38 20 3a 09 | 09 2a 09 44 61 74 65 20 |X 8 :.|.*.Date |
|00000bd0| 3a 20 46 72 69 20 4a 75 | 6c 20 20 34 20 30 30 3a |: Fri Ju|l 4 00:|
|00000be0| 35 30 3a 30 34 20 42 53 | 54 20 31 39 38 36 09 09 |50:04 BS|T 1986..|
|00000bf0| 2a 0a 58 58 20 20 20 39 | 20 3a 09 09 2a 09 09 09 |*.XX 9| :..*...|
|00000c00| 09 09 09 09 2a 0a 58 58 | 20 20 31 30 20 3a 09 09 |....*.XX| 10 :..|
|00000c10| 5c 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |\*******|********|
|00000c20| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000c30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000c40| 2a 2a 2a 2a 2a 2a 2a 2a | 2f 0a 58 58 20 20 31 31 |********|/.XX 11|
|00000c50| 20 3a 09 0a 58 58 20 20 | 31 32 20 3a 09 25 74 6f | :..XX |12 :.%to|
|00000c60| 6b 65 6e 09 49 44 45 4e | 54 49 46 49 45 52 20 53 |ken.IDEN|TIFIER S|
|00000c70| 54 41 52 54 5f 54 4f 4b | 45 4e 20 4e 55 4d 42 45 |TART_TOK|EN NUMBE|
|00000c80| 52 0a 58 58 20 20 31 33 | 20 3a 09 0a 58 58 20 20 |R.XX 13| :..XX |
|00000c90| 31 34 20 3a 09 25 73 74 | 61 72 74 09 73 6d 61 6c |14 :.%st|art.smal|
|00000ca0| 6c 0a 58 58 20 20 31 35 | 20 3a 09 0a 58 58 20 20 |l.XX 15| :..XX |
|00000cb0| 31 36 20 3a 09 25 25 0a | 58 58 20 20 31 37 20 3a |16 :.%%.|XX 17 :|
|00000cc0| 09 0a 58 58 20 20 31 38 | 20 3a 09 73 6d 61 6c 6c |..XX 18| :.small|
|00000cd0| 0a 58 58 20 20 31 39 20 | 3a 09 09 3a 09 73 74 61 |.XX 19 |:..:.sta|
|00000ce0| 72 74 20 6d 69 64 64 6c | 65 0a 58 58 20 20 32 30 |rt middl|e.XX 20|
|00000cf0| 20 3a 09 09 09 09 7b 0a | 58 58 20 20 32 31 20 3a | :....{.|XX 21 :|
|00000d00| 09 09 09 09 09 70 72 69 | 6e 74 66 28 22 5c 6e 5c |.....pri|ntf("\n\|
|00000d10| 6e 4d 69 64 64 6c 65 22 | 29 3b 0a 58 58 20 20 32 |nMiddle"|);.XX 2|
|00000d20| 32 20 3a 09 09 09 09 09 | 79 79 63 6c 65 61 72 69 |2 :.....|yycleari|
|00000d30| 6e 3b 0a 58 58 20 20 32 | 33 20 3a 09 09 09 09 09 |n;.XX 2|3 :.....|
|00000d40| 72 65 74 75 72 6e 28 30 | 29 3b 0a 58 58 20 20 32 |return(0|);.XX 2|
|00000d50| 34 20 3a 09 09 09 09 7d | 0a 58 58 20 20 32 35 20 |4 :....}|.XX 25 |
|00000d60| 3a 09 09 09 65 6e 64 20 | 70 6f 73 74 61 6d 62 6c |:...end |postambl|
|00000d70| 65 0a 58 58 20 20 32 36 | 20 3a 09 09 3b 0a 58 58 |e.XX 26| :..;.XX|
|00000d80| 20 20 32 37 20 3a 09 0a | 58 58 20 20 32 38 20 3a | 27 :..|XX 28 :|
|00000d90| 09 73 74 61 72 74 0a 58 | 58 20 20 32 39 20 3a 09 |.start.X|X 29 :.|
|00000da0| 09 3a 09 2f 2a 20 65 6d | 70 74 79 20 2a 2f 0a 58 |.:./* em|pty */.X|
|00000db0| 58 20 20 33 30 20 3a 09 | 09 7c 09 53 54 41 52 54 |X 30 :.|.|.START|
|00000dc0| 5f 54 4f 4b 45 4e 0a 58 | 58 20 20 33 31 20 3a 09 |_TOKEN.X|X 31 :.|
|00000dd0| 09 3b 0a 58 58 20 20 33 | 32 20 3a 09 0a 58 58 20 |.;.XX 3|2 :..XX |
|00000de0| 20 33 33 20 3a 09 6d 69 | 64 64 6c 65 0a 58 58 20 | 33 :.mi|ddle.XX |
|00000df0| 20 33 34 20 3a 09 09 3a | 0a 58 58 20 20 33 35 20 | 34 :..:|.XX 35 |
|00000e00| 3a 09 09 3b 0a 58 58 20 | 20 33 36 20 3a 09 0a 58 |:..;.XX | 36 :..X|
|00000e10| 58 20 20 33 37 20 3a 09 | 6d 69 64 64 6c 65 0a 58 |X 37 :.|middle.X|
|00000e20| 58 20 20 33 38 20 3a 09 | 09 3a 09 4d 49 44 5f 54 |X 38 :.|.:.MID_T|
|00000e30| 4f 4b 45 4e 0a 58 58 20 | 20 33 39 20 3a 09 09 7c |OKEN.XX | 39 :..||
|00000e40| 09 2f 2a 20 65 6d 70 74 | 79 20 2a 2f 0a 58 58 20 |./* empt|y */.XX |
|00000e50| 20 34 30 20 3a 09 09 3b | 0a 58 58 20 20 34 31 20 | 40 :..;|.XX 41 |
|00000e60| 3a 09 0a 58 58 20 20 34 | 32 20 3a 09 25 25 0a 0a |:..XX 4|2 :.%%..|
|00000e70| 0a 58 58 27 73 6d 61 6c | 6c 27 20 2d 0a 58 58 7e |.XX'smal|l' -.XX~|
|00000e80| 7e 7e 7e 7e 7e 7e 09 09 | 2a 31 38 20 2c 20 6e 65 |~~~~~~..|*18 , ne|
|00000e90| 76 65 72 20 6f 63 63 75 | 72 73 20 6f 6e 20 72 68 |ver occu|rs on rh|
|00000ea0| 73 20 6f 66 20 72 75 6c | 65 20 2d 20 73 74 61 72 |s of rul|e - star|
|00000eb0| 74 20 72 75 6c 65 3f 0a | 58 58 27 73 74 61 72 74 |t rule?.|XX'start|
|00000ec0| 27 20 2d 0a 58 58 7e 7e | 7e 7e 7e 7e 7e 09 09 2a |' -.XX~~|~~~~~..*|
|00000ed0| 32 38 20 2c 20 31 39 0a | 58 58 27 6d 69 64 64 6c |28 , 19.|XX'middl|
|00000ee0| 65 27 20 2d 0a 58 58 7e | 7e 7e 7e 7e 7e 7e 09 09 |e' -.XX~|~~~~~~..|
|00000ef0| 2a 33 33 20 2c 20 2a 33 | 37 2c 20 31 39 0a 58 58 |*33 , *3|7, 19.XX|
|00000f00| 27 65 6e 64 27 20 2d 0a | 58 58 7e 7e 7e 7e 7e 7e |'end' -.|XX~~~~~~|
|00000f10| 7e 09 09 69 73 20 6e 6f | 74 20 64 65 63 6c 61 72 |~..is no|t declar|
|00000f20| 65 64 20 2d 20 74 6f 6b | 65 6e 3f 3f 2c 20 32 35 |ed - tok|en??, 25|
|00000f30| 0a 58 58 27 70 6f 73 74 | 61 6d 62 6c 65 27 20 2d |.XX'post|amble' -|
|00000f40| 0a 58 58 7e 7e 7e 7e 7e | 7e 7e 09 09 69 73 20 6e |.XX~~~~~|~~..is n|
|00000f50| 6f 74 20 64 65 63 6c 61 | 72 65 64 20 2d 20 74 6f |ot decla|red - to|
|00000f60| 6b 65 6e 3f 3f 2c 20 32 | 35 0a 58 58 27 53 54 41 |ken??, 2|5.XX'STA|
|00000f70| 52 54 5f 54 4f 4b 45 4e | 27 20 2d 0a 58 58 7e 7e |RT_TOKEN|' -.XX~~|
|00000f80| 7e 7e 7e 7e 7e 09 09 69 | 73 20 6e 6f 74 20 64 65 |~~~~~..i|s not de|
|00000f90| 63 6c 61 72 65 64 20 2d | 20 74 6f 6b 65 6e 3f 3f |clared -| token??|
|00000fa0| 2c 20 33 30 0a 58 58 27 | 4d 49 44 5f 54 4f 4b 45 |, 30.XX'|MID_TOKE|
|00000fb0| 4e 27 20 2d 0a 58 58 7e | 7e 7e 7e 7e 7e 7e 09 09 |N' -.XX~|~~~~~~..|
|00000fc0| 69 73 20 6e 6f 74 20 64 | 65 63 6c 61 72 65 64 20 |is not d|eclared |
|00000fd0| 2d 20 74 6f 6b 65 6e 3f | 3f 2c 20 33 38 0a 0a 58 |- token?|?, 38..X|
|00000fe0| 58 09 45 6e 64 20 6f 66 | 20 58 2d 72 65 66 0a 58 |X.End of| X-ref.X|
|00000ff0| 58 09 7e 7e 7e 7e 7e 7e | 7e 7e 7e 7e 7e 7e 0a 58 |X.~~~~~~|~~~~~~.X|
|00001000| 58 2e 66 69 0a 58 58 2e | 52 45 0a 58 58 2e 53 48 |X.fi.XX.|RE.XX.SH|
|00001010| 20 42 55 47 53 0a 58 58 | 53 68 6f 75 6c 64 20 62 | BUGS.XX|Should b|
|00001020| 65 20 61 62 6c 65 20 74 | 6f 20 75 6e 64 65 72 73 |e able t|o unders|
|00001030| 74 61 6e 64 20 74 68 65 | 0a 58 58 2e 49 20 25 74 |tand the|.XX.I %t|
|00001040| 6f 6b 65 6e 0a 58 58 61 | 6e 64 20 73 69 6d 69 6c |oken.XXa|nd simil|
|00001050| 61 72 20 64 69 72 65 63 | 74 69 76 65 73 2e 0a 40 |ar direc|tives..@|
|00001060| 2f 2f 45 2a 4f 2a 46 20 | 79 79 72 65 66 2e 31 2f |//E*O*F |yyref.1/|
|00001070| 2f 0a 63 68 6d 6f 64 20 | 75 3d 72 77 2c 67 3d 72 |/.chmod |u=rw,g=r|
|00001080| 77 2c 6f 3d 72 77 20 79 | 79 72 65 66 2e 31 0a 20 |w,o=rw y|yref.1. |
|00001090| 0a 65 63 68 6f 20 78 20 | 2d 20 79 79 72 65 66 2d |.echo x |- yyref-|
|000010a0| 67 72 61 6d 6d 65 72 0a | 73 65 64 20 27 73 2f 5e |grammer.|sed 's/^|
|000010b0| 58 58 2f 2f 27 20 3e 20 | 22 79 79 72 65 66 2d 67 |XX//' > |"yyref-g|
|000010c0| 72 61 6d 6d 65 72 22 20 | 3c 3c 27 40 2f 2f 45 2a |rammer" |<<'@//E*|
|000010d0| 4f 2a 46 20 79 79 72 65 | 66 2d 67 72 61 6d 6d 65 |O*F yyre|f-gramme|
|000010e0| 72 2f 2f 27 0a 58 58 25 | 7b 0a 0a 58 58 23 20 69 |r//'.XX%|{..XX# i|
|000010f0| 6e 63 6c 75 64 65 20 3c | 63 74 79 70 65 2e 68 3e |nclude <|ctype.h>|
|00001100| 0a 58 58 23 20 69 6e 63 | 6c 75 64 65 20 3c 73 74 |.XX# inc|lude <st|
|00001110| 64 69 6f 2e 68 3e 0a 0a | 58 58 25 7d 0a 0a 0a 58 |dio.h>..|XX%}...X|
|00001120| 58 09 2f 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |X./*****|********|
|00001130| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001140| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001150| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 5c 0a 58 58 09 2a |********|**\.XX.*|
|00001160| 09 09 09 09 09 09 09 2a | 0a 58 58 09 2a 09 58 5f |.......*|.XX.*.X_|
|00001170| 72 65 66 65 72 65 6e 63 | 65 20 70 72 6f 67 72 61 |referenc|e progra|
|00001180| 6d 20 66 6f 72 20 59 41 | 43 43 20 66 69 6c 65 73 |m for YA|CC files|
|00001190| 09 09 2a 0a 58 58 09 2a | 09 7e 7e 7e 7e 7e 7e 7e |..*.XX.*|.~~~~~~~|
|000011a0| 7e 7e 7e 7e 7e 7e 7e 7e | 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~|~~~~~~~~|
|000011b0| 7e 7e 7e 7e 7e 7e 7e 7e | 7e 7e 7e 09 09 2a 0a 58 |~~~~~~~~|~~~..*.X|
|000011c0| 58 09 2a 09 09 09 09 09 | 09 09 2a 0a 58 58 09 2a |X.*.....|..*.XX.*|
|000011d0| 09 43 61 74 68 79 20 54 | 61 79 6c 6f 72 2c 09 09 |.Cathy T|aylor,..|
|000011e0| 09 09 09 2a 0a 58 58 09 | 2a 09 63 2f 6f 20 44 65 |...*.XX.|*.c/o De|
|000011f0| 70 61 72 74 6d 65 6e 74 | 20 6f 66 20 43 6f 6d 70 |partment| of Comp|
|00001200| 75 74 69 6e 67 2c 09 09 | 09 2a 0a 58 58 09 2a 09 |uting,..|.*.XX.*.|
|00001210| 55 6e 69 76 65 72 73 69 | 74 79 20 6f 66 20 4c 61 |Universi|ty of La|
|00001220| 6e 63 61 73 74 65 72 2c | 09 09 09 2a 0a 58 58 09 |ncaster,|...*.XX.|
|00001230| 2a 09 42 61 69 6c 72 69 | 67 67 2c 20 4c 61 6e 63 |*.Bailri|gg, Lanc|
|00001240| 61 73 74 65 72 2c 20 45 | 6e 67 6c 61 6e 64 2e 09 |aster, E|ngland..|
|00001250| 09 09 2a 0a 58 58 09 2a | 09 44 61 74 65 20 3a 20 |..*.XX.*|.Date : |
|00001260| 46 72 69 20 4a 75 6c 20 | 20 34 20 30 30 3a 35 30 |Fri Jul | 4 00:50|
|00001270| 3a 30 34 20 42 53 54 20 | 31 39 38 36 09 09 2a 0a |:04 BST |1986..*.|
|00001280| 58 58 09 2a 09 09 09 09 | 09 09 09 2a 0a 58 58 09 |XX.*....|...*.XX.|
|00001290| 5c 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |\*******|********|
|000012a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000012b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000012c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2f 0a 0a 0a 58 58 09 2f |********|/...XX./|
|000012d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000012e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000012f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 5c |********|*******\|
|00001300| 0a 58 58 09 2a 09 09 09 | 09 09 09 2a 0a 58 58 09 |.XX.*...|...*.XX.|
|00001310| 2a 09 59 61 63 63 20 49 | 6e 70 75 74 20 53 79 6e |*.Yacc I|nput Syn|
|00001320| 74 61 78 09 09 09 2a 0a | 58 58 09 2a 09 7e 7e 7e |tax...*.|XX.*.~~~|
|00001330| 7e 7e 7e 7e 7e 7e 7e 7e | 7e 7e 7e 7e 7e 7e 09 09 |~~~~~~~~|~~~~~~..|
|00001340| 09 2a 0a 58 58 09 2a 09 | 09 09 09 09 09 2a 0a 58 |.*.XX.*.|.....*.X|
|00001350| 58 09 2a 09 41 64 61 70 | 74 65 64 20 66 72 6f 6d |X.*.Adap|ted from|
|00001360| 20 74 68 65 20 64 6f 63 | 75 6d 65 6e 74 09 09 2a | the doc|ument..*|
|00001370| 0a 58 58 09 2a 09 27 59 | 41 43 43 20 2d 20 59 65 |.XX.*.'Y|ACC - Ye|
|00001380| 74 20 41 6e 6f 74 68 65 | 72 20 43 6f 6d 70 69 6c |t Anothe|r Compil|
|00001390| 65 72 20 43 6f 6d 70 69 | 6c 65 72 27 09 2a 0a 58 |er Compi|ler'.*.X|
|000013a0| 58 09 2a 09 09 62 79 09 | 09 09 09 2a 0a 58 58 09 |X.*..by.|...*.XX.|
|000013b0| 2a 09 20 20 20 53 2e 20 | 43 2e 20 4a 6f 68 6e 73 |*. S. |C. Johns|
|000013c0| 6f 6e 09 09 09 2a 0a 58 | 58 09 2a 09 09 09 09 09 |on...*.X|X.*.....|
|000013d0| 09 2a 0a 58 58 09 2a 09 | 44 61 74 65 3a 20 54 75 |.*.XX.*.|Date: Tu|
|000013e0| 65 20 4a 75 6c 20 20 31 | 20 30 32 3a 34 30 3a 31 |e Jul 1| 02:40:1|
|000013f0| 38 20 42 53 54 20 31 39 | 38 36 09 2a 0a 58 58 09 |8 BST 19|86.*.XX.|
|00001400| 2a 09 09 09 09 09 09 2a | 0a 58 58 09 5c 2a 2a 2a |*......*|.XX.\***|
|00001410| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001420| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001430| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2f 0a 0a 0a |********|****/...|
|00001440| 58 58 25 74 6f 6b 65 6e | 09 49 44 45 4e 54 49 46 |XX%token|.IDENTIF|
|00001450| 49 45 52 20 43 48 41 52 | 41 43 54 45 52 20 4e 55 |IER CHAR|ACTER NU|
|00001460| 4d 42 45 52 0a 58 58 25 | 74 6f 6b 65 6e 09 4c 45 |MBER.XX%|token.LE|
|00001470| 46 54 20 52 49 47 48 54 | 20 4e 4f 4e 41 53 53 4f |FT RIGHT| NONASSO|
|00001480| 43 20 54 4f 4b 45 4e 20 | 50 52 45 43 20 54 59 50 |C TOKEN |PREC TYP|
|00001490| 45 20 53 54 41 52 54 20 | 55 4e 49 4f 4e 0a 58 58 |E START |UNION.XX|
|000014a0| 25 74 6f 6b 65 6e 09 50 | 45 52 20 50 45 52 43 55 |%token.P|ER PERCU|
|000014b0| 52 4c 20 41 43 54 0a 58 | 58 25 74 6f 6b 65 6e 09 |RL ACT.X|X%token.|
|000014c0| 43 4f 4c 4f 4e 20 53 45 | 4d 49 43 4f 4c 4f 4e 20 |COLON SE|MICOLON |
|000014d0| 43 4f 4d 4d 41 20 4f 52 | 20 4c 45 53 53 20 47 52 |COMMA OR| LESS GR|
|000014e0| 45 41 54 45 52 0a 0a 58 | 58 25 73 74 61 72 74 09 |EATER..X|X%start.|
|000014f0| 73 70 65 63 0a 0a 58 58 | 25 25 0a 0a 58 58 73 70 |spec..XX|%%..XXsp|
|00001500| 65 63 0a 58 58 09 3a 09 | 64 65 66 73 20 50 45 52 |ec.XX.:.|defs PER|
|00001510| 20 72 75 6c 65 73 20 74 | 61 69 6c 0a 58 58 09 09 | rules t|ail.XX..|
|00001520| 09 7b 0a 58 58 09 09 09 | 09 70 72 69 6e 74 66 28 |.{.XX...|.printf(|
|00001530| 22 5c 6e 5c 6e 22 29 3b | 0a 58 58 09 09 09 09 79 |"\n\n");|.XX....y|
|00001540| 79 63 6c 65 61 72 69 6e | 3b 0a 58 58 09 09 09 09 |yclearin|;.XX....|
|00001550| 72 65 74 75 72 6e 28 30 | 29 3b 0a 58 58 09 09 09 |return(0|);.XX...|
|00001560| 7d 0a 58 58 09 3b 0a 0a | 58 58 74 61 69 6c 0a 58 |}.XX.;..|XXtail.X|
|00001570| 58 09 3a 09 2f 2a 20 65 | 6d 70 74 79 20 2a 2f 0a |X.:./* e|mpty */.|
|00001580| 58 58 09 7c 09 50 45 52 | 20 0a 58 58 09 3b 0a 0a |XX.|.PER| .XX.;..|
|00001590| 58 58 64 65 66 73 0a 58 | 58 09 3a 09 2f 2a 20 65 |XXdefs.X|X.:./* e|
|000015a0| 6d 70 74 79 20 2a 2f 0a | 58 58 09 7c 09 64 65 66 |mpty */.|XX.|.def|
|000015b0| 5f 62 6b 0a 58 58 09 3b | 0a 0a 58 58 64 65 66 5f |_bk.XX.;|..XXdef_|
|000015c0| 62 6b 0a 58 58 09 3a 09 | 64 65 66 0a 58 58 09 7c |bk.XX.:.|def.XX.||
|000015d0| 09 64 65 66 5f 62 6b 20 | 64 65 66 0a 58 58 09 3b |.def_bk |def.XX.;|
|000015e0| 0a 0a 58 58 64 65 66 0a | 58 58 09 3a 09 53 54 41 |..XXdef.|XX.:.STA|
|000015f0| 52 54 20 49 44 45 4e 54 | 49 46 49 45 52 0a 58 58 |RT IDENT|IFIER.XX|
|00001600| 09 7c 09 55 4e 49 4f 4e | 0a 58 58 09 7c 09 50 45 |.|.UNION|.XX.|.PE|
|00001610| 52 43 55 52 4c 0a 58 58 | 09 7c 09 72 77 6f 72 64 |RCURL.XX|.|.rword|
|00001620| 20 74 61 67 20 6e 6c 69 | 73 74 0a 58 58 09 3b 0a | tag nli|st.XX.;.|
|00001630| 0a 58 58 72 77 6f 72 64 | 0a 58 58 09 3a 09 54 4f |.XXrword|.XX.:.TO|
|00001640| 4b 45 4e 0a 58 58 09 7c | 09 4c 45 46 54 0a 58 58 |KEN.XX.||.LEFT.XX|
|00001650| 09 7c 09 52 49 47 48 54 | 0a 58 58 09 7c 09 4e 4f |.|.RIGHT|.XX.|.NO|
|00001660| 4e 41 53 53 4f 43 0a 58 | 58 09 7c 09 54 59 50 45 |NASSOC.X|X.|.TYPE|
|00001670| 0a 58 58 09 3b 0a 0a 58 | 58 74 61 67 0a 58 58 09 |.XX.;..X|Xtag.XX.|
|00001680| 3a 09 2f 2a 20 65 6d 70 | 74 79 20 2a 2f 0a 58 58 |:./* emp|ty */.XX|
|00001690| 09 7c 09 4c 45 53 53 20 | 49 44 45 4e 54 49 46 49 |.|.LESS |IDENTIFI|
|000016a0| 45 52 20 47 52 45 41 54 | 45 52 0a 58 58 09 3b 0a |ER GREAT|ER.XX.;.|
|000016b0| 0a 58 58 6e 6c 69 73 74 | 0a 58 58 09 3a 09 6e 6d |.XXnlist|.XX.:.nm|
|000016c0| 6e 6f 0a 58 58 09 7c 09 | 6e 6c 69 73 74 20 6f 70 |no.XX.|.|nlist op|
|000016d0| 74 5f 63 6f 6d 6d 61 20 | 6e 6d 6e 6f 0a 58 58 09 |t_comma |nmno.XX.|
|000016e0| 3b 0a 0a 58 58 6f 70 74 | 5f 63 6f 6d 6d 61 0a 58 |;..XXopt|_comma.X|
|000016f0| 58 09 3a 09 2f 2a 20 65 | 6d 70 74 79 20 2a 2f 0a |X.:./* e|mpty */.|
|00001700| 58 58 09 7c 09 43 4f 4d | 4d 41 0a 58 58 09 3b 0a |XX.|.COM|MA.XX.;.|
|00001710| 0a 58 58 6e 6d 6e 6f 0a | 58 58 09 3a 09 49 44 45 |.XXnmno.|XX.:.IDE|
|00001720| 4e 54 49 46 49 45 52 20 | 6f 70 74 5f 6e 75 6d 0a |NTIFIER |opt_num.|
|00001730| 58 58 09 3b 0a 0a 58 58 | 6f 70 74 5f 6e 75 6d 0a |XX.;..XX|opt_num.|
|00001740| 58 58 09 3a 09 2f 2a 20 | 65 6d 70 74 79 20 2a 2f |XX.:./* |empty */|
|00001750| 0a 58 58 09 7c 09 4e 55 | 4d 42 45 52 0a 58 58 09 |.XX.|.NU|MBER.XX.|
|00001760| 3b 0a 58 58 72 75 6c 65 | 73 0a 58 58 09 3a 09 72 |;.XXrule|s.XX.:.r|
|00001770| 75 6c 65 0a 58 58 09 7c | 09 72 75 6c 65 73 20 72 |ule.XX.||.rules r|
|00001780| 75 6c 65 0a 58 58 09 3b | 0a 0a 58 58 72 75 6c 65 |ule.XX.;|..XXrule|
|00001790| 0a 58 58 09 3a 09 49 44 | 45 4e 54 49 46 49 45 52 |.XX.:.ID|ENTIFIER|
|000017a0| 0a 58 58 09 09 7b 0a 58 | 58 09 09 09 79 79 61 63 |.XX..{.X|X...yyac|
|000017b0| 74 69 6f 6e 28 4f 4e 5f | 43 5f 49 44 45 4e 54 2c |tion(ON_|C_IDENT,|
|000017c0| 6c 69 6e 65 29 3b 0a 58 | 58 09 09 7d 0a 58 58 09 |line);.X|X..}.XX.|
|000017d0| 09 43 4f 4c 4f 4e 20 62 | 6f 64 79 20 53 45 4d 49 |.COLON b|ody SEMI|
|000017e0| 43 4f 4c 4f 4e 0a 58 58 | 09 3b 0a 0a 58 58 62 6f |COLON.XX|.;..XXbo|
|000017f0| 64 79 0a 58 58 09 3a 09 | 62 6f 64 79 5f 62 6c 6f |dy.XX.:.|body_blo|
|00001800| 63 6b 0a 58 58 09 7c 09 | 62 6f 64 79 20 4f 52 20 |ck.XX.|.|body OR |
|00001810| 62 6f 64 79 5f 62 6c 6f | 63 6b 0a 58 58 09 3b 0a |body_blo|ck.XX.;.|
|00001820| 0a 58 58 62 6f 64 79 5f | 62 6c 6f 63 6b 0a 58 58 |.XXbody_|block.XX|
|00001830| 09 3a 09 2f 2a 20 65 6d | 70 74 79 20 2a 2f 0a 58 |.:./* em|pty */.X|
|00001840| 58 09 7c 09 62 6f 64 79 | 5f 62 6c 6f 63 6b 20 62 |X.|.body|_block b|
|00001850| 6f 64 79 5f 65 6e 74 69 | 74 79 0a 58 58 09 3b 0a |ody_enti|ty.XX.;.|
|00001860| 0a 58 58 62 6f 64 79 5f | 65 6e 74 69 74 79 0a 58 |.XXbody_|entity.X|
|00001870| 58 09 3a 09 6f 70 74 5f | 70 72 65 63 20 69 64 5f |X.:.opt_|prec id_|
|00001880| 65 6e 74 0a 58 58 09 7c | 09 41 43 54 0a 58 58 09 |ent.XX.||.ACT.XX.|
|00001890| 3b 0a 0a 58 58 69 64 5f | 65 6e 74 0a 58 58 09 3a |;..XXid_|ent.XX.:|
|000018a0| 09 49 44 45 4e 54 49 46 | 49 45 52 0a 58 58 09 09 |.IDENTIF|IER.XX..|
|000018b0| 7b 0a 58 58 09 09 09 79 | 79 61 63 74 69 6f 6e 28 |{.XX...y|yaction(|
|000018c0| 4f 4e 5f 49 44 45 4e 54 | 2c 6c 69 6e 65 29 3b 0a |ON_IDENT|,line);.|
|000018d0| 58 58 09 09 7d 0a 58 58 | 09 7c 09 43 48 41 52 41 |XX..}.XX|.|.CHARA|
|000018e0| 43 54 45 52 0a 58 58 09 | 3b 0a 0a 58 58 6f 70 74 |CTER.XX.|;..XXopt|
|000018f0| 5f 70 72 65 63 0a 58 58 | 09 3a 09 2f 2a 20 65 6d |_prec.XX|.:./* em|
|00001900| 70 74 79 20 2a 2f 0a 58 | 58 09 7c 09 50 52 45 43 |pty */.X|X.|.PREC|
|00001910| 0a 58 58 09 3b 0a 0a 0a | 58 58 25 25 0a 0a 58 58 |.XX.;...|XX%%..XX|
|00001920| 23 20 69 6e 63 6c 75 64 | 65 09 3c 73 74 64 69 6f |# includ|e.<stdio|
|00001930| 2e 68 3e 0a 58 58 23 20 | 69 6e 63 6c 75 64 65 09 |.h>.XX# |include.|
|00001940| 22 6c 65 78 2e 79 79 2e | 63 22 0a 58 58 23 20 69 |"lex.yy.|c".XX# i|
|00001950| 6e 63 6c 75 64 65 09 22 | 79 79 72 65 66 2d 6c 69 |nclude."|yyref-li|
|00001960| 6e 65 2e 68 22 0a 0a 58 | 58 23 64 65 66 69 6e 65 |ne.h"..X|X#define|
|00001970| 09 4f 4e 5f 43 5f 49 44 | 45 4e 54 09 30 30 30 0a |.ON_C_ID|ENT.000.|
|00001980| 58 58 23 64 65 66 69 6e | 65 09 4f 4e 5f 49 44 45 |XX#defin|e.ON_IDE|
|00001990| 4e 54 09 30 30 31 0a 0a | 58 58 23 64 65 66 69 6e |NT.001..|XX#defin|
|000019a0| 65 09 4d 41 58 49 44 45 | 4e 54 53 09 31 30 30 30 |e.MAXIDE|NTS.1000|
|000019b0| 0a 58 58 23 64 65 66 69 | 6e 65 09 4d 41 58 43 48 |.XX#defi|ne.MAXCH|
|000019c0| 41 52 53 09 31 30 30 0a | 58 58 23 64 65 66 69 6e |ARS.100.|XX#defin|
|000019d0| 65 09 4d 41 58 44 45 46 | 53 09 09 32 30 0a 58 58 |e.MAXDEF|S..20.XX|
|000019e0| 23 64 65 66 69 6e 65 09 | 4d 41 58 4f 43 43 53 09 |#define.|MAXOCCS.|
|000019f0| 09 31 30 30 30 0a 0a 58 | 58 73 74 72 75 63 74 09 |.1000..X|Xstruct.|
|00001a00| 49 52 45 43 20 7b 0a 58 | 58 09 09 63 68 61 72 09 |IREC {.X|X..char.|
|00001a10| 69 64 65 6e 74 5b 4d 41 | 58 43 48 41 52 53 5d 3b |ident[MA|XCHARS];|
|00001a20| 0a 58 58 09 09 69 6e 74 | 09 64 65 73 63 5b 4d 41 |.XX..int|.desc[MA|
|00001a30| 58 44 45 46 53 5d 3b 0a | 58 58 09 09 69 6e 74 09 |XDEFS];.|XX..int.|
|00001a40| 6e 65 78 74 64 65 73 63 | 3b 0a 58 58 09 09 69 6e |nextdesc|;.XX..in|
|00001a50| 74 09 6f 63 63 5b 4d 41 | 58 4f 43 43 53 5d 3b 0a |t.occ[MA|XOCCS];.|
|00001a60| 58 58 09 09 69 6e 74 09 | 6e 65 78 74 6f 63 63 3b |XX..int.|nextocc;|
|00001a70| 0a 58 58 09 09 7d 20 74 | 61 62 6c 65 5b 4d 41 58 |.XX..} t|able[MAX|
|00001a80| 49 44 45 4e 54 53 5d 3b | 0a 0a 0a 58 58 79 79 61 |IDENTS];|...XXyya|
|00001a90| 63 74 69 6f 6e 20 28 61 | 63 74 69 6f 6e 2c 6c 6e |ction (a|ction,ln|
|00001aa0| 29 0a 58 58 69 6e 74 09 | 61 63 74 69 6f 6e 3b 0a |).XXint.|action;.|
|00001ab0| 58 58 69 6e 74 09 6c 6e | 3b 0a 58 58 7b 0a 58 58 |XXint.ln|;.XX{.XX|
|00001ac0| 09 69 6e 74 09 69 64 3b | 0a 58 58 09 0a 58 58 09 |.int.id;|.XX..XX.|
|00001ad0| 69 64 20 3d 20 30 3b 0a | 58 58 09 77 68 69 6c 65 |id = 0;.|XX.while|
|00001ae0| 20 28 09 73 74 72 63 6d | 70 28 74 61 62 6c 65 5b | (.strcm|p(table[|
|00001af0| 69 64 5d 2e 69 64 65 6e | 74 2c 79 79 74 65 78 74 |id].iden|t,yytext|
|00001b00| 29 20 21 3d 20 30 20 26 | 26 20 73 74 72 63 6d 70 |) != 0 &|& strcmp|
|00001b10| 28 74 61 62 6c 65 5b 69 | 64 5d 2e 69 64 65 6e 74 |(table[i|d].ident|
|00001b20| 2c 22 22 29 20 21 3d 20 | 30 20 29 0a 58 58 09 09 |,"") != |0 ).XX..|
|00001b30| 69 64 2b 2b 3b 0a 0a 58 | 58 09 69 66 20 28 20 73 |id++;..X|X.if ( s|
|00001b40| 74 72 63 6d 70 28 74 61 | 62 6c 65 5b 69 64 5d 2e |trcmp(ta|ble[id].|
|00001b50| 69 64 65 6e 74 2c 20 79 | 79 74 65 78 74 29 20 21 |ident, y|ytext) !|
|00001b60| 3d 20 30 20 29 0a 58 58 | 09 7b 0a 0a 58 58 09 2f |= 0 ).XX|.{..XX./|
|00001b70| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001b80| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001b90| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001ba0| 2a 2a 2a 2a 2a 2a 2a 5c | 0a 58 58 09 2a 09 09 09 |*******\|.XX.*...|
|00001bb0| 09 09 09 09 2a 0a 58 58 | 09 2a 09 4e 65 77 20 6e |....*.XX|.*.New n|
|00001bc0| 6f 6e 2d 74 65 72 6d 69 | 6e 61 6c 20 74 6f 20 62 |on-termi|nal to b|
|00001bd0| 65 20 73 74 6f 72 65 64 | 2e 09 09 09 2a 0a 58 58 |e stored|....*.XX|
|00001be0| 09 2a 09 4e 6f 20 64 69 | 73 74 69 6e 63 74 69 6f |.*.No di|stinctio|
|00001bf0| 6e 20 69 73 20 6d 61 64 | 65 20 68 65 72 65 20 62 |n is mad|e here b|
|00001c00| 65 74 77 65 65 6e 20 74 | 6f 6b 65 6e 73 09 2a 0a |etween t|okens.*.|
|00001c10| 58 58 09 2a 09 61 6e 64 | 20 28 6e 6f 6e 29 20 74 |XX.*.and| (non) t|
|00001c20| 65 72 6d 69 6e 61 6c 73 | 2e 09 09 09 09 2a 0a 58 |erminals|.....*.X|
|00001c30| 58 09 2a 09 09 09 09 09 | 09 09 2a 0a 58 58 09 5c |X.*.....|..*.XX.\|
|00001c40| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001c50| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001c60| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001c70| 2a 2a 2a 2a 2a 2a 2a 2f | 0a 0a 58 58 09 09 73 74 |*******/|..XX..st|
|00001c80| 72 63 70 79 28 74 61 62 | 6c 65 5b 69 64 5d 2e 69 |rcpy(tab|le[id].i|
|00001c90| 64 65 6e 74 2c 79 79 74 | 65 78 74 29 3b 0a 58 58 |dent,yyt|ext);.XX|
|00001ca0| 09 09 74 61 62 6c 65 5b | 69 64 5d 2e 6e 65 78 74 |..table[|id].next|
|00001cb0| 64 65 73 63 20 3d 20 30 | 3b 0a 58 58 09 09 74 61 |desc = 0|;.XX..ta|
|00001cc0| 62 6c 65 5b 69 64 5d 2e | 6e 65 78 74 6f 63 63 20 |ble[id].|nextocc |
|00001cd0| 3d 20 30 3b 0a 58 58 09 | 7d 20 2f 2a 20 66 69 20 |= 0;.XX.|} /* fi |
|00001ce0| 2a 2f 0a 0a 58 58 09 73 | 77 69 74 63 68 20 28 61 |*/..XX.s|witch (a|
|00001cf0| 63 74 69 6f 6e 29 20 7b | 0a 58 58 09 63 61 73 65 |ction) {|.XX.case|
|00001d00| 20 4f 4e 5f 43 5f 49 44 | 45 4e 54 3a 0a 0a 58 58 | ON_C_ID|ENT:..XX|
|00001d10| 09 2f 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |./******|********|
|00001d20| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d40| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 5c 0a 58 58 09 2a 09 |********|*\.XX.*.|
|00001d50| 09 09 09 09 09 09 2a 0a | 58 58 09 2a 09 41 64 64 |......*.|XX.*.Add|
|00001d60| 20 74 6f 20 6c 69 73 74 | 20 6f 66 20 64 65 66 69 | to list| of defi|
|00001d70| 6e 69 74 69 6f 6e 20 6c | 69 6e 65 73 2e 09 09 2a |nition l|ines...*|
|00001d80| 0a 58 58 09 2a 09 09 09 | 09 09 09 09 2a 0a 58 58 |.XX.*...|....*.XX|
|00001d90| 09 5c 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.\******|********|
|00001da0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001db0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001dc0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2f 0a 0a 58 58 09 09 |********|*/..XX..|
|00001dd0| 74 61 62 6c 65 5b 69 64 | 5d 2e 64 65 73 63 5b 74 |table[id|].desc[t|
|00001de0| 61 62 6c 65 5b 69 64 5d | 2e 6e 65 78 74 64 65 73 |able[id]|.nextdes|
|00001df0| 63 2b 2b 5d 20 3d 20 6c | 6e 3b 0a 58 58 09 09 62 |c++] = l|n;.XX..b|
|00001e00| 72 65 61 6b 3b 0a 0a 58 | 58 09 63 61 73 65 20 4f |reak;..X|X.case O|
|00001e10| 4e 5f 49 44 45 4e 54 3a | 0a 58 58 09 09 09 09 0a |N_IDENT:|.XX.....|
|00001e20| 58 58 09 2f 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |XX./****|********|
|00001e30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001e40| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001e50| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 5c 0a 58 58 09 |********|***\.XX.|
|00001e60| 2a 09 09 09 09 09 09 09 | 2a 0a 58 58 09 2a 09 41 |*.......|*.XX.*.A|
|00001e70| 64 64 20 74 6f 20 6c 69 | 73 74 20 6f 66 20 6f 63 |dd to li|st of oc|
|00001e80| 63 75 72 61 6e 63 65 20 | 6c 69 6e 65 73 2e 09 09 |curance |lines...|
|00001e90| 09 2a 0a 58 58 09 2a 09 | 09 09 09 09 09 09 2a 0a |.*.XX.*.|......*.|
|00001ea0| 58 58 09 5c 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |XX.\****|********|
|00001eb0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001ec0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001ed0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2f 0a 0a 58 58 |********|***/..XX|
|00001ee0| 09 09 74 61 62 6c 65 5b | 69 64 5d 2e 6f 63 63 5b |..table[|id].occ[|
|00001ef0| 74 61 62 6c 65 5b 69 64 | 5d 2e 6e 65 78 74 6f 63 |table[id|].nextoc|
|00001f00| 63 2b 2b 5d 20 3d 20 6c | 6e 3b 0a 58 58 09 09 62 |c++] = l|n;.XX..b|
|00001f10| 72 65 61 6b 3b 0a 0a 58 | 58 09 64 65 66 61 75 6c |reak;..X|X.defaul|
|00001f20| 74 09 09 3a 0a 58 58 09 | 09 66 70 72 69 6e 74 66 |t..:.XX.|.fprintf|
|00001f30| 20 28 73 74 64 6f 75 74 | 2c 20 22 79 79 61 63 74 | (stdout|, "yyact|
|00001f40| 69 6f 6e 3a 20 69 6e 76 | 61 6c 69 64 20 61 63 74 |ion: inv|alid act|
|00001f50| 69 6f 6e 5c 6e 22 29 3b | 0a 58 58 09 09 72 65 74 |ion\n");|.XX..ret|
|00001f60| 75 72 6e 20 28 2d 31 29 | 3b 0a 58 58 09 09 7d 20 |urn (-1)|;.XX..} |
|00001f70| 2f 2a 20 68 63 74 69 77 | 73 20 2a 2f 0a 58 58 09 |/* hctiw|s */.XX.|
|00001f80| 72 65 74 75 72 6e 20 28 | 30 29 3b 0a 58 58 7d 20 |return (|0);.XX} |
|00001f90| 2f 2a 20 63 6f 72 70 20 | 2a 2f 0a 0a 58 58 6e 6c |/* corp |*/..XXnl|
|00001fa0| 69 6e 65 28 6c 6e 29 0a | 58 58 69 6e 74 09 6c 6e |ine(ln).|XXint.ln|
|00001fb0| 3b 0a 58 58 7b 0a 58 58 | 09 70 72 69 6e 74 66 28 |;.XX{.XX|.printf(|
|00001fc0| 22 25 34 64 20 3a 5c 74 | 22 2c 6c 6e 29 3b 0a 58 |"%4d :\t|",ln);.X|
|00001fd0| 58 7d 0a 0a 0a 58 58 09 | 63 68 61 72 09 64 65 63 |X}...XX.|char.dec|
|00001fe0| 6c 61 72 65 64 5f 61 74 | 5f 6d 61 72 6b 5b 5d 20 |lared_at|_mark[] |
|00001ff0| 3d 20 22 2a 22 3b 0a 58 | 58 09 63 68 61 72 09 6f |= "*";.X|X.char.o|
|00002000| 63 63 75 72 73 5f 61 74 | 5f 6d 61 72 6b 5b 5d 20 |ccurs_at|_mark[] |
|00002010| 3d 20 22 22 3b 0a 58 58 | 09 63 68 61 72 09 74 6f |= "";.XX|.char.to|
|00002020| 6b 65 6e 5f 6d 61 79 62 | 65 5b 5d 20 3d 20 22 69 |ken_mayb|e[] = "i|
|00002030| 73 20 6e 6f 74 20 64 65 | 63 6c 61 72 65 64 20 2d |s not de|clared -|
|00002040| 20 74 6f 6b 65 6e 3f 3f | 22 3b 0a 58 58 09 63 68 | token??|";.XX.ch|
|00002050| 61 72 09 73 74 61 72 74 | 5f 6d 61 79 62 65 5b 5d |ar.start|_maybe[]|
|00002060| 20 3d 20 22 6e 65 76 65 | 72 20 6f 63 63 75 72 73 | = "neve|r occurs|
|00002070| 20 6f 6e 20 72 68 73 20 | 6f 66 20 72 75 6c 65 20 | on rhs |of rule |
|00002080| 2d 20 73 74 61 72 74 20 | 72 75 6c 65 3f 22 3b 0a |- start |rule?";.|
|00002090| 58 58 09 0a 58 58 2f 2a | 0a 58 58 2a 09 53 74 72 |XX..XX/*|.XX*.Str|
|000020a0| 69 6e 67 73 20 66 6f 72 | 20 6f 75 74 70 75 74 0a |ings for| output.|
|000020b0| 58 58 2a 2f 0a 0a 58 58 | 6d 61 69 6e 20 28 29 0a |XX*/..XX|main ().|
|000020c0| 58 58 7b 0a 58 58 09 69 | 6e 74 09 69 6e 64 2c 69 |XX{.XX.i|nt.ind,i|
|000020d0| 64 3b 0a 0a 58 58 09 73 | 74 72 63 70 79 28 74 61 |d;..XX.s|trcpy(ta|
|000020e0| 62 6c 65 5b 30 5d 2e 69 | 64 65 6e 74 2c 22 22 29 |ble[0].i|dent,"")|
|000020f0| 3b 0a 0a 58 58 09 6c 69 | 6e 65 20 3d 20 30 3b 0a |;..XX.li|ne = 0;.|
|00002100| 58 58 09 6e 6c 69 6e 65 | 28 2b 2b 6c 69 6e 65 29 |XX.nline|(++line)|
|00002110| 3b 0a 0a 58 58 09 79 79 | 70 61 72 73 65 20 28 29 |;..XX.yy|parse ()|
|00002120| 3b 0a 0a 58 58 09 69 64 | 20 3d 20 30 3b 0a 58 58 |;..XX.id| = 0;.XX|
|00002130| 09 77 68 69 6c 65 28 20 | 73 74 72 63 6d 70 28 74 |.while( |strcmp(t|
|00002140| 61 62 6c 65 5b 69 64 5d | 2e 69 64 65 6e 74 2c 22 |able[id]|.ident,"|
|00002150| 22 29 20 21 3d 20 30 20 | 29 0a 58 58 09 7b 0a 58 |") != 0 |).XX.{.X|
|00002160| 58 09 09 70 72 69 6e 74 | 66 28 22 5c 6e 27 25 73 |X..print|f("\n'%s|
|00002170| 27 20 2d 5c 6e 7e 7e 7e | 7e 7e 7e 7e 5c 74 5c 74 |' -\n~~~|~~~~\t\t|
|00002180| 22 2c 74 61 62 6c 65 5b | 69 64 5d 2e 69 64 65 6e |",table[|id].iden|
|00002190| 74 29 3b 0a 58 58 09 09 | 69 66 20 28 74 61 62 6c |t);.XX..|if (tabl|
|000021a0| 65 5b 69 64 5d 2e 6e 65 | 78 74 64 65 73 63 20 3d |e[id].ne|xtdesc =|
|000021b0| 3d 20 30 20 29 0a 58 58 | 09 09 20 20 20 20 70 72 |= 0 ).XX|.. pr|
|000021c0| 69 6e 74 66 28 22 25 73 | 22 2c 74 6f 6b 65 6e 5f |intf("%s|",token_|
|000021d0| 6d 61 79 62 65 29 3b 0a | 58 58 09 09 65 6c 73 65 |maybe);.|XX..else|
|000021e0| 0a 58 58 09 09 7b 0a 58 | 58 09 09 20 20 20 20 69 |.XX..{.X|X.. i|
|000021f0| 6e 64 20 3d 20 30 3b 0a | 58 58 09 09 20 20 20 20 |nd = 0;.|XX.. |
|00002200| 70 72 69 6e 74 66 28 22 | 2a 25 64 20 22 2c 74 61 |printf("|*%d ",ta|
|00002210| 62 6c 65 5b 69 64 5d 2e | 64 65 73 63 5b 69 6e 64 |ble[id].|desc[ind|
|00002220| 2b 2b 5d 29 3b 0a 58 58 | 09 09 20 20 20 20 66 6f |++]);.XX|.. fo|
|00002230| 72 20 28 20 69 6e 64 3d | 31 3b 20 69 6e 64 20 3c |r ( ind=|1; ind <|
|00002240| 20 74 61 62 6c 65 5b 69 | 64 5d 2e 6e 65 78 74 64 | table[i|d].nextd|
|00002250| 65 73 63 20 3b 20 69 6e | 64 2b 2b 29 0a 58 58 09 |esc ; in|d++).XX.|
|00002260| 09 09 70 72 69 6e 74 66 | 28 22 2c 20 25 73 25 64 |..printf|(", %s%d|
|00002270| 22 2c 64 65 63 6c 61 72 | 65 64 5f 61 74 5f 6d 61 |",declar|ed_at_ma|
|00002280| 72 6b 2c 74 61 62 6c 65 | 5b 69 64 5d 2e 64 65 73 |rk,table|[id].des|
|00002290| 63 5b 69 6e 64 5d 29 3b | 0a 58 58 09 09 7d 0a 58 |c[ind]);|.XX..}.X|
|000022a0| 58 09 09 69 66 20 28 74 | 61 62 6c 65 5b 69 64 5d |X..if (t|able[id]|
|000022b0| 2e 6f 63 63 5b 30 5d 20 | 3d 3d 20 30 29 0a 58 58 |.occ[0] |== 0).XX|
|000022c0| 09 09 20 20 20 20 70 72 | 69 6e 74 66 28 22 2c 20 |.. pr|intf(", |
|000022d0| 25 73 22 2c 73 74 61 72 | 74 5f 6d 61 79 62 65 29 |%s",star|t_maybe)|
|000022e0| 3b 0a 58 58 09 09 65 6c | 73 65 0a 58 58 09 09 7b |;.XX..el|se.XX..{|
|000022f0| 0a 58 58 09 09 20 20 20 | 20 66 6f 72 20 28 20 69 |.XX.. | for ( i|
|00002300| 6e 64 20 3d 20 30 3b 20 | 69 6e 64 20 3c 20 74 61 |nd = 0; |ind < ta|
|00002310| 62 6c 65 5b 69 64 5d 2e | 6e 65 78 74 6f 63 63 20 |ble[id].|nextocc |
|00002320| 3b 20 69 6e 64 2b 2b 20 | 29 0a 58 58 09 09 09 70 |; ind++ |).XX...p|
|00002330| 72 69 6e 74 66 28 22 2c | 20 25 73 25 64 22 2c 6f |rintf(",| %s%d",o|
|00002340| 63 63 75 72 73 5f 61 74 | 5f 6d 61 72 6b 2c 74 61 |ccurs_at|_mark,ta|
|00002350| 62 6c 65 5b 69 64 5d 2e | 6f 63 63 5b 69 6e 64 5d |ble[id].|occ[ind]|
|00002360| 29 3b 0a 58 58 09 09 7d | 0a 58 58 09 09 69 64 2b |);.XX..}|.XX..id+|
|00002370| 2b 3b 0a 58 58 09 7d 0a | 58 58 09 70 72 69 6e 74 |+;.XX.}.|XX.print|
|00002380| 66 28 22 5c 6e 5c 6e 5c | 74 45 6e 64 20 6f 66 20 |f("\n\n\|tEnd of |
|00002390| 58 2d 72 65 66 5c 6e 5c | 74 7e 7e 7e 7e 7e 7e 7e |X-ref\n\|t~~~~~~~|
|000023a0| 7e 7e 7e 7e 7e 5c 6e 22 | 29 3b 0a 58 58 7d 20 2f |~~~~~\n"|);.XX} /|
|000023b0| 2a 20 6e 69 61 6d 20 2a | 2f 0a 0a 58 58 79 79 65 |* niam *|/..XXyye|
|000023c0| 72 72 6f 72 28 6d 65 73 | 73 29 0a 58 58 63 68 61 |rror(mes|s).XXcha|
|000023d0| 72 09 2a 6d 65 73 73 3b | 0a 58 58 7b 0a 58 58 09 |r.*mess;|.XX{.XX.|
|000023e0| 70 72 69 6e 74 66 28 22 | 5c 6e 5c 74 25 73 5c 6e |printf("|\n\t%s\n|
|000023f0| 22 2c 6d 65 73 73 29 3b | 0a 58 58 7d 20 2f 2a 20 |",mess);|.XX} /* |
|00002400| 63 6f 72 70 20 2a 2f 0a | 40 2f 2f 45 2a 4f 2a 46 |corp */.|@//E*O*F|
|00002410| 20 79 79 72 65 66 2d 67 | 72 61 6d 6d 65 72 2f 2f | yyref-g|rammer//|
|00002420| 0a 63 68 6d 6f 64 20 75 | 3d 72 77 2c 67 3d 72 77 |.chmod u|=rw,g=rw|
|00002430| 2c 6f 3d 72 77 20 79 79 | 72 65 66 2d 67 72 61 6d |,o=rw yy|ref-gram|
|00002440| 6d 65 72 0a 20 0a 65 63 | 68 6f 20 78 20 2d 20 79 |mer. .ec|ho x - y|
|00002450| 79 72 65 66 2d 6c 65 78 | 0a 73 65 64 20 27 73 2f |yref-lex|.sed 's/|
|00002460| 5e 58 58 2f 2f 27 20 3e | 20 22 79 79 72 65 66 2d |^XX//' >| "yyref-|
|00002470| 6c 65 78 22 20 3c 3c 27 | 40 2f 2f 45 2a 4f 2a 46 |lex" <<'|@//E*O*F|
|00002480| 20 79 79 72 65 66 2d 6c | 65 78 2f 2f 27 0a 0a 58 | yyref-l|ex//'..X|
|00002490| 58 09 2f 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |X./*****|********|
|000024a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000024b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000024c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 5c 0a 58 58 09 2a |********|**\.XX.*|
|000024d0| 09 09 09 09 09 09 09 2a | 0a 58 58 09 2a 09 58 5f |.......*|.XX.*.X_|
|000024e0| 72 65 66 20 66 6f 72 20 | 59 41 43 43 20 2d 20 4c |ref for |YACC - L|
|000024f0| 45 58 20 66 69 6c 65 09 | 09 09 2a 0a 58 58 09 2a |EX file.|..*.XX.*|
|00002500| 09 7e 7e 7e 7e 7e 7e 7e | 7e 7e 7e 7e 7e 7e 7e 7e |.~~~~~~~|~~~~~~~~|
|00002510| 7e 7e 7e 7e 7e 7e 7e 7e | 7e 7e 09 09 09 2a 0a 58 |~~~~~~~~|~~...*.X|
|00002520| 58 09 2a 09 44 61 74 65 | 3a 20 54 75 65 20 4a 75 |X.*.Date|: Tue Ju|
|00002530| 6c 20 20 31 20 30 33 3a | 33 36 3a 32 31 20 42 53 |l 1 03:|36:21 BS|
|00002540| 54 20 31 39 38 36 09 09 | 2a 0a 58 58 09 2a 09 09 |T 1986..|*.XX.*..|
|00002550| 09 09 09 09 09 2a 0a 58 | 58 09 5c 2a 2a 2a 2a 2a |.....*.X|X.\*****|
|00002560| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002570| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002580| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002590| 2a 2a 2f 0a 0a 58 58 25 | 7b 0a 0a 58 58 23 20 69 |**/..XX%|{..XX# i|
|000025a0| 6e 63 6c 75 64 65 09 3c | 73 74 64 69 6f 2e 68 3e |nclude.<|stdio.h>|
|000025b0| 0a 58 58 23 20 69 6e 63 | 6c 75 64 65 09 22 79 79 |.XX# inc|lude."yy|
|000025c0| 72 65 66 2d 6c 69 6e 65 | 2e 68 22 0a 0a 58 58 23 |ref-line|.h"..XX#|
|000025d0| 64 65 66 69 6e 65 09 09 | 54 52 55 45 20 31 0a 58 |define..|TRUE 1.X|
|000025e0| 58 23 64 65 66 69 6e 65 | 20 09 09 46 41 4c 53 45 |X#define| ..FALSE|
|000025f0| 20 30 0a 0a 58 58 69 6e | 74 09 72 65 63 6f 67 6e | 0..XXin|t.recogn|
|00002600| 69 73 65 64 3b 0a 58 58 | 63 68 61 72 09 63 3b 0a |ised;.XX|char.c;.|
|00002610| 0a 58 58 25 7d 0a 0a 58 | 58 09 2f 2a 20 61 62 62 |.XX%}..X|X./* abb|
|00002620| 72 65 76 69 61 74 69 6f | 6e 73 20 2a 2f 0a 0a 58 |reviatio|ns */..X|
|00002630| 58 64 69 67 69 74 09 09 | 5b 30 2d 39 5d 0a 58 58 |Xdigit..|[0-9].XX|
|00002640| 75 5f 63 61 73 65 09 09 | 5b 41 2d 5a 5d 0a 58 58 |u_case..|[A-Z].XX|
|00002650| 6c 5f 63 61 73 65 09 09 | 5b 61 2d 7a 5d 0a 58 58 |l_case..|[a-z].XX|
|00002660| 69 64 5f 63 68 61 72 09 | 09 5b 41 2d 5a 61 2d 7a |id_char.|.[A-Za-z|
|00002670| 30 2d 39 5f 5d 0a 58 58 | 6c 65 74 74 65 72 09 09 |0-9_].XX|letter..|
|00002680| 5b 41 2d 5a 61 2d 7a 5d | 0a 58 58 77 68 69 74 65 |[A-Za-z]|.XXwhite|
|00002690| 09 09 5b 5c 74 20 5d 0a | 0a 0a 58 58 25 25 0a 0a |..[\t ].|..XX%%..|
|000026a0| 58 58 22 2f 2a 22 09 09 | 09 7b 0a 58 58 09 09 09 |XX"/*"..|.{.XX...|
|000026b0| 09 45 43 48 4f 3b 0a 58 | 58 09 09 09 09 72 65 63 |.ECHO;.X|X....rec|
|000026c0| 6f 67 6e 69 73 65 64 20 | 3d 20 46 41 4c 53 45 3b |ognised |= FALSE;|
|000026d0| 0a 58 58 09 09 09 09 63 | 20 3d 20 6e 65 78 74 63 |.XX....c| = nextc|
|000026e0| 68 61 72 28 29 3b 0a 58 | 58 09 09 09 09 77 68 69 |har();.X|X....whi|
|000026f0| 6c 65 20 28 72 65 63 6f | 67 6e 69 73 65 64 20 3d |le (reco|gnised =|
|00002700| 3d 20 46 41 4c 53 45 29 | 0a 58 58 09 09 09 09 7b |= FALSE)|.XX....{|
|00002710| 0a 58 58 09 09 09 09 09 | 77 68 69 6c 65 20 28 63 |.XX.....|while (c|
|00002720| 20 21 3d 20 27 2a 27 29 | 0a 58 58 09 09 09 09 09 | != '*')|.XX.....|
|00002730| 09 63 20 3d 20 6e 65 78 | 74 63 68 61 72 28 29 3b |.c = nex|tchar();|
|00002740| 0a 58 58 09 09 09 09 09 | 63 20 3d 20 6e 65 78 74 |.XX.....|c = next|
|00002750| 63 68 61 72 28 29 3b 0a | 58 58 09 09 09 09 09 69 |char();.|XX.....i|
|00002760| 66 20 28 63 20 3d 3d 20 | 27 5c 2f 27 29 0a 58 58 |f (c == |'\/').XX|
|00002770| 09 09 09 09 09 09 72 65 | 63 6f 67 6e 69 73 65 64 |......re|cognised|
|00002780| 20 3d 20 54 52 55 45 3b | 0a 58 58 09 09 09 09 7d | = TRUE;|.XX....}|
|00002790| 0a 58 58 09 09 09 7d 0a | 58 58 22 25 7b 22 09 09 |.XX...}.|XX"%{"..|
|000027a0| 09 7b 0a 58 58 09 09 09 | 09 45 43 48 4f 3b 0a 58 |.{.XX...|.ECHO;.X|
|000027b0| 58 09 09 09 09 72 65 63 | 6f 67 6e 69 73 65 64 20 |X....rec|ognised |
|000027c0| 3d 20 46 41 4c 53 45 3b | 0a 58 58 09 09 09 09 63 |= FALSE;|.XX....c|
|000027d0| 20 3d 20 6e 65 78 74 63 | 68 61 72 28 29 3b 0a 58 | = nextc|har();.X|
|000027e0| 58 09 09 09 09 77 68 69 | 6c 65 20 28 72 65 63 6f |X....whi|le (reco|
|000027f0| 67 6e 69 73 65 64 20 3d | 3d 20 46 41 4c 53 45 29 |gnised =|= FALSE)|
|00002800| 0a 58 58 09 09 09 09 7b | 0a 58 58 09 09 09 09 09 |.XX....{|.XX.....|
|00002810| 77 68 69 6c 65 20 28 63 | 20 21 3d 20 27 5c 25 27 |while (c| != '\%'|
|00002820| 29 0a 58 58 09 09 09 09 | 09 09 63 20 3d 20 6e 65 |).XX....|..c = ne|
|00002830| 78 74 63 68 61 72 28 29 | 3b 0a 58 58 09 09 09 09 |xtchar()|;.XX....|
|00002840| 09 63 20 3d 20 6e 65 78 | 74 63 68 61 72 28 29 3b |.c = nex|tchar();|
|00002850| 0a 58 58 09 09 09 09 09 | 69 66 20 28 63 20 3d 3d |.XX.....|if (c ==|
|00002860| 20 27 5c 7d 27 29 0a 58 | 58 09 09 09 09 09 09 72 | '\}').X|X......r|
|00002870| 65 63 6f 67 6e 69 73 65 | 64 20 3d 20 54 52 55 45 |ecognise|d = TRUE|
|00002880| 3b 0a 58 58 09 09 09 09 | 7d 0a 58 58 09 09 09 09 |;.XX....|}.XX....|
|00002890| 72 65 74 75 72 6e 28 50 | 45 52 43 55 52 4c 29 3b |return(P|ERCURL);|
|000028a0| 0a 58 58 09 09 09 7d 0a | 58 58 22 7b 22 09 09 09 |.XX...}.|XX"{"...|
|000028b0| 7b 0a 0a 58 58 2f 2a 0a | 58 58 2a 09 41 6c 74 68 |{..XX/*.|XX*.Alth|
|000028c0| 6f 75 67 68 20 4c 45 58 | 20 63 61 6e 20 63 6f 70 |ough LEX| can cop|
|000028d0| 65 20 77 69 74 68 20 74 | 68 65 20 66 75 6c 6c 20 |e with t|he full |
|000028e0| 64 65 66 69 6e 69 74 69 | 6f 6e 2c 0a 58 58 2a 09 |definiti|on,.XX*.|
|000028f0| 28 20 22 7b 22 5b 5e 5c | 7d 5d 2a 22 7d 22 20 29 |( "{"[^\|}]*"}" )|
|00002900| 20 74 68 69 73 20 6d 61 | 79 20 6f 76 65 72 72 75 | this ma|y overru|
|00002910| 6e 20 74 68 65 20 6c 65 | 78 20 62 75 66 66 65 72 |n the le|x buffer|
|00002920| 20 28 32 30 30 20 63 68 | 61 72 73 29 2e 0a 58 58 | (200 ch|ars)..XX|
|00002930| 2a 09 54 68 75 73 20 74 | 68 69 73 20 72 6f 75 74 |*.Thus t|his rout|
|00002940| 69 6e 65 2e 0a 58 58 2a | 2f 0a 0a 58 58 09 09 09 |ine..XX*|/..XX...|
|00002950| 09 45 43 48 4f 3b 0a 58 | 58 09 09 09 09 63 20 3d |.ECHO;.X|X....c =|
|00002960| 20 6e 65 78 74 63 68 61 | 72 28 29 3b 0a 58 58 09 | nextcha|r();.XX.|
|00002970| 09 09 09 77 68 69 6c 65 | 20 28 63 20 21 3d 20 27 |...while| (c != '|
|00002980| 5c 7d 27 29 0a 58 58 09 | 09 09 09 09 63 20 3d 20 |\}').XX.|....c = |
|00002990| 6e 65 78 74 63 68 61 72 | 28 29 3b 0a 58 58 09 09 |nextchar|();.XX..|
|000029a0| 09 09 72 65 74 75 72 6e | 28 41 43 54 29 3b 0a 58 |..return|(ACT);.X|
|000029b0| 58 09 09 09 7d 0a 58 58 | 7b 6c 65 74 74 65 72 7d |X...}.XX|{letter}|
|000029c0| 7b 69 64 5f 63 68 61 72 | 7d 2a 09 7b 0a 58 58 09 |{id_char|}*.{.XX.|
|000029d0| 09 09 09 45 43 48 4f 3b | 0a 58 58 09 09 09 09 72 |...ECHO;|.XX....r|
|000029e0| 65 74 75 72 6e 28 49 44 | 45 4e 54 49 46 49 45 52 |eturn(ID|ENTIFIER|
|000029f0| 29 3b 0a 58 58 09 09 09 | 7d 0a 58 58 22 27 22 5c |);.XX...|}.XX"'"\|
|00002a00| 5c 3f 5b 5e 27 5d 2b 22 | 27 22 09 09 7b 0a 58 58 |\?[^']+"|'"..{.XX|
|00002a10| 09 09 09 09 45 43 48 4f | 3b 0a 58 58 09 09 09 09 |....ECHO|;.XX....|
|00002a20| 72 65 74 75 72 6e 28 43 | 48 41 52 41 43 54 45 52 |return(C|HARACTER|
|00002a30| 29 3b 0a 58 58 09 09 09 | 7d 0a 58 58 7b 77 68 69 |);.XX...|}.XX{whi|
|00002a40| 74 65 7d 2b 09 09 7b 09 | 0a 58 58 09 09 09 09 45 |te}+..{.|.XX....E|
|00002a50| 43 48 4f 3b 0a 58 58 09 | 09 09 7d 0a 58 58 7b 64 |CHO;.XX.|..}.XX{d|
|00002a60| 69 67 69 74 7d 2b 09 09 | 7b 0a 58 58 09 09 09 09 |igit}+..|{.XX....|
|00002a70| 45 43 48 4f 3b 0a 58 58 | 09 09 09 09 72 65 74 75 |ECHO;.XX|....retu|
|00002a80| 72 6e 28 4e 55 4d 42 45 | 52 29 3b 0a 58 58 09 09 |rn(NUMBE|R);.XX..|
|00002a90| 09 7d 0a 58 58 22 25 22 | 7b 77 68 69 74 65 7d 2a |.}.XX"%"|{white}*|
|00002aa0| 22 6c 65 66 74 22 09 7b | 0a 58 58 09 09 09 09 45 |"left".{|.XX....E|
|00002ab0| 43 48 4f 3b 0a 58 58 09 | 09 09 09 72 65 74 75 72 |CHO;.XX.|...retur|
|00002ac0| 6e 28 4c 45 46 54 29 3b | 0a 58 58 09 09 09 7d 0a |n(LEFT);|.XX...}.|
|00002ad0| 58 58 22 25 22 7b 77 68 | 69 74 65 7d 2a 22 72 69 |XX"%"{wh|ite}*"ri|
|00002ae0| 67 68 74 22 09 7b 0a 58 | 58 09 09 09 09 45 43 48 |ght".{.X|X....ECH|
|00002af0| 4f 3b 0a 58 58 09 09 09 | 09 72 65 74 75 72 6e 28 |O;.XX...|.return(|
|00002b00| 52 49 47 48 54 29 3b 0a | 58 58 09 09 09 7d 0a 58 |RIGHT);.|XX...}.X|
|00002b10| 58 22 25 22 7b 77 68 69 | 74 65 7d 2a 22 6e 6f 6e |X"%"{whi|te}*"non|
|00002b20| 61 73 73 6f 63 22 09 7b | 0a 58 58 09 09 09 09 45 |assoc".{|.XX....E|
|00002b30| 43 48 4f 3b 0a 58 58 09 | 09 09 09 72 65 74 75 72 |CHO;.XX.|...retur|
|00002b40| 6e 28 4e 4f 4e 41 53 53 | 4f 43 29 3b 0a 58 58 09 |n(NONASS|OC);.XX.|
|00002b50| 09 09 7d 0a 58 58 22 25 | 22 7b 77 68 69 74 65 7d |..}.XX"%|"{white}|
|00002b60| 2a 22 74 6f 6b 65 6e 22 | 09 7b 0a 58 58 09 09 09 |*"token"|.{.XX...|
|00002b70| 09 45 43 48 4f 3b 0a 58 | 58 09 09 09 09 72 65 74 |.ECHO;.X|X....ret|
|00002b80| 75 72 6e 28 54 4f 4b 45 | 4e 29 3b 0a 58 58 09 09 |urn(TOKE|N);.XX..|
|00002b90| 09 7d 0a 58 58 22 25 22 | 7b 77 68 69 74 65 7d 2a |.}.XX"%"|{white}*|
|00002ba0| 22 70 72 65 63 22 09 7b | 0a 58 58 09 09 09 09 45 |"prec".{|.XX....E|
|00002bb0| 43 48 4f 3b 0a 58 58 09 | 09 09 09 72 65 74 75 72 |CHO;.XX.|...retur|
|00002bc0| 6e 28 50 52 45 43 29 3b | 0a 58 58 09 09 09 7d 0a |n(PREC);|.XX...}.|
|00002bd0| 58 58 22 25 22 7b 77 68 | 69 74 65 7d 2a 22 74 79 |XX"%"{wh|ite}*"ty|
|00002be0| 70 65 22 09 7b 0a 58 58 | 09 09 09 09 45 43 48 4f |pe".{.XX|....ECHO|
|00002bf0| 3b 0a 58 58 09 09 09 09 | 72 65 74 75 72 6e 28 54 |;.XX....|return(T|
|00002c00| 59 50 45 29 3b 0a 58 58 | 09 09 09 7d 0a 58 58 22 |YPE);.XX|...}.XX"|
|00002c10| 25 22 7b 77 68 69 74 65 | 7d 2a 22 73 74 61 72 74 |%"{white|}*"start|
|00002c20| 22 09 7b 0a 58 58 09 09 | 09 09 45 43 48 4f 3b 0a |".{.XX..|..ECHO;.|
|00002c30| 58 58 09 09 09 09 72 65 | 74 75 72 6e 28 53 54 41 |XX....re|turn(STA|
|00002c40| 52 54 29 3b 0a 58 58 09 | 09 09 7d 0a 58 58 22 25 |RT);.XX.|..}.XX"%|
|00002c50| 22 7b 77 68 69 74 65 7d | 2a 22 75 6e 69 6f 6e 22 |"{white}|*"union"|
|00002c60| 09 7b 0a 58 58 09 09 09 | 09 45 43 48 4f 3b 0a 58 |.{.XX...|.ECHO;.X|
|00002c70| 58 09 09 09 09 72 65 74 | 75 72 6e 28 55 4e 49 4f |X....ret|urn(UNIO|
|00002c80| 4e 29 3b 0a 58 58 09 09 | 09 7d 0a 58 58 22 25 25 |N);.XX..|.}.XX"%%|
|00002c90| 22 09 09 09 7b 0a 58 58 | 09 09 09 09 45 43 48 4f |"...{.XX|....ECHO|
|00002ca0| 3b 0a 58 58 09 09 09 09 | 72 65 74 75 72 6e 28 50 |;.XX....|return(P|
|00002cb0| 45 52 29 3b 0a 58 58 09 | 09 09 7d 0a 58 58 22 3a |ER);.XX.|..}.XX":|
|00002cc0| 22 09 09 09 7b 0a 58 58 | 09 09 09 09 45 43 48 4f |"...{.XX|....ECHO|
|00002cd0| 3b 0a 58 58 09 09 09 09 | 72 65 74 75 72 6e 28 43 |;.XX....|return(C|
|00002ce0| 4f 4c 4f 4e 29 3b 0a 58 | 58 09 09 09 7d 0a 58 58 |OLON);.X|X...}.XX|
|00002cf0| 22 3b 22 09 09 09 7b 0a | 58 58 09 09 09 09 45 43 |";"...{.|XX....EC|
|00002d00| 48 4f 3b 0a 58 58 09 09 | 09 09 72 65 74 75 72 6e |HO;.XX..|..return|
|00002d10| 28 53 45 4d 49 43 4f 4c | 4f 4e 29 3b 0a 58 58 09 |(SEMICOL|ON);.XX.|
|00002d20| 09 09 7d 0a 58 58 22 2c | 22 09 09 09 7b 0a 58 58 |..}.XX",|"...{.XX|
|00002d30| 09 09 09 09 45 43 48 4f | 3b 0a 58 58 09 09 09 09 |....ECHO|;.XX....|
|00002d40| 72 65 74 75 72 6e 28 43 | 4f 4d 4d 41 29 3b 0a 58 |return(C|OMMA);.X|
|00002d50| 58 09 09 09 7d 0a 58 58 | 22 7c 22 09 09 09 7b 0a |X...}.XX|"|"...{.|
|00002d60| 58 58 09 09 09 09 45 43 | 48 4f 3b 0a 58 58 09 09 |XX....EC|HO;.XX..|
|00002d70| 09 09 72 65 74 75 72 6e | 28 4f 52 29 3b 0a 58 58 |..return|(OR);.XX|
|00002d80| 09 09 09 7d 0a 58 58 22 | 3c 22 09 09 09 7b 0a 58 |...}.XX"|<"...{.X|
|00002d90| 58 09 09 09 09 45 43 48 | 4f 3b 0a 58 58 09 09 09 |X....ECH|O;.XX...|
|00002da0| 09 72 65 74 75 72 6e 28 | 4c 45 53 53 29 3b 0a 58 |.return(|LESS);.X|
|00002db0| 58 09 09 09 7d 0a 58 58 | 22 3e 22 09 09 09 7b 0a |X...}.XX|">"...{.|
|00002dc0| 58 58 09 09 09 09 45 43 | 48 4f 3b 0a 58 58 09 09 |XX....EC|HO;.XX..|
|00002dd0| 09 09 72 65 74 75 72 6e | 28 47 52 45 41 54 45 52 |..return|(GREATER|
|00002de0| 29 3b 0a 58 58 09 09 09 | 7d 0a 58 58 22 5c 6e 22 |);.XX...|}.XX"\n"|
|00002df0| 09 09 09 7b 0a 58 58 09 | 09 09 09 45 43 48 4f 3b |...{.XX.|...ECHO;|
|00002e00| 0a 58 58 09 09 09 09 6e | 6c 69 6e 65 28 2b 2b 6c |.XX....n|line(++l|
|00002e10| 69 6e 65 29 3b 0a 58 58 | 09 09 09 7d 0a 0a 58 58 |ine);.XX|...}..XX|
|00002e20| 25 25 0a 0a 58 58 79 79 | 77 72 61 70 28 29 0a 58 |%%..XXyy|wrap().X|
|00002e30| 58 7b 0a 58 58 09 2f 2a | 20 77 72 61 70 2d 75 70 |X{.XX./*| wrap-up|
|00002e40| 20 70 72 6f 63 65 64 75 | 72 65 20 2a 2f 0a 58 58 | procedu|re */.XX|
|00002e50| 09 72 65 74 75 72 6e 28 | 31 29 3b 0a 58 58 7d 0a |.return(|1);.XX}.|
|00002e60| 0a 58 58 6e 65 78 74 63 | 68 61 72 28 29 0a 58 58 |.XXnextc|har().XX|
|00002e70| 7b 0a 58 58 09 63 68 61 | 72 09 63 3b 0a 58 58 09 |{.XX.cha|r.c;.XX.|
|00002e80| 0a 58 58 09 63 20 3d 20 | 69 6e 70 75 74 28 29 3b |.XX.c = |input();|
|00002e90| 0a 58 58 09 70 72 69 6e | 74 66 28 22 25 63 22 2c |.XX.prin|tf("%c",|
|00002ea0| 63 29 3b 0a 58 58 09 69 | 66 20 28 63 20 3d 3d 20 |c);.XX.i|f (c == |
|00002eb0| 27 5c 6e 27 29 0a 58 58 | 09 09 6e 6c 69 6e 65 28 |'\n').XX|..nline(|
|00002ec0| 2b 2b 6c 69 6e 65 29 3b | 0a 58 58 09 72 65 74 75 |++line);|.XX.retu|
|00002ed0| 72 6e 28 63 29 3b 0a 58 | 58 7d 0a 40 2f 2f 45 2a |rn(c);.X|X}.@//E*|
|00002ee0| 4f 2a 46 20 79 79 72 65 | 66 2d 6c 65 78 2f 2f 0a |O*F yyre|f-lex//.|
|00002ef0| 63 68 6d 6f 64 20 75 3d | 72 77 2c 67 3d 72 77 2c |chmod u=|rw,g=rw,|
|00002f00| 6f 3d 72 77 20 79 79 72 | 65 66 2d 6c 65 78 0a 20 |o=rw yyr|ef-lex. |
|00002f10| 0a 65 63 68 6f 20 78 20 | 2d 20 79 79 72 65 66 2d |.echo x |- yyref-|
|00002f20| 6c 69 6e 65 2e 68 0a 73 | 65 64 20 27 73 2f 5e 58 |line.h.s|ed 's/^X|
|00002f30| 58 2f 2f 27 20 3e 20 22 | 79 79 72 65 66 2d 6c 69 |X//' > "|yyref-li|
|00002f40| 6e 65 2e 68 22 20 3c 3c | 27 40 2f 2f 45 2a 4f 2a |ne.h" <<|'@//E*O*|
|00002f50| 46 20 79 79 72 65 66 2d | 6c 69 6e 65 2e 68 2f 2f |F yyref-|line.h//|
|00002f60| 27 0a 0a 58 58 09 69 6e | 74 09 6c 69 6e 65 3b 0a |'..XX.in|t.line;.|
|00002f70| 40 2f 2f 45 2a 4f 2a 46 | 20 79 79 72 65 66 2d 6c |@//E*O*F| yyref-l|
|00002f80| 69 6e 65 2e 68 2f 2f 0a | 63 68 6d 6f 64 20 75 3d |ine.h//.|chmod u=|
|00002f90| 72 77 2c 67 3d 72 77 2c | 6f 3d 72 77 20 79 79 72 |rw,g=rw,|o=rw yyr|
|00002fa0| 65 66 2d 6c 69 6e 65 2e | 68 0a 20 0a 65 63 68 6f |ef-line.|h. .echo|
|00002fb0| 20 49 6e 73 70 65 63 74 | 69 6e 67 20 66 6f 72 20 | Inspect|ing for |
|00002fc0| 64 61 6d 61 67 65 20 69 | 6e 20 74 72 61 6e 73 69 |damage i|n transi|
|00002fd0| 74 2e 2e 2e 0a 74 65 6d | 70 3d 2f 74 6d 70 2f 73 |t....tem|p=/tmp/s|
|00002fe0| 68 61 72 69 6e 24 24 3b | 20 64 74 65 6d 70 3d 2f |harin$$;| dtemp=/|
|00002ff0| 74 6d 70 2f 73 68 61 72 | 6f 75 74 24 24 0a 74 72 |tmp/shar|out$$.tr|
|00003000| 61 70 20 22 72 6d 20 2d | 66 20 24 74 65 6d 70 20 |ap "rm -|f $temp |
|00003010| 24 64 74 65 6d 70 3b 20 | 65 78 69 74 22 20 30 20 |$dtemp; |exit" 0 |
|00003020| 31 20 32 20 33 20 31 35 | 0a 63 61 74 20 3e 20 24 |1 2 3 15|.cat > $|
|00003030| 74 65 6d 70 20 3c 3c 5c | 21 21 21 0a 20 20 20 20 |temp <<\|!!!. |
|00003040| 20 20 20 39 20 20 20 20 | 20 20 32 31 20 20 20 20 | 9 | 21 |
|00003050| 20 31 35 37 20 4d 61 6b | 65 66 69 6c 65 0a 20 20 | 157 Mak|efile. |
|00003060| 20 20 20 20 31 30 20 20 | 20 20 20 20 38 37 20 20 | 10 | 87 |
|00003070| 20 20 20 36 30 31 20 52 | 45 41 44 4d 45 0a 20 20 | 601 R|EADME. |
|00003080| 20 20 20 20 39 31 20 20 | 20 20 20 33 33 30 20 20 | 91 | 330 |
|00003090| 20 20 31 38 30 36 20 79 | 79 72 65 66 2e 31 0a 20 | 1806 y|yref.1. |
|000030a0| 20 20 20 20 32 38 36 20 | 20 20 20 20 35 39 31 20 | 286 | 591 |
|000030b0| 20 20 20 34 34 33 33 20 | 79 79 72 65 66 2d 67 72 | 4433 |yyref-gr|
|000030c0| 61 6d 6d 65 72 0a 20 20 | 20 20 20 31 37 33 20 20 |ammer. | 173 |
|000030d0| 20 20 20 32 39 33 20 20 | 20 20 32 33 32 33 20 79 | 293 | 2323 y|
|000030e0| 79 72 65 66 2d 6c 65 78 | 0a 20 20 20 20 20 20 20 |yref-lex|. |
|000030f0| 32 20 20 20 20 20 20 20 | 32 20 20 20 20 20 20 31 |2 |2 1|
|00003100| 32 20 79 79 72 65 66 2d | 6c 69 6e 65 2e 68 0a 20 |2 yyref-|line.h. |
|00003110| 20 20 20 20 35 37 31 20 | 20 20 20 31 33 32 34 20 | 571 | 1324 |
|00003120| 20 20 20 39 33 33 32 20 | 74 6f 74 61 6c 0a 21 21 | 9332 |total.!!|
|00003130| 21 0a 77 63 20 20 4d 61 | 6b 65 66 69 6c 65 20 52 |!.wc Ma|kefile R|
|00003140| 45 41 44 4d 45 20 79 79 | 72 65 66 2e 31 20 79 79 |EADME yy|ref.1 yy|
|00003150| 72 65 66 2d 67 72 61 6d | 6d 65 72 20 79 79 72 65 |ref-gram|mer yyre|
|00003160| 66 2d 6c 65 78 20 79 79 | 72 65 66 2d 6c 69 6e 65 |f-lex yy|ref-line|
|00003170| 2e 68 20 7c 20 73 65 64 | 20 27 73 3d 5b 5e 20 5d |.h | sed| 's=[^ ]|
|00003180| 2a 2f 3d 3d 27 20 7c 20 | 64 69 66 66 20 2d 62 20 |*/==' | |diff -b |
|00003190| 24 74 65 6d 70 20 2d 20 | 3e 24 64 74 65 6d 70 0a |$temp - |>$dtemp.|
|000031a0| 69 66 20 74 65 73 74 20 | 2d 73 20 24 64 74 65 6d |if test |-s $dtem|
|000031b0| 70 0a 74 68 65 6e 20 65 | 63 68 6f 20 22 4f 75 63 |p.then e|cho "Ouc|
|000031c0| 68 20 5b 64 69 66 66 20 | 6f 66 20 77 63 20 6f 75 |h [diff |of wc ou|
|000031d0| 74 70 75 74 5d 3a 22 20 | 3b 20 63 61 74 20 24 64 |tput]:" |; cat $d|
|000031e0| 74 65 6d 70 0a 65 6c 73 | 65 20 65 63 68 6f 20 22 |temp.els|e echo "|
|000031f0| 4e 6f 20 70 72 6f 62 6c | 65 6d 73 20 66 6f 75 6e |No probl|ems foun|
|00003200| 64 2e 22 0a 66 69 0a 65 | 78 69 74 20 30 0a |d.".fi.e|xit 0. |
+--------+-------------------------+-------------------------+--------+--------+