absyntax_utils/absyntax_utils.hh
changeset 338 3037bb7e8a82
parent 328 66cd5d9893dd
child 347 44ff2a6fcadc
child 350 2c3c4dc34979
equal deleted inserted replaced
334:63b52a8a12f3 338:3037bb7e8a82
    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 /***********************************************************************/