1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html40/loose.dtd">
<HTML>
<!-- Created on January, 28 2005 by texi2html 1.66 -->
<!--
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
Karl Berry <karl@freefriends.org>
Olaf Bachmann <obachman@mathematik.uni-kl.de>
and many others.
Maintained by: Many creative people <dev@texi2html.cvshome.org>
Send bugs and suggestions to <users@texi2html.cvshome.org>
-->
<HEAD>
<TITLE>Bison 2.21.5: Table of Contents</TITLE>
<META NAME="description" CONTENT="Bison 2.21.5: Table of Contents">
<META NAME="keywords" CONTENT="Bison 2.21.5: Table of Contents">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="texi2html 1.66">
</HEAD>
<BODY LANG="en" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
<A NAME="SEC_Contents"></A>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bison.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bison_toc.html#SEC_Contents">Contents</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bison_15.html#SEC92">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bison_abt.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1>Table of Contents</H1>
<BLOCKQUOTE>
<A NAME="TOC1" HREF="bison_1.html#SEC1">Introduction</A>
<BR>
<A NAME="TOC2" HREF="bison_2.html#SEC2">Conditions for Using Bison</A>
<BR>
<A NAME="TOC3" HREF="bison_3.html#SEC3">GNU GENERAL PUBLIC LICENSE</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC4" HREF="bison_3.html#SEC4">Preamble</A>
<BR>
<A NAME="TOC5" HREF="bison_3.html#SEC5">How to Apply These Terms to Your New Programs</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC6" HREF="bison_4.html#SEC6">1. The Concepts of Bison</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC7" HREF="bison_4.html#SEC7">1.1 Languages and Context-Free Grammars</A>
<BR>
<A NAME="TOC8" HREF="bison_4.html#SEC8">1.2 From Formal Rules to Bison Input</A>
<BR>
<A NAME="TOC9" HREF="bison_4.html#SEC9">1.3 Semantic Values</A>
<BR>
<A NAME="TOC10" HREF="bison_4.html#SEC10">1.4 Semantic Actions</A>
<BR>
<A NAME="TOC11" HREF="bison_4.html#SEC11">1.5 Bison Output: the Parser File</A>
<BR>
<A NAME="TOC12" HREF="bison_4.html#SEC12">1.6 Stages in Using Bison</A>
<BR>
<A NAME="TOC13" HREF="bison_4.html#SEC13">1.7 The Overall Layout of a Bison Grammar</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC14" HREF="bison_5.html#SEC14">2. Examples</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC15" HREF="bison_5.html#SEC15">2.1 Reverse Polish Notation Calculator</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC16" HREF="bison_5.html#SEC16">2.1.1 Declarations for <CODE>rpcalc</CODE></A>
<BR>
<A NAME="TOC17" HREF="bison_5.html#SEC17">2.1.2 Grammar Rules for <CODE>rpcalc</CODE></A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC18" HREF="bison_5.html#SEC18">2.1.2.1 Explanation of <CODE>input</CODE></A>
<BR>
<A NAME="TOC19" HREF="bison_5.html#SEC19">2.1.2.2 Explanation of <CODE>line</CODE></A>
<BR>
<A NAME="TOC20" HREF="bison_5.html#SEC20">2.1.2.3 Explanation of <CODE>expr</CODE></A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC21" HREF="bison_5.html#SEC21">2.1.3 The <CODE>rpcalc</CODE> Lexical Analyzer</A>
<BR>
<A NAME="TOC22" HREF="bison_5.html#SEC22">2.1.4 The Controlling Function</A>
<BR>
<A NAME="TOC23" HREF="bison_5.html#SEC23">2.1.5 The Error Reporting Routine</A>
<BR>
<A NAME="TOC24" HREF="bison_5.html#SEC24">2.1.6 Running Bison to Make the Parser</A>
<BR>
<A NAME="TOC25" HREF="bison_5.html#SEC25">2.1.7 Compiling the Parser File</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC26" HREF="bison_5.html#SEC26">2.2 Infix Notation Calculator: <CODE>calc</CODE></A>
<BR>
<A NAME="TOC27" HREF="bison_5.html#SEC27">2.3 Simple Error Recovery</A>
<BR>
<A NAME="TOC28" HREF="bison_5.html#SEC28">2.4 Multi-Function Calculator: <CODE>mfcalc</CODE></A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC29" HREF="bison_5.html#SEC29">2.4.1 Declarations for <CODE>mfcalc</CODE></A>
<BR>
<A NAME="TOC30" HREF="bison_5.html#SEC30">2.4.2 Grammar Rules for <CODE>mfcalc</CODE></A>
<BR>
<A NAME="TOC31" HREF="bison_5.html#SEC31">2.4.3 The <CODE>mfcalc</CODE> Symbol Table</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC32" HREF="bison_5.html#SEC32">2.5 Exercises</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC33" HREF="bison_6.html#SEC33">3. Bison Grammar Files</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC34" HREF="bison_6.html#SEC34">3.1 Outline of a Bison Grammar</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC35" HREF="bison_6.html#SEC35">3.1.1 The C Declarations Section</A>
<BR>
<A NAME="TOC36" HREF="bison_6.html#SEC36">3.1.2 The Bison Declarations Section</A>
<BR>
<A NAME="TOC37" HREF="bison_6.html#SEC37">3.1.3 The Grammar Rules Section</A>
<BR>
<A NAME="TOC38" HREF="bison_6.html#SEC38">3.1.4 The Additional C Code Section</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC39" HREF="bison_6.html#SEC39">3.2 Symbols, Terminal and Nonterminal</A>
<BR>
<A NAME="TOC40" HREF="bison_6.html#SEC40">3.3 Syntax of Grammar Rules</A>
<BR>
<A NAME="TOC41" HREF="bison_6.html#SEC41">3.4 Recursive Rules</A>
<BR>
<A NAME="TOC42" HREF="bison_6.html#SEC42">3.5 Defining Language Semantics</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC43" HREF="bison_6.html#SEC43">3.5.1 Data Types of Semantic Values</A>
<BR>
<A NAME="TOC44" HREF="bison_6.html#SEC44">3.5.2 More Than One Value Type</A>
<BR>
<A NAME="TOC45" HREF="bison_6.html#SEC45">3.5.3 Actions</A>
<BR>
<A NAME="TOC46" HREF="bison_6.html#SEC46">3.5.4 Data Types of Values in Actions</A>
<BR>
<A NAME="TOC47" HREF="bison_6.html#SEC47">3.5.5 Actions in Mid-Rule</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC48" HREF="bison_6.html#SEC48">3.6 Bison Declarations</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC49" HREF="bison_6.html#SEC49">3.6.1 Token Type Names</A>
<BR>
<A NAME="TOC50" HREF="bison_6.html#SEC50">3.6.2 Operator Precedence</A>
<BR>
<A NAME="TOC51" HREF="bison_6.html#SEC51">3.6.3 The Collection of Value Types</A>
<BR>
<A NAME="TOC52" HREF="bison_6.html#SEC52">3.6.4 Nonterminal Symbols</A>
<BR>
<A NAME="TOC53" HREF="bison_6.html#SEC53">3.6.5 Suppressing Conflict Warnings</A>
<BR>
<A NAME="TOC54" HREF="bison_6.html#SEC54">3.6.6 The Start-Symbol</A>
<BR>
<A NAME="TOC55" HREF="bison_6.html#SEC55">3.6.7 A Pure (Reentrant) Parser</A>
<BR>
<A NAME="TOC56" HREF="bison_6.html#SEC56">3.6.8 Bison Declaration Summary</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC57" HREF="bison_6.html#SEC57">3.7 Multiple Parsers in the Same Program</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC58" HREF="bison_7.html#SEC58">4. Parser C-Language Interface</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC59" HREF="bison_7.html#SEC59">4.1 The Parser Function <CODE>yyparse</CODE></A>
<BR>
<A NAME="TOC60" HREF="bison_7.html#SEC60">4.2 The Lexical Analyzer Function <CODE>yylex</CODE></A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC61" HREF="bison_7.html#SEC61">4.2.1 Calling Convention for <CODE>yylex</CODE></A>
<BR>
<A NAME="TOC62" HREF="bison_7.html#SEC62">4.2.2 Semantic Values of Tokens</A>
<BR>
<A NAME="TOC63" HREF="bison_7.html#SEC63">4.2.3 Textual Positions of Tokens</A>
<BR>
<A NAME="TOC64" HREF="bison_7.html#SEC64">4.2.4 Calling Conventions for Pure Parsers</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC65" HREF="bison_7.html#SEC65">4.3 The Error Reporting Function <CODE>yyerror</CODE></A>
<BR>
<A NAME="TOC66" HREF="bison_7.html#SEC66">4.4 Special Features for Use in Actions</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC67" HREF="bison_8.html#SEC67">5. The Bison Parser Algorithm</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC68" HREF="bison_8.html#SEC68">5.1 Look-Ahead Tokens</A>
<BR>
<A NAME="TOC69" HREF="bison_8.html#SEC69">5.2 Shift/Reduce Conflicts</A>
<BR>
<A NAME="TOC70" HREF="bison_8.html#SEC70">5.3 Operator Precedence</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC71" HREF="bison_8.html#SEC71">5.3.1 When Precedence is Needed</A>
<BR>
<A NAME="TOC72" HREF="bison_8.html#SEC72">5.3.2 Specifying Operator Precedence</A>
<BR>
<A NAME="TOC73" HREF="bison_8.html#SEC73">5.3.3 Precedence Examples</A>
<BR>
<A NAME="TOC74" HREF="bison_8.html#SEC74">5.3.4 How Precedence Works</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC75" HREF="bison_8.html#SEC75">5.4 Context-Dependent Precedence</A>
<BR>
<A NAME="TOC76" HREF="bison_8.html#SEC76">5.5 Parser States</A>
<BR>
<A NAME="TOC77" HREF="bison_8.html#SEC77">5.6 Reduce/Reduce Conflicts</A>
<BR>
<A NAME="TOC78" HREF="bison_8.html#SEC78">5.7 Mysterious Reduce/Reduce Conflicts</A>
<BR>
<A NAME="TOC79" HREF="bison_8.html#SEC79">5.8 Stack Overflow, and How to Avoid It</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC80" HREF="bison_9.html#SEC80">6. Error Recovery</A>
<BR>
<A NAME="TOC81" HREF="bison_10.html#SEC81">7. Handling Context Dependencies</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC82" HREF="bison_10.html#SEC82">7.1 Semantic Info in Token Types</A>
<BR>
<A NAME="TOC83" HREF="bison_10.html#SEC83">7.2 Lexical Tie-ins</A>
<BR>
<A NAME="TOC84" HREF="bison_10.html#SEC84">7.3 Lexical Tie-ins and Error Recovery</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC85" HREF="bison_11.html#SEC85">8. Debugging Your Parser</A>
<BR>
<A NAME="TOC86" HREF="bison_12.html#SEC86">9. Invoking Bison</A>
<BR>
<BLOCKQUOTE>
<A NAME="TOC87" HREF="bison_12.html#SEC87">9.1 Bison Options</A>
<BR>
<A NAME="TOC88" HREF="bison_12.html#SEC88">9.2 Option Cross Key</A>
<BR>
<A NAME="TOC89" HREF="bison_12.html#SEC89">9.3 Invoking Bison under VMS</A>
<BR>
</BLOCKQUOTE>
<A NAME="TOC90" HREF="bison_13.html#SEC90">A. Bison Symbols</A>
<BR>
<A NAME="TOC91" HREF="bison_14.html#SEC91">B. Glossary</A>
<BR>
<A NAME="TOC92" HREF="bison_15.html#SEC92">Index</A>
<BR>
</BLOCKQUOTE>
<HR SIZE=1>
<BR>
<FONT SIZE="-1">
This document was generated
by <I>Frank B. Brokken</I> on <I>January, 28 2005</I>
using <A HREF="http://texi2html.cvshome.org"><I>texi2html</I></A>
</FONT>
</BODY>
</HTML>
|