42 /* file with declaration of absyntax classes... */ |
42 /* file with declaration of absyntax classes... */ |
43 #include "../absyntax/absyntax.hh" |
43 #include "../absyntax/absyntax.hh" |
44 |
44 |
45 |
45 |
46 #include "stage1_2.hh" |
46 #include "stage1_2.hh" |
47 #include "iec_bison.h" |
47 #include "iec_bison.hh" |
48 #include "stage1_2_priv.hh" |
48 #include "stage1_2_priv.hh" |
49 #include "create_enumtype_conversion_functions.hh" |
49 #include "create_enumtype_conversion_functions.hh" |
50 |
50 |
51 |
51 |
52 |
52 |
133 /* The global symbol tables... */ |
133 /* The global symbol tables... */ |
134 /*********************************/ |
134 /*********************************/ |
135 /* NOTE: only accessed indirectly by the lexical parser (flex) |
135 /* NOTE: only accessed indirectly by the lexical parser (flex) |
136 * through the function get_identifier_token() |
136 * through the function get_identifier_token() |
137 */ |
137 */ |
138 /* NOTE: BOGUS_TOKEN_ID is defined in the bison generated file iec_bison.h. |
138 /* NOTE: BOGUS_TOKEN_ID is defined in the bison generated file iec_bison.hh. |
139 * We need this constant defined before we can declare the symbol tables. |
139 * We need this constant defined before we can declare the symbol tables. |
140 * However, we cannot #include "iec_bison.h" in this file (stage1_2_priv.hh) directly |
140 * However, we cannot #include "iec_bison.hh" in this file (stage1_2_priv.hh) directly |
141 * because of the way bison ver. 3.2 is copying all declarations in the prologue |
141 * because of the way bison ver. 3.2 is copying all declarations in the prologue |
142 * of iec.y to the iec_bison.h file (including an #include stage1_2_priv.hh). |
142 * of iec.y to the iec_bison.hh file (including an #include stage1_2_priv.hh). |
143 * So, if we were to include "iec_bison.h" here, we would get a circular include. |
143 * So, if we were to include "iec_bison.hh" here, we would get a circular include. |
144 * All this means that whoever includes this file (stage1_2_priv.hh) will need |
144 * All this means that whoever includes this file (stage1_2_priv.hh) will need |
145 * to take care to first inlcude iec_bison.h !! |
145 * to take care to first inlcude iec_bison.hh !! |
146 */ |
146 */ |
147 /* A symbol table to store all the library elements */ |
147 /* A symbol table to store all the library elements */ |
148 /* e.g.: <function_name , function_decl> |
148 /* e.g.: <function_name , function_decl> |
149 * <fb_name , fb_decl> |
149 * <fb_name , fb_decl> |
150 * <type_name , type_decl> |
150 * <type_name , type_decl> |