aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/cf__gramatical_8cpp-source.html
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--docs/doxygen/nel/cf__gramatical_8cpp-source.html1562
1 files changed, 1562 insertions, 0 deletions
diff --git a/docs/doxygen/nel/cf__gramatical_8cpp-source.html b/docs/doxygen/nel/cf__gramatical_8cpp-source.html
new file mode 100644
index 00000000..6145755c
--- /dev/null
+++ b/docs/doxygen/nel/cf__gramatical_8cpp-source.html
@@ -0,0 +1,1562 @@
+<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
+<HTML>
+<HEAD>
+ <TITLE>nevrax.org : docs</TITLE>
+ <LINK REL=stylesheet TYPE="text/css" HREF="http://www.nevrax.org/inc/css/nevrax.css">
+ <link href="doxygen.css" rel="stylesheet" type="text/css">
+</HEAD>
+<BODY MARGINHEIGHT="0" MARGINWIDTH="0">
+
+<!-- uplinks -->
+<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0>
+ <TR>
+ <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD>
+ <TD WIDTH=140 BGCOLOR=#dddddd><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="16" BORDER=0 ALT=""></TD>
+ <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD>
+ <TD><IMG width=6 height=14 SRC="http://www.nevrax.org/inc/img/reddots.gif" ALT="#" VSPACE=2 HSPACE=2 BORDER=0 ></TD><TD VALIGN=middle>&nbsp;<A CLASS=uplinks HREF=http://www.nevrax.org><b>Home</B></FONT></A>&nbsp;&nbsp;&nbsp;</TD>
+ <TD><IMG width=6 height=14 SRC="http://www.nevrax.org/inc/img/reddots.gif" ALT="#" VSPACE=2 HSPACE=2 BORDER=0 ></TD><TD VALIGN=middle>&nbsp;<A CLASS=uplinks HREF=http://www.nevrax.com><b>nevrax.com</B></FONT></A>&nbsp;&nbsp;&nbsp;</TD>
+ </TR>
+</TABLE>
+
+<!-- banner Nevrax -->
+<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%>
+ <TR><TD BGCOLOR="#000000" BACKGROUND="http://www.nevrax.org/inc/img/black_banner.jpg"><A HREF="http://www.nevrax.org"><IMG SRC="http://www.nevrax.org/inc/img/nevrax.gif" WIDTH="170" HEIGHT="45" BORDER=0 ALT="Nevrax" ></A></TD></TR>
+</TABLE>
+
+<!-- main table -->
+<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 height=100%>
+ <TR>
+ <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="10" BORDER=0 ALT=""></TD>
+ <TD WIDTH=140 BGCOLOR=#dddddd VALIGN=TOP ALIGN=middle><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="10" BORDER=0 ALT="">
+
+ <!------ Begin Box ------>
+ <TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0 BGCOLOR=black><TR><TD><TABLE border=0 cellspacing=2 cellpadding=0 width=120><tr><TD ALIGN=middle bgcolor=black>
+ <FONT COLOR=white FACE="sans-serif"><B>Nevrax.org</B></FONT></TD></TR><tr><td colspan=2 bgcolor=#FFFFFF>
+ <TABLE cellspacing=0 cellpadding=1 border=0>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/news/" TITLE="Rubrique news"><img width=13 height=15 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-news.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/news/" TITLE="News">News</a></td></tr>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/mail/" TITLE="Rubrique mail"><img width=15 height=11 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-mail.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/mail/" TITLE="Mailing list archive">Mailing-list</a></td></tr>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/docs/" TITLE="Rubrique docs"><img width=14 height=16 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-docs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/docs/" TITLE="Documentation">Documentation</a></td></tr>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/cvs/" TITLE="Rubrique cvs"><img width=13 height=17 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-cvs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/cvs/" TITLE="CVS Web">CVS</a></td></tr>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/bugs/" TITLE="Rubrique bugs"><img width=20 height=16 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-bugs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/bugs/" TITLE="Bugtracking">Bugs</a></td></tr>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/GPL.php3" TITLE="Rubrique license"><img width=18 height=12 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-gpl.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/GPL.php3" TITLE="License">License</a></td></tr>
+ </TABLE>
+ </TD></TR></TABLE></TD></TR></TABLE>
+ <!------ End Box ------>
+
+ </TD>
+ <TD WIDTH=15><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD>
+ <TD ALIGN=left valign=top><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="10" BORDER=0 ALT="">
+
+<!-- title -->
+<TABLE background="http://www.nevrax.org/inc/img/redline.gif" CELLSPACING=0 CELLPADDING=0 BORDER=0 width=100%><tr><td>
+<A HREF="http://www.nevrax.org/docs/"><img src="http://www.nevrax.org/inc/img/t_docs.gif" ALT="Docs" HEIGHT=20 BORDER=0></A>
+</td><td><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="1" HEIGHT="1" BORDER=0 ALT="">
+</td></tr></table>
+&nbsp;
+
+<!-- block -->
+<TABLE bgcolor="#dddddd" CELLSPACING=0 CELLPADDING=0 BORDER=0 width=100%><tr><td width=1% valign=middle><img width=6 height=14 hspace=2 vspace=2 src="http://www.nevrax.org/inc/img/reddots.gif"></TD>
+ <TD><B>Documentation</B></TD>
+ <TD ALIGN=RIGHT>&nbsp;</td>
+</tr></table>
+<!-- Generated by Doxygen 1.2.14 -->
+<center>
+<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="namespacemembers.html">Namespace Members</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; <a class="qindex" href="pages.html">Related Pages</a> &nbsp; <a class="qindexRef" doxygen="_cgi:http://www.nevrax.org/cgi-bin/nel-search.cgi" href="http://www.nevrax.org/cgi-bin/nel-search.cgi">Search</a> &nbsp; </center>
+<hr><h1>cf_gramatical.cpp</h1><a href="cf__gramatical_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001
+00002 <font class="comment">/* A Bison parser, made from cf_gramatical.yxx</font>
+00003 <font class="comment"> by GNU Bison version 1.28 */</font>
+00004
+<a name="l00005"></a><a class="code" href="cf__gramatical_8cpp.html#a0">00005</a> <font class="preprocessor">#define YYBISON 1 </font><font class="comment">/* Identify Bison output. */</font>
+00006
+<a name="l00007"></a><a class="code" href="cf__gramatical_8cpp.html#a1">00007</a> <font class="preprocessor">#define yyparse cfparse</font>
+<a name="l00008"></a><a class="code" href="cf__gramatical_8cpp.html#a2">00008</a> <font class="preprocessor"></font><font class="preprocessor">#define yylex cflex</font>
+<a name="l00009"></a><a class="code" href="cf__gramatical_8cpp.html#a3">00009</a> <font class="preprocessor"></font><font class="preprocessor">#define yyerror cferror</font>
+<a name="l00010"></a><a class="code" href="cf__gramatical_8cpp.html#a4">00010</a> <font class="preprocessor"></font><font class="preprocessor">#define yylval cflval</font>
+<a name="l00011"></a><a class="code" href="cf__gramatical_8cpp.html#a5">00011</a> <font class="preprocessor"></font><font class="preprocessor">#define yychar cfchar</font>
+<a name="l00012"></a><a class="code" href="cf__gramatical_8cpp.html#a6">00012</a> <font class="preprocessor"></font><font class="preprocessor">#define yydebug cfdebug</font>
+<a name="l00013"></a><a class="code" href="cf__gramatical_8cpp.html#a7">00013</a> <font class="preprocessor"></font><font class="preprocessor">#define yynerrs cfnerrs</font>
+<a name="l00014"></a><a class="code" href="cf__gramatical_8cpp.html#a8">00014</a> <font class="preprocessor"></font><font class="preprocessor">#define ADD_ASSIGN 257</font>
+<a name="l00015"></a><a class="code" href="cf__gramatical_8cpp.html#a9">00015</a> <font class="preprocessor"></font><font class="preprocessor">#define ASSIGN 258</font>
+<a name="l00016"></a><a class="code" href="cf__gramatical_8cpp.html#a10">00016</a> <font class="preprocessor"></font><font class="preprocessor">#define VARIABLE 259</font>
+<a name="l00017"></a><a class="code" href="cf__gramatical_8cpp.html#a11">00017</a> <font class="preprocessor"></font><font class="preprocessor">#define STRING 260</font>
+<a name="l00018"></a><a class="code" href="cf__gramatical_8cpp.html#a12">00018</a> <font class="preprocessor"></font><font class="preprocessor">#define SEMICOLON 261</font>
+<a name="l00019"></a><a class="code" href="cf__gramatical_8cpp.html#a13">00019</a> <font class="preprocessor"></font><font class="preprocessor">#define PLUS 262</font>
+<a name="l00020"></a><a class="code" href="cf__gramatical_8cpp.html#a14">00020</a> <font class="preprocessor"></font><font class="preprocessor">#define MINUS 263</font>
+<a name="l00021"></a><a class="code" href="cf__gramatical_8cpp.html#a15">00021</a> <font class="preprocessor"></font><font class="preprocessor">#define MULT 264</font>
+<a name="l00022"></a><a class="code" href="cf__gramatical_8cpp.html#a16">00022</a> <font class="preprocessor"></font><font class="preprocessor">#define DIVIDE 265</font>
+<a name="l00023"></a><a class="code" href="cf__gramatical_8cpp.html#a17">00023</a> <font class="preprocessor"></font><font class="preprocessor">#define RPAREN 266</font>
+<a name="l00024"></a><a class="code" href="cf__gramatical_8cpp.html#a18">00024</a> <font class="preprocessor"></font><font class="preprocessor">#define LPAREN 267</font>
+<a name="l00025"></a><a class="code" href="cf__gramatical_8cpp.html#a19">00025</a> <font class="preprocessor"></font><font class="preprocessor">#define RBRACE 268</font>
+<a name="l00026"></a><a class="code" href="cf__gramatical_8cpp.html#a20">00026</a> <font class="preprocessor"></font><font class="preprocessor">#define LBRACE 269</font>
+<a name="l00027"></a><a class="code" href="cf__gramatical_8cpp.html#a21">00027</a> <font class="preprocessor"></font><font class="preprocessor">#define COMMA 270</font>
+<a name="l00028"></a><a class="code" href="cf__gramatical_8cpp.html#a22">00028</a> <font class="preprocessor"></font><font class="preprocessor">#define INT 271</font>
+<a name="l00029"></a><a class="code" href="cf__gramatical_8cpp.html#a23">00029</a> <font class="preprocessor"></font><font class="preprocessor">#define REAL 272</font>
+00030 <font class="preprocessor"></font>
+00031 <font class="preprocessor">#line 1 "cf_gramatical.yxx"</font>
+00032 <font class="preprocessor"></font>
+00033
+00034 <font class="comment">/* Includes */</font>
+00035
+00036 <font class="preprocessor">#ifdef NL_OS_WINDOWS</font>
+00037 <font class="preprocessor"></font><font class="preprocessor">#pragma warning (disable : 4786)</font>
+00038 <font class="preprocessor"></font><font class="preprocessor">#endif // NL_OS_WINDOWS</font>
+00039 <font class="preprocessor"></font>
+00040 <font class="preprocessor">#include &lt;stdio.h&gt;</font>
+00041 <font class="preprocessor">#include &lt;vector&gt;</font>
+00042 <font class="preprocessor">#include &lt;string&gt;</font>
+00043
+00044 <font class="preprocessor">#include "<a class="code" href="config__file_8h.html">nel/misc/config_file.h</a>"</font>
+00045 <font class="preprocessor">#include "<a class="code" href="common_8h.html">nel/misc/common.h</a>"</font>
+00046 <font class="preprocessor">#include "<a class="code" href="debug_8h.html">nel/misc/debug.h</a>"</font>
+00047
+00048 <font class="keyword">using</font> <font class="keyword">namespace </font>std;
+00049 <font class="keyword">using</font> <font class="keyword">namespace </font>NLMISC;
+00050
+00051 <font class="comment">/* Constantes */</font>
+00052
+<a name="l00053"></a><a class="code" href="cf__gramatical_8cpp.html#a24">00053</a> <font class="preprocessor">#define YYPARSE_PARAM pvararray</font>
+00054 <font class="preprocessor"></font>
+00055 <font class="comment">// WARNING!!!! DEBUG_PRINTF are commented using // so IT MUST HAVE NO INSTRUCTION AFTER A DEBUG_PRINTF OR THEY LL BE COMMENTED</font>
+00056
+00057 <font class="comment">//#define DEBUG_PRINTF InfoLog-&gt;displayRaw</font>
+00058 <font class="preprocessor">#ifdef __GNUC__</font>
+00059 <font class="preprocessor"></font><font class="preprocessor">#define DEBUG_PRINTF(format, args...)</font>
+00060 <font class="preprocessor"></font><font class="preprocessor">#else // __GNUC__</font>
+<a name="l00061"></a><a class="code" href="cf__gramatical_8cpp.html#a25">00061</a> <font class="preprocessor"></font><font class="preprocessor">#define DEBUG_PRINTF // InfoLog-&gt;displayRaw</font>
+00062 <font class="preprocessor"></font><font class="preprocessor">#endif // __GNUC__</font>
+00063 <font class="preprocessor"></font>
+00064
+00065 <font class="comment">//#define DEBUG_PRINT(a) InfoLog-&gt;displayRaw(a)</font>
+<a name="l00066"></a><a class="code" href="cf__gramatical_8cpp.html#a26">00066</a> <font class="preprocessor">#define DEBUG_PRINT(a)</font>
+00067 <font class="preprocessor"></font>
+00068 <font class="comment">/* Types */</font>
+00069
+<a name="l00070"></a><a class="code" href="cf__gramatical_8cpp.html#a82">00070</a> <font class="keyword">enum</font> <a class="code" href="cf__gramatical_8cpp.html#a82">cf_operation</a> { <a class="code" href="cf__gramatical_8cpp.html#a82a71">OP_PLUS</a>, <a class="code" href="cf__gramatical_8cpp.html#a82a72">OP_MINUS</a>, <a class="code" href="cf__gramatical_8cpp.html#a82a73">OP_MULT</a>, <a class="code" href="cf__gramatical_8cpp.html#a82a74">OP_DIVIDE</a>, <a class="code" href="cf__gramatical_8cpp.html#a82a75">OP_NEG</a> };
+00071
+<a name="l00072"></a><a class="code" href="structcf__value.html">00072</a> <font class="keyword">struct </font><a class="code" href="structcf__value.html">cf_value</a>
+00073 {
+<a name="l00074"></a><a class="code" href="structcf__value.html#m0">00074</a> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0">NLMISC::CConfigFile::CVar::TVarType</a> <a class="code" href="structcf__value.html#m0">Type</a>;
+00075 <font class="keywordtype">int</font> <a class="code" href="structcf__value.html#m1">Int</a>;
+00076 <font class="keywordtype">double</font> <a class="code" href="structcf__value.html#m2">Real</a>;
+00077 <font class="keywordtype">char</font> <a class="code" href="structcf__value.html#m3">String</a>[1024];
+00078 };
+00079
+00080 <font class="comment">/* Externals */</font>
+00081
+<a name="l00082"></a><a class="code" href="cf__gramatical_8cpp.html#a52">00082</a> <font class="keyword">extern</font> <font class="keywordtype">bool</font> <a class="code" href="cf__gramatical_8cpp.html#a52">cf_Ignore</a>;
+00083
+<a name="l00084"></a><a class="code" href="cf__gramatical_8cpp.html#a53">00084</a> <font class="keyword">extern</font> FILE *<a class="code" href="cf__gramatical_8cpp.html#a53">yyin</a>;
+00085
+00086 <font class="comment">/* Variables */</font>
+00087
+<a name="l00088"></a><a class="code" href="cf__gramatical_8cpp.html#a54">00088</a> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html">NLMISC::CConfigFile::CVar</a> <a class="code" href="cf__gramatical_8cpp.html#a54">cf_CurrentVar</a>;
+00089
+<a name="l00090"></a><a class="code" href="cf__gramatical_8cpp.html#a55">00090</a> <font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a55">cf_CurrentLine</a>;
+00091
+<a name="l00092"></a><a class="code" href="cf__gramatical_8cpp.html#a56">00092</a> <font class="keywordtype">bool</font> <a class="code" href="cf__gramatical_8cpp.html#a56">cf_OverwriteExistingVariable</a>; <font class="comment">// setup in the config_file.cpp reparse()</font>
+00093
+00094
+00095
+00096 <font class="comment">/* Prototypes */</font>
+00097
+00098 <font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a2">yylex</a> (<font class="keywordtype">void</font>);
+00099
+00100 <a class="code" href="structcf__value.html">cf_value</a> <a class="code" href="cf__gramatical_8cpp.html#a77">cf_op</a> (<a class="code" href="structcf__value.html">cf_value</a> a, <a class="code" href="structcf__value.html">cf_value</a> b, <a class="code" href="cf__gramatical_8cpp.html#a82">cf_operation</a> op);
+00101
+00102 <font class="keywordtype">void</font> <a class="code" href="cf__gramatical_8cpp.html#a78">cf_print</a> (<a class="code" href="structcf__value.html">cf_value</a> Val);
+00103
+00104 <font class="keywordtype">void</font> <a class="code" href="cf__gramatical_8cpp.html#a79">cf_setVar</a> (<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html">NLMISC::CConfigFile::CVar</a> &amp;Var, <a class="code" href="structcf__value.html">cf_value</a> Val);
+00105
+00106 <font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a3">yyerror</a> (<font class="keyword">const</font> <font class="keywordtype">char</font> *);
+00107
+00108
+00109 <font class="preprocessor">#line 81 "cf_gramatical.yxx"</font>
+<a name="l00110"></a><a class="code" href="unionYYSTYPE.html">00110</a> <font class="preprocessor"></font><font class="keyword">typedef</font> <font class="keyword">union </font>{
+00111 <a class="code" href="structcf__value.html">cf_value</a> Val;
+00112 } <a class="code" href="unionYYSTYPE.html">YYSTYPE</a>;
+00113 <font class="preprocessor">#include &lt;stdio.h&gt;</font>
+00114
+00115 <font class="preprocessor">#ifndef __cplusplus</font>
+00116 <font class="preprocessor"></font><font class="preprocessor">#ifndef __STDC__</font>
+<a name="l00117"></a><a class="code" href="cf__gramatical_8cpp.html#a27">00117</a> <font class="preprocessor"></font><font class="preprocessor">#define const</font>
+00118 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00119 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00120 <font class="preprocessor"></font>
+00121
+00122
+<a name="l00123"></a><a class="code" href="cf__gramatical_8cpp.html#a28">00123</a> <font class="preprocessor">#define YYFINAL 44</font>
+<a name="l00124"></a><a class="code" href="cf__gramatical_8cpp.html#a29">00124</a> <font class="preprocessor"></font><font class="preprocessor">#define YYFLAG -32768</font>
+<a name="l00125"></a><a class="code" href="cf__gramatical_8cpp.html#a30">00125</a> <font class="preprocessor"></font><font class="preprocessor">#define YYNTBASE 19</font>
+00126 <font class="preprocessor"></font>
+<a name="l00127"></a><a class="code" href="cf__gramatical_8cpp.html#a31">00127</a> <font class="preprocessor">#define YYTRANSLATE(x) ((unsigned)(x) &lt;= 272 ? yytranslate[x] : 30)</font>
+00128 <font class="preprocessor"></font>
+<a name="l00129"></a><a class="code" href="cf__gramatical_8cpp.html#a57">00129</a> <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">char</font> <a class="code" href="cf__gramatical_8cpp.html#a57">yytranslate</a>[] = { 0,
+00130 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00131 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00132 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00133 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00134 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00135 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00136 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00137 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00138 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00139 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00140 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00141 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00142 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00143 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00144 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00145 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00146 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00147 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00148 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00149 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00150 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00151 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00152 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00153 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00154 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+00155 2, 2, 2, 2, 2, 1, 3, 4, 5, 6,
+00156 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
+00157 17, 18
+00158 };
+00159
+00160 <font class="preprocessor">#if YYDEBUG != 0</font>
+00161 <font class="preprocessor"></font><font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> yyprhs[] = { 0,
+00162 0, 1, 4, 5, 8, 10, 15, 20, 22, 26,
+00163 28, 29, 34, 35, 37, 41, 45, 47, 51, 55,
+00164 58, 61, 65, 67, 69, 71, 73
+00165 };
+00166
+00167 <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> yyrhs[] = { -1,
+00168 20, 21, 0, 0, 21, 22, 0, 22, 0, 5,
+00169 4, 23, 7, 0, 5, 3, 23, 7, 0, 26,
+00170 0, 15, 24, 14, 0, 26, 0, 0, 26, 25,
+00171 16, 24, 0, 0, 27, 0, 26, 8, 27, 0,
+00172 26, 9, 27, 0, 28, 0, 27, 10, 28, 0,
+00173 27, 11, 28, 0, 8, 28, 0, 9, 28, 0,
+00174 13, 23, 12, 0, 17, 0, 18, 0, 6, 0,
+00175 29, 0, 5, 0
+00176 };
+00177
+00178 <font class="preprocessor">#endif</font>
+00179 <font class="preprocessor"></font>
+00180 <font class="preprocessor">#if YYDEBUG != 0</font>
+00181 <font class="preprocessor"></font><font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> yyrline[] = { 0,
+00182 100, 100, 100, 103, 104, 107, 161, 209, 210, 213,
+00183 214, 214, 215, 218, 219, 220, 223, 224, 225, 228,
+00184 229, 230, 231, 232, 233, 234, 237
+00185 };
+00186 <font class="preprocessor">#endif</font>
+00187 <font class="preprocessor"></font>
+00188
+00189 <font class="preprocessor">#if YYDEBUG != 0 || defined (YYERROR_VERBOSE)</font>
+00190 <font class="preprocessor"></font>
+00191 <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">char</font> * <font class="keyword">const</font> yytname[] = { <font class="stringliteral">"$"</font>,<font class="stringliteral">"error"</font>,<font class="stringliteral">"$undefined."</font>,<font class="stringliteral">"ADD_ASSIGN"</font>,
+00192 <font class="stringliteral">"ASSIGN"</font>,<font class="stringliteral">"VARIABLE"</font>,<font class="stringliteral">"STRING"</font>,<font class="stringliteral">"SEMICOLON"</font>,<font class="stringliteral">"PLUS"</font>,<font class="stringliteral">"MINUS"</font>,<font class="stringliteral">"MULT"</font>,<font class="stringliteral">"DIVIDE"</font>,<font class="stringliteral">"RPAREN"</font>,
+00193 <font class="stringliteral">"LPAREN"</font>,<font class="stringliteral">"RBRACE"</font>,<font class="stringliteral">"LBRACE"</font>,<font class="stringliteral">"COMMA"</font>,<font class="stringliteral">"INT"</font>,<font class="stringliteral">"REAL"</font>,<font class="stringliteral">"ROOT"</font>,<font class="stringliteral">"@1"</font>,<font class="stringliteral">"instlist"</font>,<font class="stringliteral">"inst"</font>,
+00194 <font class="stringliteral">"expression"</font>,<font class="stringliteral">"exprbrace"</font>,<font class="stringliteral">"@2"</font>,<font class="stringliteral">"expr2"</font>,<font class="stringliteral">"expr3"</font>,<font class="stringliteral">"expr4"</font>,<font class="stringliteral">"variable"</font>, NULL
+00195 };
+00196 <font class="preprocessor">#endif</font>
+00197 <font class="preprocessor"></font>
+<a name="l00198"></a><a class="code" href="cf__gramatical_8cpp.html#a58">00198</a> <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> <a class="code" href="cf__gramatical_8cpp.html#a58">yyr1</a>[] = { 0,
+00199 20, 19, 19, 21, 21, 22, 22, 23, 23, 24,
+00200 25, 24, 24, 26, 26, 26, 27, 27, 27, 28,
+00201 28, 28, 28, 28, 28, 28, 29
+00202 };
+00203
+<a name="l00204"></a><a class="code" href="cf__gramatical_8cpp.html#a59">00204</a> <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> <a class="code" href="cf__gramatical_8cpp.html#a59">yyr2</a>[] = { 0,
+00205 0, 2, 0, 2, 1, 4, 4, 1, 3, 1,
+00206 0, 4, 0, 1, 3, 3, 1, 3, 3, 2,
+00207 2, 3, 1, 1, 1, 1, 1
+00208 };
+00209
+<a name="l00210"></a><a class="code" href="cf__gramatical_8cpp.html#a60">00210</a> <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> <a class="code" href="cf__gramatical_8cpp.html#a60">yydefact</a>[] = { 1,
+00211 0, 0, 2, 5, 0, 0, 4, 27, 25, 0,
+00212 0, 0, 13, 23, 24, 0, 8, 14, 17, 26,
+00213 0, 20, 21, 0, 0, 10, 7, 0, 0, 0,
+00214 0, 6, 22, 9, 0, 15, 16, 18, 19, 13,
+00215 12, 0, 0, 0
+00216 };
+00217
+<a name="l00218"></a><a class="code" href="cf__gramatical_8cpp.html#a61">00218</a> <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> <a class="code" href="cf__gramatical_8cpp.html#a61">yydefgoto</a>[] = { 42,
+00219 1, 3, 4, 16, 25, 35, 17, 18, 19, 20
+00220 };
+00221
+<a name="l00222"></a><a class="code" href="cf__gramatical_8cpp.html#a62">00222</a> <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> <a class="code" href="cf__gramatical_8cpp.html#a62">yypact</a>[] = { 5,
+00223 7, 15, 7,-32768, -2, -2,-32768,-32768,-32768, 20,
+00224 20, -2, 20,-32768,-32768, 25, 22, 13,-32768,-32768,
+00225 29,-32768,-32768, 8, 26, 1,-32768, 20, 20, 20,
+00226 20,-32768,-32768,-32768, 23, 13, 13,-32768,-32768, 20,
+00227 -32768, 41, 42,-32768
+00228 };
+00229
+<a name="l00230"></a><a class="code" href="cf__gramatical_8cpp.html#a63">00230</a> <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> <a class="code" href="cf__gramatical_8cpp.html#a63">yypgoto</a>[] = {-32768,
+00231 -32768,-32768, 40, 2, 4,-32768, -13, 6, -9,-32768
+00232 };
+00233
+00234
+<a name="l00235"></a><a class="code" href="cf__gramatical_8cpp.html#a32">00235</a> <font class="preprocessor">#define YYLAST 44</font>
+00236 <font class="preprocessor"></font>
+00237
+<a name="l00238"></a><a class="code" href="cf__gramatical_8cpp.html#a64">00238</a> <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> <a class="code" href="cf__gramatical_8cpp.html#a64">yytable</a>[] = { 26,
+00239 22, 23, 8, 9, -3, 10, 11, 21, 28, 29,
+00240 12, 2, 13, 24, 14, 15, -11, 5, 6, 33,
+00241 38, 39, 30, 31, 8, 9, 26, 10, 11, 28,
+00242 29, 27, 12, 36, 37, 32, 14, 15, 40, 34,
+00243 43, 44, 7, 41
+00244 };
+00245
+<a name="l00246"></a><a class="code" href="cf__gramatical_8cpp.html#a65">00246</a> <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">short</font> <a class="code" href="cf__gramatical_8cpp.html#a65">yycheck</a>[] = { 13,
+00247 10, 11, 5, 6, 0, 8, 9, 6, 8, 9,
+00248 13, 5, 15, 12, 17, 18, 16, 3, 4, 12,
+00249 30, 31, 10, 11, 5, 6, 40, 8, 9, 8,
+00250 9, 7, 13, 28, 29, 7, 17, 18, 16, 14,
+00251 0, 0, 3, 40
+00252 };
+00253 <font class="comment">/* -*-C-*- Note some compilers choke on comments on `#line' lines. */</font>
+00254 <font class="preprocessor">#line 3 "cfbison.simple"</font>
+00255 <font class="preprocessor"></font><font class="comment">/* This file comes from bison-1.28. */</font>
+00256
+00257 <font class="comment">/* Skeleton output parser for bison,</font>
+00258 <font class="comment"> Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.</font>
+00259 <font class="comment"></font>
+00260 <font class="comment"> This program is free software; you can redistribute it and/or modify</font>
+00261 <font class="comment"> it under the terms of the GNU General Public License as published by</font>
+00262 <font class="comment"> the Free Software Foundation; either version 2, or (at your option)</font>
+00263 <font class="comment"> any later version.</font>
+00264 <font class="comment"></font>
+00265 <font class="comment"> This program is distributed in the hope that it will be useful,</font>
+00266 <font class="comment"> but WITHOUT ANY WARRANTY; without even the implied warranty of</font>
+00267 <font class="comment"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</font>
+00268 <font class="comment"> GNU General Public License for more details.</font>
+00269 <font class="comment"></font>
+00270 <font class="comment"> You should have received a copy of the GNU General Public License</font>
+00271 <font class="comment"> along with this program; if not, write to the Free Software</font>
+00272 <font class="comment"> Foundation, Inc., 59 Temple Place - Suite 330,</font>
+00273 <font class="comment"> Boston, MA 02111-1307, USA. */</font>
+00274
+00275 <font class="comment">/* As a special exception, when this file is copied by Bison into a</font>
+00276 <font class="comment"> Bison output file, you may use that output file without restriction.</font>
+00277 <font class="comment"> This special exception was added by the Free Software Foundation</font>
+00278 <font class="comment"> in version 1.24 of Bison. */</font>
+00279
+00280 <font class="comment">/* This is the parser code that is written into each bison parser</font>
+00281 <font class="comment"> when the %semantic_parser declaration is not specified in the grammar.</font>
+00282 <font class="comment"> It was written by Richard Stallman by simplifying the hairy parser</font>
+00283 <font class="comment"> used when %semantic_parser is specified. */</font>
+00284
+00285 <font class="preprocessor">#ifndef YYSTACK_USE_ALLOCA</font>
+00286 <font class="preprocessor"></font><font class="preprocessor">#ifdef alloca</font>
+00287 <font class="preprocessor"></font><font class="preprocessor">#define YYSTACK_USE_ALLOCA</font>
+00288 <font class="preprocessor"></font><font class="preprocessor">#else </font><font class="comment">/* alloca not defined */</font>
+00289 <font class="preprocessor">#ifdef __GNUC__</font>
+00290 <font class="preprocessor"></font><font class="preprocessor">#define YYSTACK_USE_ALLOCA</font>
+00291 <font class="preprocessor"></font><font class="preprocessor">#define alloca __builtin_alloca</font>
+00292 <font class="preprocessor"></font><font class="preprocessor">#else </font><font class="comment">/* not GNU C. */</font>
+00293 <font class="preprocessor">#if (!defined (__STDC__) &amp;&amp; defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) &amp;&amp; defined (__i386))</font>
+00294 <font class="preprocessor"></font><font class="preprocessor">#define YYSTACK_USE_ALLOCA</font>
+00295 <font class="preprocessor"></font><font class="preprocessor">#include &lt;alloca.h&gt;</font>
+00296 <font class="preprocessor">#else </font><font class="comment">/* not sparc */</font>
+00297 <font class="comment">/* We think this test detects Watcom and Microsoft C. */</font>
+00298 <font class="comment">/* This used to test MSDOS, but that is a bad idea</font>
+00299 <font class="comment"> since that symbol is in the user namespace. */</font>
+00300 <font class="preprocessor">#if (defined (_MSDOS) || defined (_MSDOS_)) &amp;&amp; !defined (__TURBOC__)</font>
+00301 <font class="preprocessor"></font><font class="preprocessor">#if 0 </font><font class="comment">/* No need for malloc.h, which pollutes the namespace;</font>
+00302 <font class="comment"> instead, just don't use alloca. */</font>
+00303 <font class="preprocessor">#include &lt;malloc.h&gt;</font>
+00304 <font class="preprocessor">#endif</font>
+00305 <font class="preprocessor"></font><font class="preprocessor">#else </font><font class="comment">/* not MSDOS, or __TURBOC__ */</font>
+00306 <font class="preprocessor">#if defined(_AIX)</font>
+00307 <font class="preprocessor"></font><font class="comment">/* I don't know what this was needed for, but it pollutes the namespace.</font>
+00308 <font class="comment"> So I turned it off. rms, 2 May 1997. */</font>
+00309 <font class="comment">/* #include &lt;malloc.h&gt; */</font>
+00310 <font class="preprocessor"> #pragma alloca</font>
+00311 <font class="preprocessor"></font><font class="preprocessor">#define YYSTACK_USE_ALLOCA</font>
+00312 <font class="preprocessor"></font><font class="preprocessor">#else </font><font class="comment">/* not MSDOS, or __TURBOC__, or _AIX */</font>
+00313 <font class="preprocessor">#if 0</font>
+00314 <font class="preprocessor"></font><font class="preprocessor">#ifdef __hpux </font><font class="comment">/* haible@ilog.fr says this works for HPUX 9.05 and up,</font>
+00315 <font class="comment"> and on HPUX 10. Eventually we can turn this on. */</font>
+00316 <font class="preprocessor">#define YYSTACK_USE_ALLOCA</font>
+00317 <font class="preprocessor"></font><font class="preprocessor">#define alloca __builtin_alloca</font>
+00318 <font class="preprocessor"></font><font class="preprocessor">#endif </font><font class="comment">/* __hpux */</font>
+00319 <font class="preprocessor">#endif</font>
+00320 <font class="preprocessor"></font><font class="preprocessor">#endif </font><font class="comment">/* not _AIX */</font>
+00321 <font class="preprocessor">#endif </font><font class="comment">/* not MSDOS, or __TURBOC__ */</font>
+00322 <font class="preprocessor">#endif </font><font class="comment">/* not sparc */</font>
+00323 <font class="preprocessor">#endif </font><font class="comment">/* not GNU C */</font>
+00324 <font class="preprocessor">#endif </font><font class="comment">/* alloca not defined */</font>
+00325 <font class="preprocessor">#endif </font><font class="comment">/* YYSTACK_USE_ALLOCA not defined */</font>
+00326
+00327 <font class="preprocessor">#ifdef YYSTACK_USE_ALLOCA</font>
+00328 <font class="preprocessor"></font><font class="preprocessor">#define YYSTACK_ALLOC alloca</font>
+00329 <font class="preprocessor"></font><font class="preprocessor">#else</font>
+<a name="l00330"></a><a class="code" href="cf__gramatical_8cpp.html#a33">00330</a> <font class="preprocessor"></font><font class="preprocessor">#define YYSTACK_ALLOC malloc</font>
+00331 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00332 <font class="preprocessor"></font>
+00333 <font class="comment">/* Note: there must be only one dollar sign in this file.</font>
+00334 <font class="comment"> It is replaced by the list of actions, each action</font>
+00335 <font class="comment"> as one case of the switch. */</font>
+00336
+<a name="l00337"></a><a class="code" href="cf__gramatical_8cpp.html#a34">00337</a> <font class="preprocessor">#define yyerrok (yyerrstatus = 0)</font>
+<a name="l00338"></a><a class="code" href="cf__gramatical_8cpp.html#a35">00338</a> <font class="preprocessor"></font><font class="preprocessor">#define yyclearin (yychar = YYEMPTY)</font>
+<a name="l00339"></a><a class="code" href="cf__gramatical_8cpp.html#a36">00339</a> <font class="preprocessor"></font><font class="preprocessor">#define YYEMPTY -2</font>
+<a name="l00340"></a><a class="code" href="cf__gramatical_8cpp.html#a37">00340</a> <font class="preprocessor"></font><font class="preprocessor">#define YYEOF 0</font>
+<a name="l00341"></a><a class="code" href="cf__gramatical_8cpp.html#a38">00341</a> <font class="preprocessor"></font><font class="preprocessor">#define YYACCEPT goto yyacceptlab</font>
+<a name="l00342"></a><a class="code" href="cf__gramatical_8cpp.html#a39">00342</a> <font class="preprocessor"></font><font class="preprocessor">#define YYABORT goto yyabortlab</font>
+<a name="l00343"></a><a class="code" href="cf__gramatical_8cpp.html#a40">00343</a> <font class="preprocessor"></font><font class="preprocessor">#define YYERROR goto yyerrlab1</font>
+00344 <font class="preprocessor"></font><font class="comment">/* Like YYERROR except do call yyerror.</font>
+00345 <font class="comment"> This remains here temporarily to ease the</font>
+00346 <font class="comment"> transition to the new meaning of YYERROR, for GCC.</font>
+00347 <font class="comment"> Once GCC version 2 has supplanted version 1, this can go. */</font>
+<a name="l00348"></a><a class="code" href="cf__gramatical_8cpp.html#a41">00348</a> <font class="preprocessor">#define YYFAIL goto yyerrlab</font>
+<a name="l00349"></a><a class="code" href="cf__gramatical_8cpp.html#a42">00349</a> <font class="preprocessor"></font><font class="preprocessor">#define YYRECOVERING() (!!yyerrstatus)</font>
+<a name="l00350"></a><a class="code" href="cf__gramatical_8cpp.html#a43">00350</a> <font class="preprocessor"></font><font class="preprocessor">#define YYBACKUP(token, value) \</font>
+00351 <font class="preprocessor">do \</font>
+00352 <font class="preprocessor"> if (yychar == YYEMPTY &amp;&amp; yylen == 1) \</font>
+00353 <font class="preprocessor"> { yychar = (token), yylval = (value); \</font>
+00354 <font class="preprocessor"> yychar1 = YYTRANSLATE (yychar); \</font>
+00355 <font class="preprocessor"> YYPOPSTACK; \</font>
+00356 <font class="preprocessor"> goto yybackup; \</font>
+00357 <font class="preprocessor"> } \</font>
+00358 <font class="preprocessor"> else \</font>
+00359 <font class="preprocessor"> { yyerror ("syntax error: cannot back up"); YYERROR; } \</font>
+00360 <font class="preprocessor">while (0)</font>
+00361 <font class="preprocessor"></font>
+<a name="l00362"></a><a class="code" href="cf__gramatical_8cpp.html#a44">00362</a> <font class="preprocessor">#define YYTERROR 1</font>
+<a name="l00363"></a><a class="code" href="cf__gramatical_8cpp.html#a45">00363</a> <font class="preprocessor"></font><font class="preprocessor">#define YYERRCODE 256</font>
+00364 <font class="preprocessor"></font>
+00365 <font class="preprocessor">#ifndef YYPURE</font>
+<a name="l00366"></a><a class="code" href="cf__gramatical_8cpp.html#a46">00366</a> <font class="preprocessor"></font><font class="preprocessor">#define YYLEX yylex()</font>
+00367 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00368 <font class="preprocessor"></font>
+00369 <font class="preprocessor">#ifdef YYPURE</font>
+00370 <font class="preprocessor"></font><font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00371 <font class="preprocessor"></font><font class="preprocessor">#ifdef YYLEX_PARAM</font>
+00372 <font class="preprocessor"></font><font class="preprocessor">#define YYLEX yylex(&amp;yylval, &amp;yylloc, YYLEX_PARAM)</font>
+00373 <font class="preprocessor"></font><font class="preprocessor">#else</font>
+00374 <font class="preprocessor"></font><font class="preprocessor">#define YYLEX yylex(&amp;yylval, &amp;yylloc)</font>
+00375 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00376 <font class="preprocessor"></font><font class="preprocessor">#else </font><font class="comment">/* not YYLSP_NEEDED */</font>
+00377 <font class="preprocessor">#ifdef YYLEX_PARAM</font>
+00378 <font class="preprocessor"></font><font class="preprocessor">#define YYLEX yylex(&amp;yylval, YYLEX_PARAM)</font>
+00379 <font class="preprocessor"></font><font class="preprocessor">#else</font>
+00380 <font class="preprocessor"></font><font class="preprocessor">#define YYLEX yylex(&amp;yylval)</font>
+00381 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00382 <font class="preprocessor"></font><font class="preprocessor">#endif </font><font class="comment">/* not YYLSP_NEEDED */</font>
+00383 <font class="preprocessor">#endif</font>
+00384 <font class="preprocessor"></font>
+00385 <font class="comment">/* If nonreentrant, generate the variables here */</font>
+00386
+00387 <font class="preprocessor">#ifndef YYPURE</font>
+00388 <font class="preprocessor"></font>
+<a name="l00389"></a><a class="code" href="cf__gramatical_8cpp.html#a66">00389</a> <font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a>; <font class="comment">/* the lookahead symbol */</font>
+<a name="l00390"></a><a class="code" href="cf__gramatical_8cpp.html#a67">00390</a> <a class="code" href="unionYYSTYPE.html">YYSTYPE</a> <a class="code" href="cf__gramatical_8cpp.html#a4">yylval</a>; <font class="comment">/* the semantic value of the */</font>
+00391 <font class="comment">/* lookahead symbol */</font>
+00392
+00393 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00394 <font class="preprocessor"></font>YYLTYPE yylloc; <font class="comment">/* location data for the lookahead */</font>
+00395 <font class="comment">/* symbol */</font>
+00396 <font class="preprocessor">#endif</font>
+00397 <font class="preprocessor"></font>
+<a name="l00398"></a><a class="code" href="cf__gramatical_8cpp.html#a68">00398</a> <font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a7">yynerrs</a>; <font class="comment">/* number of parse errors so far */</font>
+00399 <font class="preprocessor">#endif </font><font class="comment">/* not YYPURE */</font>
+00400
+00401 <font class="preprocessor">#if YYDEBUG != 0</font>
+00402 <font class="preprocessor"></font><font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a6">yydebug</a>; <font class="comment">/* nonzero means print parse trace */</font>
+00403 <font class="comment">/* Since this is uninitialized, it does not stop multiple parsers</font>
+00404 <font class="comment"> from coexisting. */</font>
+00405 <font class="preprocessor">#endif</font>
+00406 <font class="preprocessor"></font>
+00407 <font class="comment">/* YYINITDEPTH indicates the initial size of the parser's stacks */</font>
+00408
+00409 <font class="preprocessor">#ifndef YYINITDEPTH</font>
+<a name="l00410"></a><a class="code" href="cf__gramatical_8cpp.html#a47">00410</a> <font class="preprocessor"></font><font class="preprocessor">#define YYINITDEPTH 200</font>
+00411 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00412 <font class="preprocessor"></font>
+00413 <font class="comment">/* YYMAXDEPTH is the maximum size the stacks can grow to</font>
+00414 <font class="comment"> (effective only if the built-in stack extension method is used). */</font>
+00415
+00416 <font class="preprocessor">#if YYMAXDEPTH == 0</font>
+00417 <font class="preprocessor"></font><font class="preprocessor">#undef YYMAXDEPTH</font>
+00418 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00419 <font class="preprocessor"></font>
+00420 <font class="preprocessor">#ifndef YYMAXDEPTH</font>
+<a name="l00421"></a><a class="code" href="cf__gramatical_8cpp.html#a48">00421</a> <font class="preprocessor"></font><font class="preprocessor">#define YYMAXDEPTH 10000</font>
+00422 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00423 <font class="preprocessor"></font>
+00424 <font class="comment">/* Define __yy_memcpy. Note that the size argument</font>
+00425 <font class="comment"> should be passed with type unsigned int, because that is what the non-GCC</font>
+00426 <font class="comment"> definitions require. With GCC, __builtin_memcpy takes an arg</font>
+00427 <font class="comment"> of type size_t, but it can handle unsigned int. */</font>
+00428
+00429 <font class="preprocessor">#if __GNUC__ &gt; 1 </font><font class="comment">/* GNU C and GNU C++ define this. */</font>
+00430 <font class="preprocessor">#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT)</font>
+00431 <font class="preprocessor"></font><font class="preprocessor">#else </font><font class="comment">/* not GNU C or C++ */</font>
+00432 <font class="preprocessor">#ifndef __cplusplus</font>
+00433 <font class="preprocessor"></font>
+00434 <font class="comment">/* This is the most reliable way to avoid incompatibilities</font>
+00435 <font class="comment"> in available built-in functions on various systems. */</font>
+00436 <font class="keyword">static</font> <font class="keywordtype">void</font>
+00437 <a class="code" href="cf__gramatical_8cpp.html#a81">__yy_memcpy</a> (to, <a class="code" href="cf__gramatical_8cpp.html#a69">from</a>, <a class="code" href="cf__gramatical_8cpp.html#a70">count</a>)
+00438 <font class="keywordtype">char</font> *to;
+<a name="l00439"></a><a class="code" href="cf__gramatical_8cpp.html#a69">00439</a> <font class="keywordtype">char</font> *<a class="code" href="cf__gramatical_8cpp.html#a69">from</a>;
+<a name="l00440"></a><a class="code" href="cf__gramatical_8cpp.html#a70">00440</a> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a70">count</a>;
+00441 {
+00442 <font class="keyword">register</font> <font class="keywordtype">char</font> *f = <a class="code" href="cf__gramatical_8cpp.html#a69">from</a>;
+00443 <font class="keyword">register</font> <font class="keywordtype">char</font> *<a class="code" href="driver__opengl__extension__def_8h.html#a384">t</a> = to;
+00444 <font class="keyword">register</font> <font class="keywordtype">int</font> i = <a class="code" href="cf__gramatical_8cpp.html#a70">count</a>;
+00445
+00446 <font class="keywordflow">while</font> (i-- &gt; 0)
+00447 *<a class="code" href="driver__opengl__extension__def_8h.html#a384">t</a>++ = *f++;
+00448 }
+00449
+00450 <font class="preprocessor">#else </font><font class="comment">/* __cplusplus */</font>
+00451
+00452 <font class="comment">/* This is the most reliable way to avoid incompatibilities</font>
+00453 <font class="comment"> in available built-in functions on various systems. */</font>
+00454 <font class="keyword">static</font> <font class="keywordtype">void</font>
+00455 <a class="code" href="cf__gramatical_8cpp.html#a81">__yy_memcpy</a> (<font class="keywordtype">char</font> *to, <font class="keywordtype">char</font> *<a class="code" href="cf__gramatical_8cpp.html#a69">from</a>, <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a70">count</a>)
+00456 {
+00457 <font class="keyword">register</font> <font class="keywordtype">char</font> *<a class="code" href="driver__opengl__extension__def_8h.html#a384">t</a> = to;
+00458 <font class="keyword">register</font> <font class="keywordtype">char</font> *f = <a class="code" href="cf__gramatical_8cpp.html#a69">from</a>;
+00459 <font class="keyword">register</font> <font class="keywordtype">int</font> i = <a class="code" href="cf__gramatical_8cpp.html#a70">count</a>;
+00460
+00461 <font class="keywordflow">while</font> (i-- &gt; 0)
+00462 *<a class="code" href="driver__opengl__extension__def_8h.html#a384">t</a>++ = *f++;
+00463 }
+00464
+00465 <font class="preprocessor">#endif</font>
+00466 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00467 <font class="preprocessor"></font>
+00468 <font class="preprocessor">#line 217 "cfbison.simple"</font>
+00469 <font class="preprocessor"></font>
+00470 <font class="comment">/* The user can define YYPARSE_PARAM as the name of an argument to be passed</font>
+00471 <font class="comment"> into yyparse. The argument should have type void *.</font>
+00472 <font class="comment"> It should actually point to an object.</font>
+00473 <font class="comment"> Grammar actions can access the variable by casting it</font>
+00474 <font class="comment"> to the proper pointer type. */</font>
+00475
+00476 <font class="preprocessor">#ifdef YYPARSE_PARAM</font>
+00477 <font class="preprocessor"></font><font class="preprocessor">#ifdef __cplusplus</font>
+00478 <font class="preprocessor"></font><font class="preprocessor">#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM</font>
+00479 <font class="preprocessor"></font><font class="preprocessor">#define YYPARSE_PARAM_DECL</font>
+00480 <font class="preprocessor"></font><font class="preprocessor">#else </font><font class="comment">/* not __cplusplus */</font>
+00481 <font class="preprocessor">#define YYPARSE_PARAM_ARG YYPARSE_PARAM</font>
+00482 <font class="preprocessor"></font><font class="preprocessor">#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;</font>
+00483 <font class="preprocessor"></font><font class="preprocessor">#endif </font><font class="comment">/* not __cplusplus */</font>
+00484 <font class="preprocessor">#else </font><font class="comment">/* not YYPARSE_PARAM */</font>
+00485 <font class="preprocessor">#define YYPARSE_PARAM_ARG</font>
+00486 <font class="preprocessor"></font><font class="preprocessor">#define YYPARSE_PARAM_DECL</font>
+00487 <font class="preprocessor"></font><font class="preprocessor">#endif </font><font class="comment">/* not YYPARSE_PARAM */</font>
+00488
+00489 <font class="comment">/* Prevent warning if -Wstrict-prototypes. */</font>
+00490 <font class="preprocessor">#ifdef __GNUC__</font>
+00491 <font class="preprocessor"></font><font class="preprocessor">#ifdef YYPARSE_PARAM</font>
+00492 <font class="preprocessor"></font><font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a1">yyparse</a> (<font class="keywordtype">void</font> *);
+00493 <font class="preprocessor">#else</font>
+00494 <font class="preprocessor"></font><font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a1">yyparse</a> (<font class="keywordtype">void</font>);
+00495 <font class="preprocessor">#endif</font>
+00496 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00497 <font class="preprocessor"></font>
+00498 <font class="keywordtype">int</font>
+00499 <a class="code" href="cf__gramatical_8cpp.html#a1">yyparse</a>(YYPARSE_PARAM_ARG)
+00500 YYPARSE_PARAM_DECL
+00501 {
+00502 <font class="keyword">register</font> <font class="keywordtype">int</font> yystate;
+00503 <font class="keyword">register</font> <font class="keywordtype">int</font> yyn;
+00504 <font class="keyword">register</font> <font class="keywordtype">short</font> *yyssp;
+00505 <font class="keyword">register</font> <a class="code" href="unionYYSTYPE.html">YYSTYPE</a> *yyvsp;
+00506 <font class="keywordtype">int</font> yyerrstatus; <font class="comment">/* number of tokens to shift before error messages enabled */</font>
+00507 <font class="keywordtype">int</font> yychar1 = 0; <font class="comment">/* lookahead token as an internal (translated) token number */</font>
+00508
+00509 <font class="keywordtype">short</font> yyssa[<a class="code" href="cf__gramatical_8cpp.html#a47">YYINITDEPTH</a>]; <font class="comment">/* the state stack */</font>
+00510 <a class="code" href="unionYYSTYPE.html">YYSTYPE</a> yyvsa[<a class="code" href="cf__gramatical_8cpp.html#a47">YYINITDEPTH</a>]; <font class="comment">/* the semantic value stack */</font>
+00511
+00512 <font class="keywordtype">short</font> *yyss = yyssa; <font class="comment">/* refer to the stacks thru separate pointers */</font>
+00513 <a class="code" href="unionYYSTYPE.html">YYSTYPE</a> *yyvs = yyvsa; <font class="comment">/* to allow yyoverflow to reallocate them elsewhere */</font>
+00514
+00515 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00516 <font class="preprocessor"></font> YYLTYPE yylsa[<a class="code" href="cf__gramatical_8cpp.html#a47">YYINITDEPTH</a>]; <font class="comment">/* the location stack */</font>
+00517 YYLTYPE *yyls = yylsa;
+00518 YYLTYPE *yylsp;
+00519
+00520 <font class="preprocessor">#define YYPOPSTACK (yyvsp--, yyssp--, yylsp--)</font>
+00521 <font class="preprocessor"></font><font class="preprocessor">#else</font>
+00522 <font class="preprocessor"></font><font class="preprocessor">#define YYPOPSTACK (yyvsp--, yyssp--)</font>
+00523 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00524 <font class="preprocessor"></font>
+00525 <font class="keywordtype">int</font> yystacksize = <a class="code" href="cf__gramatical_8cpp.html#a47">YYINITDEPTH</a>;
+00526 <font class="keywordtype">int</font> yyfree_stacks = 0;
+00527
+00528 <font class="preprocessor">#ifdef YYPURE</font>
+00529 <font class="preprocessor"></font> <font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a>;
+00530 <a class="code" href="unionYYSTYPE.html">YYSTYPE</a> yylval;
+00531 <font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a7">yynerrs</a>;
+00532 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00533 <font class="preprocessor"></font> YYLTYPE yylloc;
+00534 <font class="preprocessor">#endif</font>
+00535 <font class="preprocessor"></font><font class="preprocessor">#endif</font>
+00536 <font class="preprocessor"></font>
+00537 <a class="code" href="unionYYSTYPE.html">YYSTYPE</a> yyval; <font class="comment">/* the variable used to return */</font>
+00538 <font class="comment">/* semantic values from the action */</font>
+00539 <font class="comment">/* routines */</font>
+00540 <font class="comment">// ace: big fake for VC7 because it checks if yyval is init or not</font>
+00541 yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a>.<a class="code" href="structcf__value.html#m1">Int</a> = 0;
+00542 <font class="keywordtype">int</font> yylen;
+00543
+00544 <font class="preprocessor">#if YYDEBUG != 0</font>
+00545 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+00546 fprintf(stderr, <font class="stringliteral">"Starting parse\n"</font>);
+00547 <font class="preprocessor">#endif</font>
+00548 <font class="preprocessor"></font>
+00549 yystate = 0;
+00550 yyerrstatus = 0;
+00551 <a class="code" href="cf__gramatical_8cpp.html#a7">yynerrs</a> = 0;
+00552 <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a> = <a class="code" href="cf__gramatical_8cpp.html#a36">YYEMPTY</a>; <font class="comment">/* Cause a token to be read. */</font>
+00553
+00554 <font class="comment">/* Initialize stack pointers.</font>
+00555 <font class="comment"> Waste one element of value and location stack</font>
+00556 <font class="comment"> so that they stay on the same level as the state stack.</font>
+00557 <font class="comment"> The wasted elements are never initialized. */</font>
+00558
+00559 yyssp = yyss - 1;
+00560 yyvsp = yyvs;
+00561 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00562 <font class="preprocessor"></font> yylsp = yyls;
+00563 <font class="preprocessor">#endif</font>
+00564 <font class="preprocessor"></font>
+00565 <font class="comment">/* Push a new state, which is found in yystate . */</font>
+00566 <font class="comment">/* In all cases, when you get here, the value and location stacks</font>
+00567 <font class="comment"> have just been pushed. so pushing a state here evens the stacks. */</font>
+00568 yynewstate:
+00569
+00570 *++yyssp = yystate;
+00571
+00572 <font class="keywordflow">if</font> (yyssp &gt;= yyss + yystacksize - 1)
+00573 {
+00574 <font class="comment">/* Give user a chance to reallocate the stack */</font>
+00575 <font class="comment">/* Use copies of these so that the &amp;'s don't force the real ones into memory. */</font>
+00576 <a class="code" href="unionYYSTYPE.html">YYSTYPE</a> *yyvs1 = yyvs;
+00577 <font class="keywordtype">short</font> *yyss1 = yyss;
+00578 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00579 <font class="preprocessor"></font> YYLTYPE *yyls1 = yyls;
+00580 <font class="preprocessor">#endif</font>
+00581 <font class="preprocessor"></font>
+00582 <font class="comment">/* Get the current used size of the three stacks, in elements. */</font>
+00583 <font class="keywordtype">int</font> size = yyssp - yyss + 1;
+00584
+00585 <font class="preprocessor">#ifdef yyoverflow</font>
+00586 <font class="preprocessor"></font> <font class="comment">/* Each stack pointer address is followed by the size of</font>
+00587 <font class="comment"> the data in use in that stack, in bytes. */</font>
+00588 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00589 <font class="preprocessor"></font> <font class="comment">/* This used to be a conditional around just the two extra args,</font>
+00590 <font class="comment"> but that might be undefined if yyoverflow is a macro. */</font>
+00591 yyoverflow(<font class="stringliteral">"parser stack overflow"</font>,
+00592 &amp;yyss1, size * <font class="keyword">sizeof</font> (*yyssp),
+00593 &amp;yyvs1, size * <font class="keyword">sizeof</font> (*yyvsp),
+00594 &amp;yyls1, size * <font class="keyword">sizeof</font> (*yylsp),
+00595 &amp;yystacksize);
+00596 <font class="preprocessor">#else</font>
+00597 <font class="preprocessor"></font> yyoverflow(<font class="stringliteral">"parser stack overflow"</font>,
+00598 &amp;yyss1, size * <font class="keyword">sizeof</font> (*yyssp),
+00599 &amp;yyvs1, size * <font class="keyword">sizeof</font> (*yyvsp),
+00600 &amp;yystacksize);
+00601 <font class="preprocessor">#endif</font>
+00602 <font class="preprocessor"></font>
+00603 yyss = yyss1; yyvs = yyvs1;
+00604 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00605 <font class="preprocessor"></font> yyls = yyls1;
+00606 <font class="preprocessor">#endif</font>
+00607 <font class="preprocessor"></font><font class="preprocessor">#else </font><font class="comment">/* no yyoverflow */</font>
+00608 <font class="comment">/* Extend the stack our own way. */</font>
+00609 <font class="keywordflow">if</font> (yystacksize &gt;= <a class="code" href="cf__gramatical_8cpp.html#a48">YYMAXDEPTH</a>)
+00610 {
+00611 <a class="code" href="cf__gramatical_8cpp.html#a3">yyerror</a>(<font class="stringliteral">"parser stack overflow"</font>);
+00612 <font class="keywordflow">if</font> (yyfree_stacks)
+00613 {
+00614 free (yyss);
+00615 free (yyvs);
+00616 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00617 <font class="preprocessor"></font> free (yyls);
+00618 <font class="preprocessor">#endif</font>
+00619 <font class="preprocessor"></font> }
+00620 <font class="keywordflow">return</font> 2;
+00621 }
+00622 yystacksize *= 2;
+00623 <font class="keywordflow">if</font> (yystacksize &gt; <a class="code" href="cf__gramatical_8cpp.html#a48">YYMAXDEPTH</a>)
+00624 yystacksize = <a class="code" href="cf__gramatical_8cpp.html#a48">YYMAXDEPTH</a>;
+00625 <font class="preprocessor">#ifndef YYSTACK_USE_ALLOCA</font>
+00626 <font class="preprocessor"></font> yyfree_stacks = 1;
+00627 <font class="preprocessor">#endif</font>
+00628 <font class="preprocessor"></font> yyss = (<font class="keywordtype">short</font> *) <a class="code" href="cf__gramatical_8cpp.html#a33">YYSTACK_ALLOC</a> (yystacksize * <font class="keyword">sizeof</font> (*yyssp));
+00629 <a class="code" href="cf__gramatical_8cpp.html#a81">__yy_memcpy</a> ((<font class="keywordtype">char</font> *)yyss, (<font class="keywordtype">char</font> *)yyss1,
+00630 size * (<font class="keywordtype">unsigned</font> <font class="keywordtype">int</font>) <font class="keyword">sizeof</font> (*yyssp));
+00631 yyvs = (<a class="code" href="unionYYSTYPE.html">YYSTYPE</a> *) <a class="code" href="cf__gramatical_8cpp.html#a33">YYSTACK_ALLOC</a> (yystacksize * <font class="keyword">sizeof</font> (*yyvsp));
+00632 <a class="code" href="cf__gramatical_8cpp.html#a81">__yy_memcpy</a> ((<font class="keywordtype">char</font> *)yyvs, (<font class="keywordtype">char</font> *)yyvs1,
+00633 size * (<font class="keywordtype">unsigned</font> <font class="keywordtype">int</font>) <font class="keyword">sizeof</font> (*yyvsp));
+00634 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00635 <font class="preprocessor"></font> yyls = (YYLTYPE *) <a class="code" href="cf__gramatical_8cpp.html#a33">YYSTACK_ALLOC</a> (yystacksize * <font class="keyword">sizeof</font> (*yylsp));
+00636 <a class="code" href="cf__gramatical_8cpp.html#a81">__yy_memcpy</a> ((<font class="keywordtype">char</font> *)yyls, (<font class="keywordtype">char</font> *)yyls1,
+00637 size * (<font class="keywordtype">unsigned</font> <font class="keywordtype">int</font>) <font class="keyword">sizeof</font> (*yylsp));
+00638 <font class="preprocessor">#endif</font>
+00639 <font class="preprocessor"></font><font class="preprocessor">#endif </font><font class="comment">/* no yyoverflow */</font>
+00640
+00641 yyssp = yyss + size - 1;
+00642 yyvsp = yyvs + size - 1;
+00643 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00644 <font class="preprocessor"></font> yylsp = yyls + size - 1;
+00645 <font class="preprocessor">#endif</font>
+00646 <font class="preprocessor"></font>
+00647 <font class="preprocessor">#if YYDEBUG != 0</font>
+00648 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+00649 fprintf(stderr, <font class="stringliteral">"Stack size increased to %d\n"</font>, yystacksize);
+00650 <font class="preprocessor">#endif</font>
+00651 <font class="preprocessor"></font>
+00652 <font class="keywordflow">if</font> (yyssp &gt;= yyss + yystacksize - 1)
+00653 <a class="code" href="cf__gramatical_8cpp.html#a39">YYABORT</a>;
+00654 }
+00655
+00656 <font class="preprocessor">#if YYDEBUG != 0</font>
+00657 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+00658 fprintf(stderr, <font class="stringliteral">"Entering state %d\n"</font>, yystate);
+00659 <font class="preprocessor">#endif</font>
+00660 <font class="preprocessor"></font>
+00661 <font class="keywordflow">goto</font> yybackup;
+00662 yybackup:
+00663
+00664 <font class="comment">/* Do appropriate processing given the current state. */</font>
+00665 <font class="comment">/* Read a lookahead token if we need one and don't already have one. */</font>
+00666 <font class="comment">/* yyresume: */</font>
+00667
+00668 <font class="comment">/* First try to decide what to do without reference to lookahead token. */</font>
+00669
+00670 yyn = <a class="code" href="cf__gramatical_8cpp.html#a62">yypact</a>[yystate];
+00671 <font class="keywordflow">if</font> (yyn == <a class="code" href="cf__gramatical_8cpp.html#a29">YYFLAG</a>)
+00672 <font class="keywordflow">goto</font> yydefault;
+00673
+00674 <font class="comment">/* Not known =&gt; get a lookahead token if don't already have one. */</font>
+00675
+00676 <font class="comment">/* yychar is either YYEMPTY or YYEOF</font>
+00677 <font class="comment"> or a valid token in external form. */</font>
+00678
+00679 <font class="keywordflow">if</font> (<a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a> == <a class="code" href="cf__gramatical_8cpp.html#a36">YYEMPTY</a>)
+00680 {
+00681 <font class="preprocessor">#if YYDEBUG != 0</font>
+00682 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+00683 fprintf(stderr, <font class="stringliteral">"Reading a token: "</font>);
+00684 <font class="preprocessor">#endif</font>
+00685 <font class="preprocessor"></font> <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a> = <a class="code" href="cf__gramatical_8cpp.html#a46">YYLEX</a>;
+00686 }
+00687
+00688 <font class="comment">/* Convert token to internal form (in yychar1) for indexing tables with */</font>
+00689
+00690 <font class="keywordflow">if</font> (<a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a> &lt;= 0) <font class="comment">/* This means end of input. */</font>
+00691 {
+00692 yychar1 = 0;
+00693 <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a> = <a class="code" href="cf__gramatical_8cpp.html#a37">YYEOF</a>; <font class="comment">/* Don't call YYLEX any more */</font>
+00694
+00695 <font class="preprocessor">#if YYDEBUG != 0</font>
+00696 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+00697 fprintf(stderr, <font class="stringliteral">"Now at end of input.\n"</font>);
+00698 <font class="preprocessor">#endif</font>
+00699 <font class="preprocessor"></font> }
+00700 <font class="keywordflow">else</font>
+00701 {
+00702 yychar1 = <a class="code" href="ytable_8cpp.html#a100">YYTRANSLATE</a>(<a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a>);
+00703
+00704 <font class="preprocessor">#if YYDEBUG != 0</font>
+00705 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+00706 {
+00707 fprintf (stderr, <font class="stringliteral">"Next token is %d (%s"</font>, <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a>, yytname[yychar1]);
+00708 <font class="comment">/* Give the individual parser a way to print the precise meaning</font>
+00709 <font class="comment"> of a token, for further debugging info. */</font>
+00710 <font class="preprocessor">#ifdef YYPRINT</font>
+00711 <font class="preprocessor"></font> YYPRINT (stderr, <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a>, yylval);
+00712 <font class="preprocessor">#endif</font>
+00713 <font class="preprocessor"></font> fprintf (stderr, <font class="stringliteral">")\n"</font>);
+00714 }
+00715 <font class="preprocessor">#endif</font>
+00716 <font class="preprocessor"></font> }
+00717
+00718 yyn += yychar1;
+00719 <font class="keywordflow">if</font> (yyn &lt; 0 || yyn &gt; <a class="code" href="cf__gramatical_8cpp.html#a32">YYLAST</a> || <a class="code" href="cf__gramatical_8cpp.html#a65">yycheck</a>[yyn] != yychar1)
+00720 <font class="keywordflow">goto</font> yydefault;
+00721
+00722 yyn = <a class="code" href="cf__gramatical_8cpp.html#a64">yytable</a>[yyn];
+00723
+00724 <font class="comment">/* yyn is what to do for this token type in this state.</font>
+00725 <font class="comment"> Negative =&gt; reduce, -yyn is rule number.</font>
+00726 <font class="comment"> Positive =&gt; shift, yyn is new state.</font>
+00727 <font class="comment"> New state is final state =&gt; don't bother to shift,</font>
+00728 <font class="comment"> just return success.</font>
+00729 <font class="comment"> 0, or most negative number =&gt; error. */</font>
+00730
+00731 <font class="keywordflow">if</font> (yyn &lt; 0)
+00732 {
+00733 <font class="keywordflow">if</font> (yyn == <a class="code" href="cf__gramatical_8cpp.html#a29">YYFLAG</a>)
+00734 <font class="keywordflow">goto</font> yyerrlab;
+00735 yyn = -yyn;
+00736 <font class="keywordflow">goto</font> yyreduce;
+00737 }
+00738 <font class="keywordflow">else</font> <font class="keywordflow">if</font> (yyn == 0)
+00739 <font class="keywordflow">goto</font> yyerrlab;
+00740
+00741 <font class="keywordflow">if</font> (yyn == <a class="code" href="cf__gramatical_8cpp.html#a28">YYFINAL</a>)
+00742 <a class="code" href="cf__gramatical_8cpp.html#a38">YYACCEPT</a>;
+00743
+00744 <font class="comment">/* Shift the lookahead token. */</font>
+00745
+00746 <font class="preprocessor">#if YYDEBUG != 0</font>
+00747 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+00748 fprintf(stderr, <font class="stringliteral">"Shifting token %d (%s), "</font>, <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a>, yytname[yychar1]);
+00749 <font class="preprocessor">#endif</font>
+00750 <font class="preprocessor"></font>
+00751 <font class="comment">/* Discard the token being shifted unless it is eof. */</font>
+00752 <font class="keywordflow">if</font> (<a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a> != <a class="code" href="cf__gramatical_8cpp.html#a37">YYEOF</a>)
+00753 <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a> = <a class="code" href="cf__gramatical_8cpp.html#a36">YYEMPTY</a>;
+00754
+00755 *++yyvsp = yylval;
+00756 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+00757 <font class="preprocessor"></font> *++yylsp = yylloc;
+00758 <font class="preprocessor">#endif</font>
+00759 <font class="preprocessor"></font>
+00760 <font class="comment">/* count tokens shifted since error; after three, turn off error status. */</font>
+00761 <font class="keywordflow">if</font> (yyerrstatus) yyerrstatus--;
+00762
+00763 yystate = yyn;
+00764 <font class="keywordflow">goto</font> yynewstate;
+00765
+00766 <font class="comment">/* Do the default action for the current state. */</font>
+00767 yydefault:
+00768
+00769 yyn = <a class="code" href="cf__gramatical_8cpp.html#a60">yydefact</a>[yystate];
+00770 <font class="keywordflow">if</font> (yyn == 0)
+00771 <font class="keywordflow">goto</font> yyerrlab;
+00772
+00773 <font class="comment">/* Do a reduction. yyn is the number of a rule to reduce with. */</font>
+00774 yyreduce:
+00775 yylen = <a class="code" href="cf__gramatical_8cpp.html#a59">yyr2</a>[yyn];
+00776 <font class="keywordflow">if</font> (yylen &gt; 0)
+00777 yyval = yyvsp[1-yylen]; <font class="comment">/* implement default value of the action */</font>
+00778
+00779 <font class="preprocessor">#if YYDEBUG != 0</font>
+00780 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+00781 {
+00782 <font class="keywordtype">int</font> i;
+00783
+00784 fprintf (stderr, <font class="stringliteral">"Reducing via rule %d (line %d), "</font>,
+00785 yyn, yyrline[yyn]);
+00786
+00787 <font class="comment">/* Print the symbols being reduced, and their result. */</font>
+00788 <font class="keywordflow">for</font> (i = yyprhs[yyn]; yyrhs[i] &gt; 0; i++)
+00789 fprintf (stderr, <font class="stringliteral">"%s "</font>, yytname[yyrhs[i]]);
+00790 fprintf (stderr, <font class="stringliteral">" -&gt; %s\n"</font>, yytname[<a class="code" href="cf__gramatical_8cpp.html#a58">yyr1</a>[yyn]]);
+00791 }
+00792 <font class="preprocessor">#endif</font>
+00793 <font class="preprocessor"></font>
+00794
+00795 <font class="keywordflow">switch</font> (yyn) {
+00796
+00797 <font class="keywordflow">case</font> 1:
+00798 <font class="preprocessor">#line 100 "cf_gramatical.yxx"</font>
+00799 <font class="preprocessor"></font>{ <a class="code" href="cf__gramatical_8cpp.html#a55">cf_CurrentLine</a> = 1; <a class="code" href="cf__gramatical_8cpp.html#a52">cf_Ignore</a> = <font class="keyword">false</font>; ;
+00800 <font class="keywordflow">break</font>;}
+00801 <font class="keywordflow">case</font> 3:
+00802 <font class="preprocessor">#line 100 "cf_gramatical.yxx"</font>
+00803 <font class="preprocessor"></font>{ ;
+00804 <font class="keywordflow">break</font>;}
+00805 <font class="keywordflow">case</font> 4:
+00806 <font class="preprocessor">#line 103 "cf_gramatical.yxx"</font>
+00807 <font class="preprocessor"></font>{ ;
+00808 <font class="keywordflow">break</font>;}
+00809 <font class="keywordflow">case</font> 5:
+00810 <font class="preprocessor">#line 104 "cf_gramatical.yxx"</font>
+00811 <font class="preprocessor"></font>{ ;
+00812 <font class="keywordflow">break</font>;}
+00813 <font class="keywordflow">case</font> 6:
+00814 <font class="preprocessor">#line 108 "cf_gramatical.yxx"</font>
+00815 <font class="preprocessor"></font>{
+00816 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">" (VARIABLE="</font>);
+00817 <a class="code" href="cf__gramatical_8cpp.html#a78">cf_print</a> (yyvsp[-3].Val);
+00818 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"), (VALUE="</font>);
+00819 <a class="code" href="cf__gramatical_8cpp.html#a78">cf_print</a> (yyvsp[-1].Val);
+00820 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">")\n"</font>);
+00821 <font class="keywordtype">int</font> i;
+00822 <font class="comment">// on recherche l'existence de la variable</font>
+00823 <font class="keywordflow">for</font>(i = 0; i &lt; (int)((*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM))).size()); i++)
+00824 {
+00825 <font class="keywordflow">if</font> ((*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i].Name == yyvsp[-3].<a class="code" href="unionYYSTYPE.html#m0">Val</a>.<a class="code" href="structcf__value.html#m3">String</a>)
+00826 {
+00827 <font class="keywordflow">if</font> (cf_OverwriteExistingVariable)
+00828 {
+00829 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"Variable '%s' existe deja, ecrasement\n"</font>, yyvsp[-3].Val.String);
+00830 }
+00831 <font class="keywordflow">break</font>;
+00832 }
+00833 }
+00834 <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html">NLMISC::CConfigFile::CVar</a> Var;
+00835 Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_3">Comp</a> = <font class="keyword">false</font>;
+00836 Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_7">Callback</a> = NULL;
+00837 <font class="keywordflow">if</font> (cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_3">Comp</a>) Var = cf_CurrentVar;
+00838 <font class="keywordflow">else</font> <a class="code" href="cf__gramatical_8cpp.html#a79">cf_setVar</a> (Var, yyvsp[-1].Val);
+00839 Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_1">Name</a> = yyvsp[-3].<a class="code" href="unionYYSTYPE.html#m0">Val</a>.<a class="code" href="structcf__value.html#m3">String</a>;
+00840 <font class="keywordflow">if</font> (i == (int)((*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM))).size ()))
+00841 {
+00842 <font class="comment">// nouvelle variable</font>
+00843 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a> (<font class="stringliteral">"yacc: new assign var '%s'\n"</font>, yyvsp[-3].Val.String);
+00844 (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM))).push_back (Var);
+00845 }
+00846 <font class="keywordflow">else</font> <font class="keywordflow">if</font> (cf_OverwriteExistingVariable)
+00847 {
+00848 <font class="comment">// reaffectation d'une variable</font>
+00849 Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_7">Callback</a> = (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i].Callback;
+00850 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a> (<font class="stringliteral">"yacc: reassign var '%s'\n"</font>, yyvsp[-3].Val.String);
+00851 <font class="keywordflow">if</font> (Var != (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i] &amp;&amp; Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_7">Callback</a> != NULL)
+00852 (Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_7">Callback</a>)(Var);
+00853 (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i] = Var;
+00854 }
+00855 <font class="keywordflow">else</font>
+00856 {
+00857 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a> (<font class="stringliteral">"yacc: don't reassign var '%s' because cf_OverwriteExistingVariable is false\n"</font>, yyvsp[-3].Val.String);
+00858 }
+00859
+00860 cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_4">IntValues</a>.clear ();
+00861 cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_5">RealValues</a>.clear ();
+00862 cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_6">StrValues</a>.clear ();
+00863 cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_3">Comp</a> = <font class="keyword">false</font>;
+00864 cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_2">Type</a> = <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s0">NLMISC::CConfigFile::CVar::T_UNKNOWN</a>;
+00865 ;
+00866 <font class="keywordflow">break</font>;}
+00867 <font class="keywordflow">case</font> 7:
+00868 <font class="preprocessor">#line 162 "cf_gramatical.yxx"</font>
+00869 <font class="preprocessor"></font>{
+00870 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">" (VARIABLE+="</font>);
+00871 <a class="code" href="cf__gramatical_8cpp.html#a78">cf_print</a> (yyvsp[-3].Val);
+00872 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"), (VALUE="</font>);
+00873 <a class="code" href="cf__gramatical_8cpp.html#a78">cf_print</a> (yyvsp[-1].Val);
+00874 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">")\n"</font>);
+00875 <font class="keywordtype">int</font> i;
+00876 <font class="comment">// on recherche l'existence de la variable</font>
+00877 <font class="keywordflow">for</font>(i = 0; i &lt; (int)((*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM))).size()); i++)
+00878 {
+00879 <font class="keywordflow">if</font> ((*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i].Name == yyvsp[-3].<a class="code" href="unionYYSTYPE.html#m0">Val</a>.<a class="code" href="structcf__value.html#m3">String</a>)
+00880 {
+00881 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"Variable '%s' existe deja, ajout\n"</font>, yyvsp[-3].Val.String);
+00882 <font class="keywordflow">break</font>;
+00883 }
+00884 }
+00885 <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html">NLMISC::CConfigFile::CVar</a> Var;
+00886 Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_3">Comp</a> = <font class="keyword">false</font>;
+00887 Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_7">Callback</a> = NULL;
+00888 <font class="keywordflow">if</font> (cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_3">Comp</a>) Var = cf_CurrentVar;
+00889 <font class="keywordflow">else</font> <a class="code" href="cf__gramatical_8cpp.html#a79">cf_setVar</a> (Var, yyvsp[-1].Val);
+00890 Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_1">Name</a> = yyvsp[-3].<a class="code" href="unionYYSTYPE.html#m0">Val</a>.<a class="code" href="structcf__value.html#m3">String</a>;
+00891 <font class="keywordflow">if</font> (i == (int)((*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM))).size ()))
+00892 {
+00893 <font class="comment">// nouvelle variable</font>
+00894 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a> (<font class="stringliteral">"yacc: new add assign var '%s'\n"</font>, yyvsp[-3].Val.String);
+00895 (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM))).push_back (Var);
+00896 }
+00897 <font class="keywordflow">else</font>
+00898 {
+00899 <font class="comment">// reaffectation d'une variable</font>
+00900 Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_7">Callback</a> = (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i].Callback;
+00901 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a> (<font class="stringliteral">"yacc: add assign var '%s'\n"</font>, yyvsp[-3].Val.String);
+00902 Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#a3">add</a> ((*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(<a class="code" href="cf__gramatical_8cpp.html#a24">YYPARSE_PARAM</a>)))[i]);
+00903 <font class="keywordflow">if</font> (Var != (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i] &amp;&amp; Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_7">Callback</a> != NULL)
+00904 (Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_7">Callback</a>)(Var);
+00905 (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i] = Var;
+00906 }
+00907
+00908 cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_4">IntValues</a>.clear ();
+00909 cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_5">RealValues</a>.clear ();
+00910 cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_6">StrValues</a>.clear ();
+00911 cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_3">Comp</a> = <font class="keyword">false</font>;
+00912 cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_2">Type</a> = <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s0">NLMISC::CConfigFile::CVar::T_UNKNOWN</a>;
+00913 ;
+00914 <font class="keywordflow">break</font>;}
+00915 <font class="keywordflow">case</font> 8:
+00916 <font class="preprocessor">#line 209 "cf_gramatical.yxx"</font>
+00917 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yyvsp[0].<a class="code" href="unionYYSTYPE.html#m0">Val</a>; cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_3">Comp</a> = <font class="keyword">false</font>; <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"false\n"</font>); ;
+00918 <font class="keywordflow">break</font>;}
+00919 <font class="keywordflow">case</font> 9:
+00920 <font class="preprocessor">#line 210 "cf_gramatical.yxx"</font>
+00921 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yyvsp[-1].<a class="code" href="unionYYSTYPE.html#m0">Val</a>; cf_CurrentVar.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_3">Comp</a> = <font class="keyword">true</font>; <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"true\n"</font>); ;
+00922 <font class="keywordflow">break</font>;}
+00923 <font class="keywordflow">case</font> 10:
+00924 <font class="preprocessor">#line 213 "cf_gramatical.yxx"</font>
+00925 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yyvsp[0].<a class="code" href="unionYYSTYPE.html#m0">Val</a>; <font class="comment">/*cf_CurrentVar.Type = $1.Type;*/</font> <a class="code" href="cf__gramatical_8cpp.html#a79">cf_setVar</a> (cf_CurrentVar, yyvsp[0].Val); ;
+00926 <font class="keywordflow">break</font>;}
+00927 <font class="keywordflow">case</font> 11:
+00928 <font class="preprocessor">#line 214 "cf_gramatical.yxx"</font>
+00929 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yyvsp[0].<a class="code" href="unionYYSTYPE.html#m0">Val</a>; <font class="comment">/*cf_CurrentVar.Type = $1.Type;*/</font> <a class="code" href="cf__gramatical_8cpp.html#a79">cf_setVar</a> (cf_CurrentVar, yyvsp[0].Val); ;
+00930 <font class="keywordflow">break</font>;}
+00931 <font class="keywordflow">case</font> 13:
+00932 <font class="preprocessor">#line 215 "cf_gramatical.yxx"</font>
+00933 <font class="preprocessor"></font>{ ;
+00934 <font class="keywordflow">break</font>;}
+00935 <font class="keywordflow">case</font> 14:
+00936 <font class="preprocessor">#line 218 "cf_gramatical.yxx"</font>
+00937 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yyvsp[0].<a class="code" href="unionYYSTYPE.html#m0">Val</a>; ;
+00938 <font class="keywordflow">break</font>;}
+00939 <font class="keywordflow">case</font> 15:
+00940 <font class="preprocessor">#line 219 "cf_gramatical.yxx"</font>
+00941 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = <a class="code" href="cf__gramatical_8cpp.html#a77">cf_op</a>(yyvsp[-2].Val, yyvsp[0].Val, <a class="code" href="cf__gramatical_8cpp.html#a82a71">OP_PLUS</a>); ;
+00942 <font class="keywordflow">break</font>;}
+00943 <font class="keywordflow">case</font> 16:
+00944 <font class="preprocessor">#line 220 "cf_gramatical.yxx"</font>
+00945 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = <a class="code" href="cf__gramatical_8cpp.html#a77">cf_op</a>(yyvsp[-2].Val, yyvsp[0].Val, <a class="code" href="cf__gramatical_8cpp.html#a82a72">OP_MINUS</a>); ;
+00946 <font class="keywordflow">break</font>;}
+00947 <font class="keywordflow">case</font> 17:
+00948 <font class="preprocessor">#line 223 "cf_gramatical.yxx"</font>
+00949 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yyvsp[0].<a class="code" href="unionYYSTYPE.html#m0">Val</a>; ;
+00950 <font class="keywordflow">break</font>;}
+00951 <font class="keywordflow">case</font> 18:
+00952 <font class="preprocessor">#line 224 "cf_gramatical.yxx"</font>
+00953 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = <a class="code" href="cf__gramatical_8cpp.html#a77">cf_op</a>(yyvsp[-2].Val, yyvsp[0].Val, <a class="code" href="cf__gramatical_8cpp.html#a82a73">OP_MULT</a>); ;
+00954 <font class="keywordflow">break</font>;}
+00955 <font class="keywordflow">case</font> 19:
+00956 <font class="preprocessor">#line 225 "cf_gramatical.yxx"</font>
+00957 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = <a class="code" href="cf__gramatical_8cpp.html#a77">cf_op</a> (yyvsp[-2].Val, yyvsp[0].Val, <a class="code" href="cf__gramatical_8cpp.html#a82a74">OP_DIVIDE</a>); ;
+00958 <font class="keywordflow">break</font>;}
+00959 <font class="keywordflow">case</font> 20:
+00960 <font class="preprocessor">#line 228 "cf_gramatical.yxx"</font>
+00961 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yyvsp[0].<a class="code" href="unionYYSTYPE.html#m0">Val</a>; ;
+00962 <font class="keywordflow">break</font>;}
+00963 <font class="keywordflow">case</font> 21:
+00964 <font class="preprocessor">#line 229 "cf_gramatical.yxx"</font>
+00965 <font class="preprocessor"></font>{ <a class="code" href="structcf__value.html">cf_value</a> <a class="code" href="driver__opengl__extension__def_8h.html#a368">v</a>; v.<a class="code" href="structcf__value.html#m0">Type</a>=<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>; <font class="comment">/* just to avoid a warning, I affect 'v' with a dummy value */</font> yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = <a class="code" href="cf__gramatical_8cpp.html#a77">cf_op</a>(yyvsp[0].Val,v,<a class="code" href="cf__gramatical_8cpp.html#a82a75">OP_NEG</a>); ;
+00966 <font class="keywordflow">break</font>;}
+00967 <font class="keywordflow">case</font> 22:
+00968 <font class="preprocessor">#line 230 "cf_gramatical.yxx"</font>
+00969 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yyvsp[-1].<a class="code" href="unionYYSTYPE.html#m0">Val</a>; ;
+00970 <font class="keywordflow">break</font>;}
+00971 <font class="keywordflow">case</font> 23:
+00972 <font class="preprocessor">#line 231 "cf_gramatical.yxx"</font>
+00973 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yylval.<a class="code" href="unionYYSTYPE.html#m0">Val</a>; ;
+00974 <font class="keywordflow">break</font>;}
+00975 <font class="keywordflow">case</font> 24:
+00976 <font class="preprocessor">#line 232 "cf_gramatical.yxx"</font>
+00977 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yylval.<a class="code" href="unionYYSTYPE.html#m0">Val</a>; ;
+00978 <font class="keywordflow">break</font>;}
+00979 <font class="keywordflow">case</font> 25:
+00980 <font class="preprocessor">#line 233 "cf_gramatical.yxx"</font>
+00981 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yylval.<a class="code" href="unionYYSTYPE.html#m0">Val</a>; ;
+00982 <font class="keywordflow">break</font>;}
+00983 <font class="keywordflow">case</font> 26:
+00984 <font class="preprocessor">#line 234 "cf_gramatical.yxx"</font>
+00985 <font class="preprocessor"></font>{ yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = yyvsp[0].<a class="code" href="unionYYSTYPE.html#m0">Val</a>; ;
+00986 <font class="keywordflow">break</font>;}
+00987 <font class="keywordflow">case</font> 27:
+00988 <font class="preprocessor">#line 238 "cf_gramatical.yxx"</font>
+00989 <font class="preprocessor"></font>{
+00990 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"yacc: cont\n"</font>);
+00991 <font class="keywordtype">bool</font> ok=<font class="keyword">false</font>;
+00992 <font class="keywordtype">int</font> i;
+00993 <font class="keywordflow">for</font>(i = 0; i &lt; (int)((*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM))).size()); i++)
+00994 {
+00995 <font class="keywordflow">if</font> ((*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i].Name == yyvsp[0].<a class="code" href="unionYYSTYPE.html#m0">Val</a>.<a class="code" href="structcf__value.html#m3">String</a>)
+00996 {
+00997 ok = <font class="keyword">true</font>;
+00998 <font class="keywordflow">break</font>;
+00999 }
+01000 }
+01001 <font class="keywordflow">if</font> (ok)
+01002 {
+01003 <a class="code" href="structcf__value.html">cf_value</a> Var;
+01004 Var.<a class="code" href="structcf__value.html#m0">Type</a> = (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i].Type;
+01005 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"vart %d\n"</font>, Var.<a class="code" href="structcf__value.html#m0">Type</a>);
+01006 <font class="keywordflow">switch</font> (Var.<a class="code" href="structcf__value.html#m0">Type</a>)
+01007 {
+01008 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: Var.<a class="code" href="structcf__value.html#m1">Int</a> = (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i].IntValues[0]; <font class="keywordflow">break</font>;
+01009 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: Var.<a class="code" href="structcf__value.html#m2">Real</a> = (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(YYPARSE_PARAM)))[i].RealValues[0]; <font class="keywordflow">break</font>;
+01010 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: strcpy (Var.<a class="code" href="structcf__value.html#m3">String</a>, (*((vector&lt;NLMISC::CConfigFile::CVar&gt;*)(<a class="code" href="cf__gramatical_8cpp.html#a24">YYPARSE_PARAM</a>)))[i].StrValues[0].c_str()); <font class="keywordflow">break</font>;
+01011 <font class="keywordflow">default</font>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"*** CAN T DO THAT!!!\n"</font>); <font class="keywordflow">break</font>;
+01012 }
+01013 yyval.<a class="code" href="unionYYSTYPE.html#m0">Val</a> = Var;
+01014 }
+01015 <font class="keywordflow">else</font>
+01016 {
+01017 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"var existe pas\n"</font>);
+01018 }
+01019 ;
+01020 <font class="keywordflow">break</font>;}
+01021 }
+01022 <font class="comment">/* the action file gets copied in in place of this dollarsign */</font>
+01023 <font class="preprocessor">#line 543 "cfbison.simple"</font>
+01024 <font class="preprocessor"></font>
+01025 yyvsp -= yylen;
+01026 yyssp -= yylen;
+01027 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+01028 <font class="preprocessor"></font> yylsp -= yylen;
+01029 <font class="preprocessor">#endif</font>
+01030 <font class="preprocessor"></font>
+01031 <font class="preprocessor">#if YYDEBUG != 0</font>
+01032 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+01033 {
+01034 <font class="keywordtype">short</font> *ssp1 = yyss - 1;
+01035 fprintf (stderr, <font class="stringliteral">"state stack now"</font>);
+01036 <font class="keywordflow">while</font> (ssp1 != yyssp)
+01037 fprintf (stderr, <font class="stringliteral">" %d"</font>, *++ssp1);
+01038 fprintf (stderr, <font class="stringliteral">"\n"</font>);
+01039 }
+01040 <font class="preprocessor">#endif</font>
+01041 <font class="preprocessor"></font>
+01042 *++yyvsp = yyval;
+01043
+01044 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+01045 <font class="preprocessor"></font> yylsp++;
+01046 <font class="keywordflow">if</font> (yylen == 0)
+01047 {
+01048 yylsp-&gt;first_line = yylloc.first_line;
+01049 yylsp-&gt;first_column = yylloc.first_column;
+01050 yylsp-&gt;last_line = (yylsp-1)-&gt;last_line;
+01051 yylsp-&gt;last_column = (yylsp-1)-&gt;last_column;
+01052 yylsp-&gt;text = 0;
+01053 }
+01054 <font class="keywordflow">else</font>
+01055 {
+01056 yylsp-&gt;last_line = (yylsp+yylen-1)-&gt;last_line;
+01057 yylsp-&gt;last_column = (yylsp+yylen-1)-&gt;last_column;
+01058 }
+01059 <font class="preprocessor">#endif</font>
+01060 <font class="preprocessor"></font>
+01061 <font class="comment">/* Now "shift" the result of the reduction.</font>
+01062 <font class="comment"> Determine what state that goes to,</font>
+01063 <font class="comment"> based on the state we popped back to</font>
+01064 <font class="comment"> and the rule number reduced by. */</font>
+01065
+01066 yyn = <a class="code" href="cf__gramatical_8cpp.html#a58">yyr1</a>[yyn];
+01067
+01068 yystate = <a class="code" href="cf__gramatical_8cpp.html#a63">yypgoto</a>[yyn - <a class="code" href="cf__gramatical_8cpp.html#a30">YYNTBASE</a>] + *yyssp;
+01069 <font class="keywordflow">if</font> (yystate &gt;= 0 &amp;&amp; yystate &lt;= <a class="code" href="cf__gramatical_8cpp.html#a32">YYLAST</a> &amp;&amp; <a class="code" href="cf__gramatical_8cpp.html#a65">yycheck</a>[yystate] == *yyssp)
+01070 yystate = <a class="code" href="cf__gramatical_8cpp.html#a64">yytable</a>[yystate];
+01071 <font class="keywordflow">else</font>
+01072 yystate = <a class="code" href="cf__gramatical_8cpp.html#a61">yydefgoto</a>[yyn - <a class="code" href="cf__gramatical_8cpp.html#a30">YYNTBASE</a>];
+01073
+01074 <font class="keywordflow">goto</font> yynewstate;
+01075
+01076 yyerrlab: <font class="comment">/* here on detecting error */</font>
+01077
+01078 <font class="keywordflow">if</font> (! yyerrstatus)
+01079 <font class="comment">/* If not already recovering from an error, report this error. */</font>
+01080 {
+01081 ++<a class="code" href="cf__gramatical_8cpp.html#a7">yynerrs</a>;
+01082
+01083 <font class="preprocessor">#ifdef YYERROR_VERBOSE</font>
+01084 <font class="preprocessor"></font> yyn = <a class="code" href="cf__gramatical_8cpp.html#a62">yypact</a>[yystate];
+01085
+01086 <font class="keywordflow">if</font> (yyn &gt; <a class="code" href="cf__gramatical_8cpp.html#a29">YYFLAG</a> &amp;&amp; yyn &lt; <a class="code" href="cf__gramatical_8cpp.html#a32">YYLAST</a>)
+01087 {
+01088 <font class="keywordtype">int</font> size = 0;
+01089 <font class="keywordtype">char</font> *msg;
+01090 <font class="keywordtype">int</font> <a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a>, <a class="code" href="cf__gramatical_8cpp.html#a70">count</a>;
+01091
+01092 <a class="code" href="cf__gramatical_8cpp.html#a70">count</a> = 0;
+01093 <font class="comment">/* Start X at -yyn if nec to avoid negative indexes in yycheck. */</font>
+01094 <font class="keywordflow">for</font> (<a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a> = (yyn &lt; 0 ? -yyn : 0);
+01095 <a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a> &lt; (<font class="keyword">sizeof</font>(yytname) / <font class="keyword">sizeof</font>(<font class="keywordtype">char</font> *)); <a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a>++)
+01096 <font class="keywordflow">if</font> (<a class="code" href="cf__gramatical_8cpp.html#a65">yycheck</a>[<a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a> + yyn] == <a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a>)
+01097 size += strlen(yytname[<a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a>]) + 15, <a class="code" href="cf__gramatical_8cpp.html#a70">count</a>++;
+01098 msg = (<font class="keywordtype">char</font> *) malloc(size + 15);
+01099 <font class="keywordflow">if</font> (msg != 0)
+01100 {
+01101 strcpy(msg, <font class="stringliteral">"parse error"</font>);
+01102
+01103 <font class="keywordflow">if</font> (<a class="code" href="cf__gramatical_8cpp.html#a70">count</a> &lt; 5)
+01104 {
+01105 <a class="code" href="cf__gramatical_8cpp.html#a70">count</a> = 0;
+01106 <font class="keywordflow">for</font> (<a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a> = (yyn &lt; 0 ? -yyn : 0);
+01107 <a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a> &lt; (<font class="keyword">sizeof</font>(yytname) / <font class="keyword">sizeof</font>(<font class="keywordtype">char</font> *)); <a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a>++)
+01108 <font class="keywordflow">if</font> (<a class="code" href="cf__gramatical_8cpp.html#a65">yycheck</a>[<a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a> + yyn] == <a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a>)
+01109 {
+01110 strcat(msg, <a class="code" href="cf__gramatical_8cpp.html#a70">count</a> == 0 ? <font class="stringliteral">", expecting `"</font> : <font class="stringliteral">" or `"</font>);
+01111 strcat(msg, yytname[<a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a>]);
+01112 strcat(msg, <font class="stringliteral">"'"</font>);
+01113 <a class="code" href="cf__gramatical_8cpp.html#a70">count</a>++;
+01114 }
+01115 }
+01116 <a class="code" href="cf__gramatical_8cpp.html#a3">yyerror</a>(msg);
+01117 free(msg);
+01118 }
+01119 <font class="keywordflow">else</font>
+01120 <a class="code" href="cf__gramatical_8cpp.html#a3">yyerror</a> (<font class="stringliteral">"parse error; also virtual memory exceeded"</font>);
+01121 }
+01122 <font class="keywordflow">else</font>
+01123 <font class="preprocessor">#endif </font><font class="comment">/* YYERROR_VERBOSE */</font>
+01124 <a class="code" href="cf__gramatical_8cpp.html#a3">yyerror</a>(<font class="stringliteral">"parse error"</font>);
+01125 }
+01126
+01127 <font class="keywordflow">goto</font> yyerrlab1;
+01128 yyerrlab1: <font class="comment">/* here on error raised explicitly by an action */</font>
+01129
+01130 <font class="keywordflow">if</font> (yyerrstatus == 3)
+01131 {
+01132 <font class="comment">/* if just tried and failed to reuse lookahead token after an error, discard it. */</font>
+01133
+01134 <font class="comment">/* return failure if at end of input */</font>
+01135 <font class="keywordflow">if</font> (<a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a> == <a class="code" href="cf__gramatical_8cpp.html#a37">YYEOF</a>)
+01136 <a class="code" href="cf__gramatical_8cpp.html#a39">YYABORT</a>;
+01137
+01138 <font class="preprocessor">#if YYDEBUG != 0</font>
+01139 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+01140 fprintf(stderr, <font class="stringliteral">"Discarding token %d (%s).\n"</font>, <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a>, yytname[yychar1]);
+01141 <font class="preprocessor">#endif</font>
+01142 <font class="preprocessor"></font>
+01143 <a class="code" href="cf__gramatical_8cpp.html#a5">yychar</a> = <a class="code" href="cf__gramatical_8cpp.html#a36">YYEMPTY</a>;
+01144 }
+01145
+01146 <font class="comment">/* Else will try to reuse lookahead token</font>
+01147 <font class="comment"> after shifting the error token. */</font>
+01148
+01149 yyerrstatus = 3; <font class="comment">/* Each real token shifted decrements this */</font>
+01150
+01151 <font class="keywordflow">goto</font> yyerrhandle;
+01152
+01153 yyerrdefault: <font class="comment">/* current state does not do anything special for the error token. */</font>
+01154
+01155 <font class="preprocessor">#if 0</font>
+01156 <font class="preprocessor"></font> <font class="comment">/* This is wrong; only states that explicitly want error tokens</font>
+01157 <font class="comment"> should shift them. */</font>
+01158 yyn = <a class="code" href="cf__gramatical_8cpp.html#a60">yydefact</a>[yystate]; <font class="comment">/* If its default is to accept any token, ok. Otherwise pop it.*/</font>
+01159 <font class="keywordflow">if</font> (yyn) <font class="keywordflow">goto</font> yydefault;
+01160 <font class="preprocessor">#endif</font>
+01161 <font class="preprocessor"></font>
+01162 yyerrpop: <font class="comment">/* pop the current state because it cannot handle the error token */</font>
+01163
+01164 <font class="keywordflow">if</font> (yyssp == yyss) <a class="code" href="cf__gramatical_8cpp.html#a39">YYABORT</a>;
+01165 yyvsp--;
+01166 yystate = *--yyssp;
+01167 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+01168 <font class="preprocessor"></font> yylsp--;
+01169 <font class="preprocessor">#endif</font>
+01170 <font class="preprocessor"></font>
+01171 <font class="preprocessor">#if YYDEBUG != 0</font>
+01172 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+01173 {
+01174 <font class="keywordtype">short</font> *ssp1 = yyss - 1;
+01175 fprintf (stderr, <font class="stringliteral">"Error: state stack now"</font>);
+01176 <font class="keywordflow">while</font> (ssp1 != yyssp)
+01177 fprintf (stderr, <font class="stringliteral">" %d"</font>, *++ssp1);
+01178 fprintf (stderr, <font class="stringliteral">"\n"</font>);
+01179 }
+01180 <font class="preprocessor">#endif</font>
+01181 <font class="preprocessor"></font>
+01182 yyerrhandle:
+01183
+01184 yyn = <a class="code" href="cf__gramatical_8cpp.html#a62">yypact</a>[yystate];
+01185 <font class="keywordflow">if</font> (yyn == <a class="code" href="cf__gramatical_8cpp.html#a29">YYFLAG</a>)
+01186 <font class="keywordflow">goto</font> yyerrdefault;
+01187
+01188 yyn += <a class="code" href="cf__gramatical_8cpp.html#a44">YYTERROR</a>;
+01189 <font class="keywordflow">if</font> (yyn &lt; 0 || yyn &gt; <a class="code" href="cf__gramatical_8cpp.html#a32">YYLAST</a> || <a class="code" href="cf__gramatical_8cpp.html#a65">yycheck</a>[yyn] != <a class="code" href="cf__gramatical_8cpp.html#a44">YYTERROR</a>)
+01190 <font class="keywordflow">goto</font> yyerrdefault;
+01191
+01192 yyn = <a class="code" href="cf__gramatical_8cpp.html#a64">yytable</a>[yyn];
+01193 <font class="keywordflow">if</font> (yyn &lt; 0)
+01194 {
+01195 <font class="keywordflow">if</font> (yyn == <a class="code" href="cf__gramatical_8cpp.html#a29">YYFLAG</a>)
+01196 <font class="keywordflow">goto</font> yyerrpop;
+01197 yyn = -yyn;
+01198 <font class="keywordflow">goto</font> yyreduce;
+01199 }
+01200 <font class="keywordflow">else</font> <font class="keywordflow">if</font> (yyn == 0)
+01201 <font class="keywordflow">goto</font> yyerrpop;
+01202
+01203 <font class="keywordflow">if</font> (yyn == <a class="code" href="cf__gramatical_8cpp.html#a28">YYFINAL</a>)
+01204 <a class="code" href="cf__gramatical_8cpp.html#a38">YYACCEPT</a>;
+01205
+01206 <font class="preprocessor">#if YYDEBUG != 0</font>
+01207 <font class="preprocessor"></font> <font class="keywordflow">if</font> (yydebug)
+01208 fprintf(stderr, <font class="stringliteral">"Shifting error token, "</font>);
+01209 <font class="preprocessor">#endif</font>
+01210 <font class="preprocessor"></font>
+01211 *++yyvsp = yylval;
+01212 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+01213 <font class="preprocessor"></font> *++yylsp = yylloc;
+01214 <font class="preprocessor">#endif</font>
+01215 <font class="preprocessor"></font>
+01216 yystate = yyn;
+01217 <font class="keywordflow">goto</font> yynewstate;
+01218
+01219 yyacceptlab:
+01220 <font class="comment">/* YYACCEPT comes here. */</font>
+01221 <font class="keywordflow">if</font> (yyfree_stacks)
+01222 {
+01223 free (yyss);
+01224 free (yyvs);
+01225 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+01226 <font class="preprocessor"></font> free (yyls);
+01227 <font class="preprocessor">#endif</font>
+01228 <font class="preprocessor"></font> }
+01229 <font class="keywordflow">return</font> 0;
+01230
+01231 yyabortlab:
+01232 <font class="comment">/* YYABORT comes here. */</font>
+01233 <font class="keywordflow">if</font> (yyfree_stacks)
+01234 {
+01235 free (yyss);
+01236 free (yyvs);
+01237 <font class="preprocessor">#ifdef YYLSP_NEEDED</font>
+01238 <font class="preprocessor"></font> free (yyls);
+01239 <font class="preprocessor">#endif</font>
+01240 <font class="preprocessor"></font> }
+01241 <font class="keywordflow">return</font> 1;
+01242 }
+01243 <font class="preprocessor">#line 270 "cf_gramatical.yxx"</font>
+01244 <font class="preprocessor"></font>
+01245
+01246 <font class="comment">/* compute the good operation with a, b and op */</font>
+01247 <a class="code" href="structcf__value.html">cf_value</a> <a class="code" href="cf__gramatical_8cpp.html#a77">cf_op</a> (<a class="code" href="structcf__value.html">cf_value</a> a, <a class="code" href="structcf__value.html">cf_value</a> b, <a class="code" href="cf__gramatical_8cpp.html#a82">cf_operation</a> op)
+01248 {
+01249 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"[OP:%d; "</font>, op);
+01250 <a class="code" href="cf__gramatical_8cpp.html#a78">cf_print</a>(a);
+01251 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"; "</font>);
+01252 <a class="code" href="cf__gramatical_8cpp.html#a78">cf_print</a>(b);
+01253 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"; "</font>);
+01254
+01255 <font class="keywordflow">switch</font> (op)
+01256 {
+01257 <font class="keywordflow">case</font> <a class="code" href="cf__gramatical_8cpp.html#a82a73">OP_MULT</a>: <font class="comment">// *********************</font>
+01258 <font class="keywordflow">switch</font> (a.<a class="code" href="structcf__value.html#m0">Type</a>)
+01259 {
+01260 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>:
+01261 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01262 {
+01263 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: a.<a class="code" href="structcf__value.html#m1">Int</a> *= b.<a class="code" href="structcf__value.html#m1">Int</a>; <font class="keywordflow">break</font>;
+01264 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: a.<a class="code" href="structcf__value.html#m1">Int</a> *= (int)b.<a class="code" href="structcf__value.html#m2">Real</a>; <font class="keywordflow">break</font>;
+01265 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: int*str\n"</font>); <font class="keywordflow">break</font>;
+01266 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01267 }
+01268 <font class="keywordflow">break</font>;
+01269 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>:
+01270 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01271 {
+01272 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: a.<a class="code" href="structcf__value.html#m2">Real</a> *= (double)b.<a class="code" href="structcf__value.html#m1">Int</a>; <font class="keywordflow">break</font>;
+01273 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: a.<a class="code" href="structcf__value.html#m2">Real</a> *= b.<a class="code" href="structcf__value.html#m2">Real</a>; <font class="keywordflow">break</font>;
+01274 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: real*str\n"</font>); <font class="keywordflow">break</font>;
+01275 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01276 }
+01277 <font class="keywordflow">break</font>;
+01278 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>:
+01279 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01280 {
+01281 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: str*int\n"</font>); <font class="keywordflow">break</font>;
+01282 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: str*real\n"</font>); <font class="keywordflow">break</font>;
+01283 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: str*str\n"</font>); <font class="keywordflow">break</font>;
+01284 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01285 }
+01286 <font class="keywordflow">break</font>;
+01287 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01288 }
+01289 <font class="keywordflow">break</font>;
+01290 <font class="keywordflow">case</font> <a class="code" href="cf__gramatical_8cpp.html#a82a74">OP_DIVIDE</a>: <font class="comment">// //////////////////////</font>
+01291 <font class="keywordflow">switch</font> (a.<a class="code" href="structcf__value.html#m0">Type</a>)
+01292 {
+01293 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>:
+01294 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01295 {
+01296 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: a.<a class="code" href="structcf__value.html#m1">Int</a> /= b.<a class="code" href="structcf__value.html#m1">Int</a>; <font class="keywordflow">break</font>;
+01297 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: a.<a class="code" href="structcf__value.html#m1">Int</a> /= (int)b.<a class="code" href="structcf__value.html#m2">Real</a>; <font class="keywordflow">break</font>;
+01298 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: int/str\n"</font>); <font class="keywordflow">break</font>;
+01299 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01300 }
+01301 <font class="keywordflow">break</font>;
+01302 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>:
+01303 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01304 {
+01305 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: a.<a class="code" href="structcf__value.html#m2">Real</a> /= (double)b.<a class="code" href="structcf__value.html#m1">Int</a>; <font class="keywordflow">break</font>;
+01306 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: a.<a class="code" href="structcf__value.html#m2">Real</a> /= b.<a class="code" href="structcf__value.html#m2">Real</a>; <font class="keywordflow">break</font>;
+01307 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: real/str\n"</font>); <font class="keywordflow">break</font>;
+01308 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01309 }
+01310 <font class="keywordflow">break</font>;
+01311 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>:
+01312 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01313 {
+01314 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: str/int\n"</font>); <font class="keywordflow">break</font>;
+01315 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: str/real\n"</font>); <font class="keywordflow">break</font>;
+01316 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: str/str\n"</font>); <font class="keywordflow">break</font>;
+01317 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01318 }
+01319 <font class="keywordflow">break</font>;
+01320 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01321 }
+01322 <font class="keywordflow">break</font>;
+01323 <font class="keywordflow">case</font> <a class="code" href="cf__gramatical_8cpp.html#a82a71">OP_PLUS</a>: <font class="comment">// ++++++++++++++++++++++++</font>
+01324 <font class="keywordflow">switch</font> (a.<a class="code" href="structcf__value.html#m0">Type</a>)
+01325 {
+01326 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>:
+01327 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01328 {
+01329 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: a.<a class="code" href="structcf__value.html#m1">Int</a> += b.<a class="code" href="structcf__value.html#m1">Int</a>; <font class="keywordflow">break</font>;
+01330 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: a.<a class="code" href="structcf__value.html#m1">Int</a> += (int)b.<a class="code" href="structcf__value.html#m2">Real</a>; <font class="keywordflow">break</font>;
+01331 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: a.<a class="code" href="structcf__value.html#m1">Int</a> += atoi(b.<a class="code" href="structcf__value.html#m3">String</a>); <font class="keywordflow">break</font>;
+01332 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01333 }
+01334 <font class="keywordflow">break</font>;
+01335 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>:
+01336 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01337 {
+01338 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: a.<a class="code" href="structcf__value.html#m2">Real</a> += (double)b.<a class="code" href="structcf__value.html#m1">Int</a>; <font class="keywordflow">break</font>;
+01339 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: a.<a class="code" href="structcf__value.html#m2">Real</a> += b.<a class="code" href="structcf__value.html#m2">Real</a>; <font class="keywordflow">break</font>;
+01340 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: a.<a class="code" href="structcf__value.html#m2">Real</a> += atof (b.<a class="code" href="structcf__value.html#m3">String</a>); <font class="keywordflow">break</font>;
+01341 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01342 }
+01343 <font class="keywordflow">break</font>;
+01344 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>:
+01345 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01346 {
+01347 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: { <font class="keywordtype">char</font> str2[60]; <a class="code" href="namespaceNLMISC.html#a211">NLMISC::smprintf</a>(str2, 60, <font class="stringliteral">"%d"</font>, b.<a class="code" href="structcf__value.html#m1">Int</a>); strcat(a.<a class="code" href="structcf__value.html#m3">String</a>, str2); <font class="keywordflow">break</font>; }
+01348 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: { <font class="keywordtype">char</font> str2[60]; <a class="code" href="namespaceNLMISC.html#a211">NLMISC::smprintf</a>(str2, 60, <font class="stringliteral">"%f"</font>, b.<a class="code" href="structcf__value.html#m2">Real</a>); strcat(a.<a class="code" href="structcf__value.html#m3">String</a>, str2); <font class="keywordflow">break</font>; }
+01349 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: strcat (a.<a class="code" href="structcf__value.html#m3">String</a>, b.<a class="code" href="structcf__value.html#m3">String</a>); <font class="keywordflow">break</font>;
+01350 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01351 }
+01352 <font class="keywordflow">break</font>;
+01353 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01354 }
+01355 <font class="keywordflow">break</font>;
+01356 <font class="keywordflow">case</font> <a class="code" href="cf__gramatical_8cpp.html#a82a72">OP_MINUS</a>: <font class="comment">// -------------------------</font>
+01357 <font class="keywordflow">switch</font> (a.<a class="code" href="structcf__value.html#m0">Type</a>)
+01358 {
+01359 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>:
+01360 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01361 {
+01362 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: a.<a class="code" href="structcf__value.html#m1">Int</a> -= b.<a class="code" href="structcf__value.html#m1">Int</a>; <font class="keywordflow">break</font>;
+01363 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: a.<a class="code" href="structcf__value.html#m1">Int</a> -= (int)b.<a class="code" href="structcf__value.html#m2">Real</a>; <font class="keywordflow">break</font>;
+01364 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: int-str\n"</font>); <font class="keywordflow">break</font>;
+01365 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01366 }
+01367 <font class="keywordflow">break</font>;
+01368 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>:
+01369 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01370 {
+01371 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: a.<a class="code" href="structcf__value.html#m2">Real</a> -= (double)b.<a class="code" href="structcf__value.html#m1">Int</a>; <font class="keywordflow">break</font>;
+01372 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: a.<a class="code" href="structcf__value.html#m2">Real</a> -= b.<a class="code" href="structcf__value.html#m2">Real</a>; <font class="keywordflow">break</font>;
+01373 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: real-str\n"</font>); <font class="keywordflow">break</font>;
+01374 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01375 }
+01376 <font class="keywordflow">break</font>;
+01377 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>:
+01378 <font class="keywordflow">switch</font> (b.<a class="code" href="structcf__value.html#m0">Type</a>)
+01379 {
+01380 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: str-int\n"</font>); <font class="keywordflow">break</font>;
+01381 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: str-real\n"</font>); <font class="keywordflow">break</font>;
+01382 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: str-str\n"</font>); <font class="keywordflow">break</font>;
+01383 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01384 }
+01385 <font class="keywordflow">break</font>;
+01386 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01387 }
+01388 <font class="keywordflow">break</font>;
+01389 <font class="keywordflow">case</font> <a class="code" href="cf__gramatical_8cpp.html#a82a75">OP_NEG</a>: <font class="comment">// neg</font>
+01390 <font class="keywordflow">switch</font> (a.<a class="code" href="structcf__value.html#m0">Type</a>)
+01391 {
+01392 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: a.<a class="code" href="structcf__value.html#m1">Int</a> = -a.<a class="code" href="structcf__value.html#m1">Int</a>; <font class="keywordflow">break</font>;
+01393 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: a.<a class="code" href="structcf__value.html#m2">Real</a> = -a.<a class="code" href="structcf__value.html#m2">Real</a>; <font class="keywordflow">break</font>;
+01394 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"ERROR: -str\n"</font>); <font class="keywordflow">break</font>;
+01395 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01396 }
+01397 <font class="keywordflow">break</font>;
+01398 }
+01399 <a class="code" href="cf__gramatical_8cpp.html#a78">cf_print</a>(a);
+01400 <a class="code" href="cf__gramatical_8cpp.html#a26">DEBUG_PRINT</a>(<font class="stringliteral">"]\n"</font>);
+01401 <font class="keywordflow">return</font> a;
+01402 }
+01403
+01404 <font class="comment">/* print a value, it's only for debug purpose */</font>
+01405 <font class="keywordtype">void</font> <a class="code" href="cf__gramatical_8cpp.html#a78">cf_print</a> (<a class="code" href="structcf__value.html">cf_value</a> Val)
+01406 {
+01407 <font class="keywordflow">switch</font> (Val.<a class="code" href="structcf__value.html#m0">Type</a>)
+01408 {
+01409 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>:
+01410 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"'%d'"</font>, Val.<a class="code" href="structcf__value.html#m1">Int</a>);
+01411 <font class="keywordflow">break</font>;
+01412 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>:
+01413 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"`%f`"</font>, Val.<a class="code" href="structcf__value.html#m2">Real</a>);
+01414 <font class="keywordflow">break</font>;
+01415 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>:
+01416 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"\"%s\""</font>, Val.<a class="code" href="structcf__value.html#m3">String</a>);
+01417 <font class="keywordflow">break</font>;
+01418 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01419 }
+01420 }
+01421
+01422 <font class="comment">/* put a value into a var */</font>
+01423 <font class="keywordtype">void</font> <a class="code" href="cf__gramatical_8cpp.html#a79">cf_setVar</a> (<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html">NLMISC::CConfigFile::CVar</a> &amp;Var, <a class="code" href="structcf__value.html">cf_value</a> Val)
+01424 {
+01425 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"push type %d in var name '%s' type %d with value : "</font>, Val.<a class="code" href="structcf__value.html#m0">Type</a>, Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_1">Name</a>.c_str(), Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_2">Type</a>);
+01426 <a class="code" href="cf__gramatical_8cpp.html#a78">cf_print</a>(Val);
+01427 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"\n"</font>);
+01428 <font class="keywordflow">if</font> (Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_2">Type</a> == <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s0">NLMISC::CConfigFile::CVar::T_UNKNOWN</a> || Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_2">Type</a> == Val.<a class="code" href="structcf__value.html#m0">Type</a>)
+01429 {
+01430 <font class="keywordflow">if</font> (Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_2">Type</a> == <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s0">NLMISC::CConfigFile::CVar::T_UNKNOWN</a>)
+01431 {
+01432 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"val type is unknown, set to the var type\n"</font>);
+01433 }
+01434 <font class="keywordflow">else</font>
+01435 {
+01436 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"val type is same var type, just add\n"</font>);
+01437 }
+01438
+01439 Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_2">Type</a> = Val.<a class="code" href="structcf__value.html#m0">Type</a>;
+01440 <font class="keywordflow">switch</font> (Val.<a class="code" href="structcf__value.html#m0">Type</a>)
+01441 {
+01442 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_4">IntValues</a>.push_back (Val.<a class="code" href="structcf__value.html#m1">Int</a>); <font class="keywordflow">break</font>;
+01443 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_5">RealValues</a>.push_back (Val.<a class="code" href="structcf__value.html#m2">Real</a>); <font class="keywordflow">break</font>;
+01444 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_6">StrValues</a>.push_back(Val.<a class="code" href="structcf__value.html#m3">String</a>); <font class="keywordflow">break</font>;
+01445 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01446 }
+01447 }
+01448 <font class="keywordflow">else</font>
+01449 {
+01450 <font class="comment">// need to convert the type</font>
+01451 <font class="keywordflow">switch</font> (Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_2">Type</a>)
+01452 {
+01453 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>:
+01454 <font class="keywordflow">switch</font> (Val.<a class="code" href="structcf__value.html#m0">Type</a>)
+01455 {
+01456 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_4">IntValues</a>.push_back ((<font class="keywordtype">int</font>)Val.<a class="code" href="structcf__value.html#m2">Real</a>); <font class="keywordflow">break</font>;
+01457 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_4">IntValues</a>.push_back (atoi(Val.<a class="code" href="structcf__value.html#m3">String</a>)); <font class="keywordflow">break</font>;
+01458 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01459 }
+01460 <font class="keywordflow">break</font>;
+01461 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>:
+01462 <font class="keywordflow">switch</font> (Val.<a class="code" href="structcf__value.html#m0">Type</a>)
+01463 {
+01464 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_5">RealValues</a>.push_back ((<font class="keywordtype">double</font>)Val.<a class="code" href="structcf__value.html#m1">Int</a>); <font class="keywordflow">break</font>;
+01465 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>: Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_5">RealValues</a>.push_back (atof(Val.<a class="code" href="structcf__value.html#m3">String</a>)); <font class="keywordflow">break</font>;
+01466 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01467 }
+01468 <font class="keywordflow">break</font>;
+01469 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s2">NLMISC::CConfigFile::CVar::T_STRING</a>:
+01470 <font class="keywordflow">switch</font> (Val.<a class="code" href="structcf__value.html#m0">Type</a>)
+01471 {
+01472 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s1">NLMISC::CConfigFile::CVar::T_INT</a>: Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_6">StrValues</a>.push_back(toString(Val.<a class="code" href="structcf__value.html#m1">Int</a>)); <font class="keywordflow">break</font>;
+01473 <font class="keywordflow">case</font> <a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_0s3">NLMISC::CConfigFile::CVar::T_REAL</a>: Var.<a class="code" href="structNLMISC_1_1CConfigFile_1_1CVar.html#z282_6">StrValues</a>.push_back(toString(Val.<a class="code" href="structcf__value.html#m2">Real</a>)); <font class="keywordflow">break</font>;
+01474 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01475 }
+01476 <font class="keywordflow">break</font>;
+01477 <font class="keywordflow">default</font>: <font class="keywordflow">break</font>;
+01478 }
+01479 }
+01480 }
+01481
+01482 <font class="keywordtype">int</font> <a class="code" href="cf__gramatical_8cpp.html#a3">yyerror</a> (<font class="keyword">const</font> <font class="keywordtype">char</font> *<a class="code" href="driver__opengl__extension__def_8h.html#a383">s</a>)
+01483 {
+01484 <a class="code" href="cf__gramatical_8cpp.html#a25">DEBUG_PRINTF</a>(<font class="stringliteral">"%s\n"</font>,<a class="code" href="driver__opengl__extension__def_8h.html#a383">s</a>);
+01485 <font class="keywordflow">return</font> 1;
+01486 }
+01487
+01488
+</pre></div>
+
+<!-- footer -->
+<BR><FONT Size=+5>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </FONT>
+</TD>
+<TD WIDTH=15><IMG SRC=http://www.nevrax.org/inc/img/pixel.gif WIDTH=15 HEIGHT=15 BORDER=0 ALT=""></TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>