Commit | Line | Data |
---|---|---|
e6bf8889 BC |
1 | The -r option has been implemented. The -r option tells Yacc to |
2 | put the read-only tables in y.tab.c and the code and variables in | |
3 | y.code.c. Keith Bostic asked for this option so that :yyfix could be | |
4 | eliminated. | |
75744a95 KB |
5 | |
6 | The -l and -t options have been implemented. The -l option tells | |
7 | Yacc not to include #line directives in the code it produces. The -t | |
8 | option causes debugging code to be included in the compiled parser. | |
9 | ||
10 | The code for error recovery has been changed to implement the same | |
11 | algorithm as AT&T Yacc. There will still be differences in the way | |
12 | error recovery works because AT&T Yacc uses more default reductions | |
e6bf8889 | 13 | than Berkeley Yacc. |
75744a95 KB |
14 | |
15 | The environment variable TMPDIR determines the directory where | |
16 | temporary files will be created. If TMPDIR is defined, temporary files | |
17 | will be created in the directory whose pathname is the value of TMPDIR. | |
18 | By default, temporary files are created in /tmp. | |
19 | ||
20 | The keywords are now case-insensitive. For example, %nonassoc, | |
21 | %NONASSOC, %NonAssoc, and %nOnAsSoC are all equivalent. | |
22 | ||
23 | Commas and semicolons that are not part of C code are treated as | |
24 | commentary. | |
25 | ||
26 | Line-end comments, as in BCPL, are permitted. Line-end comments | |
27 | begin with // and end at the next end-of-line. Line-end comments are | |
28 | permitted in C code; they are converted to C comments on output. | |
29 | ||
30 | The form of y.output files has been changed to look more like | |
31 | those produced by AT&T Yacc. | |
32 | ||
33 | A new kind of declaration has been added. The form of the declaration | |
34 | is | |
35 | ||
36 | %ident string | |
37 | ||
38 | where string is a sequence of characters begining with a double quote | |
39 | and ending with either a double quote or the next end-of-line, whichever | |
40 | comes first. The declaration will cause a #ident directive to be written | |
41 | near the start of the output file. | |
42 | ||
43 | If a parser has been compiled with debugging code, that code can be | |
44 | enabled by setting an environment variable. If the environment variable | |
45 | YYDEBUG is set to 0, debugging output is suppressed. If it is set to 1, | |
46 | debugging output is written to standard output. |