bison.rnh 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. .!
  2. .! RUNOFF source file for BISON.HLP
  3. .!
  4. .! This is a RUNOFF input file which will produce a VMS help file
  5. .! for the VMS HELP library.
  6. .!
  7. .! Date of last revision: June 21, 1992
  8. .!
  9. .!
  10. .! Eric Youngdale
  11. .!
  12. .literal
  13. .end literal
  14. .no paging
  15. .no flags all
  16. .right margin 70
  17. .left margin 1
  18. .indent -1
  19. 1 BISON
  20. .skip
  21. The BISON command invokes the GNU BISON parser generator.
  22. .skip
  23. .literal
  24. BISON file-spec
  25. .end literal
  26. .skip
  27. .indent -1
  28. 2 Parameters
  29. .skip
  30. file-spec
  31. .skip
  32. Here file-spec is the grammar file name, which usually ends in
  33. .y. The parser file's name is made by replacing the .y
  34. with _tab.c. Thus, the command bison foo.y yields
  35. foo_tab.c.
  36. .skip
  37. .indent -1
  38. 2 Qualifiers
  39. .skip
  40. The following is the list of available qualifiers for BISON:
  41. .literal
  42. /DEBUG
  43. /DEFINES
  44. /FILE_PREFIX=prefix
  45. /FIXED_OUTFILES
  46. /NAME_PREFIX=prefix
  47. /NOLINES
  48. /OUTPUT=outfilefile
  49. /VERBOSE
  50. /VERSION
  51. /YACC
  52. .end literal
  53. .skip
  54. .indent -1
  55. 2 /DEBUG
  56. .skip
  57. Output a definition of the macro YYDEBUG into the parser file,
  58. so that the debugging facilities are compiled.
  59. .skip
  60. .indent -1
  61. 2 /DEFINES
  62. .skip
  63. Write an extra output file containing macro definitions for the token
  64. type names defined in the grammar and the semantic value type
  65. YYSTYPE, as well as a extern variable declarations.
  66. .skip
  67. If the parser output file is named "name.c" then this file
  68. is named "name.h".
  69. .skip
  70. This output file is essential if you wish to put the definition of
  71. yylex in a separate source file, because yylex needs to
  72. be able to refer to token type codes and the variable
  73. yylval.
  74. .skip
  75. .indent -1
  76. 2 /FILE_PREFIX
  77. .skip
  78. .literal
  79. /FILIE_PREFIX=prefix
  80. .end literal
  81. .skip
  82. Specify a prefix to use for all Bison output file names. The names are
  83. chosen as if the input file were named prefix.c
  84. .skip
  85. .indent -1
  86. 2 /FIXED_OUTFILES
  87. .skip
  88. Equivalent to /OUTPUT=y_tab.c; the parser output file is called
  89. y_tab.c, and the other outputs are called y.output and
  90. y_tab.h. The purpose of this switch is to imitate Yacc's output
  91. file name conventions. The /YACC qualifier is functionally equivalent
  92. to /FIXED_OUTFILES. The following command definition will
  93. work as a substitute for Yacc:
  94. .literal
  95. $YACC:==BISON/FIXED_OUTFILES
  96. .end literal
  97. .skip
  98. .indent -1
  99. 2 /NAME_PREFIX
  100. .skip
  101. .literal
  102. /NAME_PREFIX=prefix
  103. .end literal
  104. .skip
  105. Rename the external symbols used in the parser so that they start with
  106. "prefix" instead of "yy". The precise list of symbols renamed
  107. is yyparse, yylex, yyerror, yylval, yychar and yydebug.
  108. For example, if you use /NAME_PREFIX="c", the names become cparse,
  109. clex, and so on.
  110. .skip
  111. .indent -1
  112. 2 /NOLINES
  113. .skip
  114. Don't put any "#line" preprocessor commands in the parser file.
  115. Ordinarily Bison puts them in the parser file so that the C compiler
  116. and debuggers will associate errors with your source file, the
  117. grammar file. This option causes them to associate errors with the
  118. parser file, treating it an independent source file in its own right.
  119. .skip
  120. .indent -1
  121. 2 /OUTPUT
  122. .skip
  123. .literal
  124. /OUTPUT=outfile
  125. .end literal
  126. .skip
  127. Specify the name "outfile" for the parser file.
  128. .skip
  129. .indent -1
  130. 2 /VERBOSE
  131. .skip
  132. Write an extra output file containing verbose descriptions of the
  133. parser states and what is done for each type of look-ahead token in
  134. that state.
  135. .skip
  136. This file also describes all the conflicts, both those resolved by
  137. operator precedence and the unresolved ones.
  138. .skip
  139. The file's name is made by removing _tab.c or .c from
  140. the parser output file name, and adding .output instead.
  141. .skip
  142. Therefore, if the input file is foo.y, then the parser file is
  143. called foo_tab.c by default. As a consequence, the verbose
  144. output file is called foo.output.
  145. .skip
  146. .indent -1
  147. 2 /VERSION
  148. .skip
  149. Print the version number of Bison.
  150. .skip
  151. .indent -1
  152. 2 /YACC
  153. .skip
  154. See /FIXED_OUTFILES.
  155. .skip
  156. .indent -1