absyntax/absyntax.hh
changeset 459 01f6664bf8c5
parent 438 744b125d911e
child 564 dabffc3086dc
--- 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 <symbol_c *> 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: