diff -r 587884880be6 -r 01f6664bf8c5 absyntax/absyntax.hh --- a/absyntax/absyntax.hh Thu Mar 01 10:28:27 2012 +0000 +++ b/absyntax/absyntax.hh Fri Mar 02 12:53:41 2012 +0000 @@ -77,8 +77,13 @@ int last_column; const char *last_file; /* filename referenced by last line/column */ long int last_order; /* relative order in which it is read by lexcial analyser */ - symbol_c * datatype; /* data type of the expression/literal/etc. Filled in stage3 by narrow_candidate_datatypes_c */ std::vector candidate_datatypes; /* All possible data types the expression/literal/etc. may take. Filled in stage3 by fill_candidate_datatypes_c class */ + /* Data type of the expression/literal/etc. Filled in stage3 by narrow_candidate_datatypes_c + * If set to NULL, it means it has not yet been evaluated. + * If it points to an object of type invalid_type_name_c, it means it is invalid. + * Otherwise, it points to an object of the apropriate data type (e.g. int_type_name_c, bool_type_name_c, ...) + */ + symbol_c *datatype; public: