absyntax_utils/search_varfb_instance_type.hh
changeset 372 25332e048742
parent 371 926490780952
child 412 aad38592bdde
child 417 d48f53715f77
--- a/absyntax_utils/search_varfb_instance_type.hh	Wed Aug 31 14:10:53 2011 +0100
+++ b/absyntax_utils/search_varfb_instance_type.hh	Wed Aug 31 14:51:59 2011 +0100
@@ -92,13 +92,27 @@
     decompose_var_instance_name_c *decompose_var_instance_name;
     symbol_c *current_structelement_name;
     symbol_c *current_typeid;
+    symbol_c *current_basetypeid;
     bool is_complex;
 
   public:
     search_varfb_instance_type_c(symbol_c *search_scope);
     symbol_c *get_basetype_decl(symbol_c *variable_name);
+    symbol_c *get_type_decl(symbol_c *variable_name);
     symbol_c *get_type_id(symbol_c *variable_name);
 
+    /* NOTE: this function should be remvoed/deleted.
+     *       However, it is currently used in stage 4, and before deleting it
+     *       requires that the stage4 code be analysed and fixed (i.e. replace by 
+     *       a call to one of the above functions get_basetype_decl(), 
+     *       get_type_decl(), get_type_id().
+     *
+     *      At the moment, I have a feeling that this whole class search_varfb_instance_type_c
+     *      will not be needed in the future (i.e. when we finish implementing type checking
+     *      in stage 3 correctly, where we store on each symbol in the abstract syntax
+     *      tree it's data type, so stage4 implementations will not need to deduce the data
+     *      types again), so it does not make much sense to spend more time on it.
+     */
     unsigned int get_vartype(symbol_c *variable_name);
     bool type_is_complex(void);