equal
deleted
inserted
replaced
129 * If set to NULL, it means it has not yet been evaluated. |
129 * If set to NULL, it means it has not yet been evaluated. |
130 * If it points to an object of type invalid_type_name_c, it means it is invalid. |
130 * If it points to an object of type invalid_type_name_c, it means it is invalid. |
131 * Otherwise, it points to an object of the apropriate data type (e.g. int_type_name_c, bool_type_name_c, ...) |
131 * Otherwise, it points to an object of the apropriate data type (e.g. int_type_name_c, bool_type_name_c, ...) |
132 */ |
132 */ |
133 symbol_c *datatype; |
133 symbol_c *datatype; |
|
134 /* The POU in which the symbolic variable (or structured variable, or array variable, or located variable, - any more?) |
|
135 * was declared. This will point to a Configuration, Resource, Program, FB, or Function. |
|
136 */ |
|
137 symbol_c *scope; |
134 |
138 |
135 /*** constant folding ***/ |
139 /*** constant folding ***/ |
136 /* During stage 3 (semantic analysis/checking) we will be doing constant folding. |
140 /* During stage 3 (semantic analysis/checking) we will be doing constant folding. |
137 * That algorithm will anotate the abstract syntax tree with the result of operations |
141 * That algorithm will anotate the abstract syntax tree with the result of operations |
138 * on literals (i.e. 44 + 55 will store the result 99). |
142 * on literals (i.e. 44 + 55 will store the result 99). |