68 extern symtable_c<program_declaration_c *, &null_symbol3> program_type_symtable; |
68 extern symtable_c<program_declaration_c *, &null_symbol3> program_type_symtable; |
69 |
69 |
70 /* A symbol table with all user declared type definitions... */ |
70 /* A symbol table with all user declared type definitions... */ |
71 /* Note that function block types and program types have their |
71 /* Note that function block types and program types have their |
72 * own symbol tables, so do not get placed in this symbol table! |
72 * own symbol tables, so do not get placed in this symbol table! |
|
73 * |
|
74 * The symbol_c * associated to the value will point to the data type declaration. |
73 */ |
75 */ |
74 extern symbol_c null_symbol4; |
76 extern symbol_c null_symbol4; |
75 extern symtable_c<symbol_c *, &null_symbol4> type_symtable; |
77 extern symtable_c<symbol_c *, &null_symbol4> type_symtable; |
76 |
78 |
77 /* A symbol table with all values declared for enumerated type... */ |
79 /* A symbol table with all values declared for enumerated type... */ |
78 /* Note that if the value is defined multiple times the value |
80 /* Notes: |
|
81 * - if the value is defined multiple times the value |
79 * is the null pointer. |
82 * is the null pointer. |
|
83 * |
|
84 * - The stored symbol_c * associated to the value points to the enumerated_type_name |
|
85 * (i.e. the name of the enumerated data type) in which the the value/identifier |
|
86 * is used/declared. |
|
87 * |
|
88 * - We could re-use the null_symbol4 object, but it is safer to use a distinct object |
|
89 * (i.e. it might make it easier to find strange bugs). |
80 */ |
90 */ |
81 extern symtable_c<symbol_c *, &null_symbol4> enumerated_value_symtable; |
91 extern symbol_c null_symbol5; |
|
92 extern symtable_c<symbol_c *, &null_symbol5> enumerated_value_symtable; |
82 |
93 |
83 |
94 |
84 /***********************************************************************/ |
95 /***********************************************************************/ |
85 /***********************************************************************/ |
96 /***********************************************************************/ |
86 /***********************************************************************/ |
97 /***********************************************************************/ |