absyntax_utils/search_var_instance_decl.cc
changeset 793 268bf4ca5fa1
parent 718 a9f8cc778444
parent 706 31553c22f318
child 810 d9c48ad646f1
equal deleted inserted replaced
785:b08167f156a1 793:268bf4ca5fa1
   141   return ((typeid( *(decl) ) == typeid( array_specification_c                )) ||
   141   return ((typeid( *(decl) ) == typeid( array_specification_c                )) ||
   142 //        (typeid( *(decl) ) == typeid( array_spec_init_c                    )) ||  /* does not seem to be necessary */
   142 //        (typeid( *(decl) ) == typeid( array_spec_init_c                    )) ||  /* does not seem to be necessary */
   143           (typeid( *(decl) ) == typeid( structure_type_declaration_c         )) ||  
   143           (typeid( *(decl) ) == typeid( structure_type_declaration_c         )) ||  
   144           (typeid( *(decl) ) == typeid( structure_element_declaration_list_c )) ||
   144           (typeid( *(decl) ) == typeid( structure_element_declaration_list_c )) ||
   145 //        (typeid( *(decl) ) == typeid( structure_type_declaration_c         )) ||  /* does not seem to be necessary */
   145 //        (typeid( *(decl) ) == typeid( structure_type_declaration_c         )) ||  /* does not seem to be necessary */
   146           (typeid( *(decl) ) == typeid( initialized_structure_c              ))
   146           (typeid( *(decl) ) == typeid( initialized_structure_c              )) ||
   147           
   147           (search_base_type_c::type_is_fb(decl) && current_vartype == external_vt)
   148          );
   148          );
   149 }
   149 }
   150 
   150 
   151 
   151 bool search_var_instance_decl_c::type_is_fb(symbol_c *symbol) {
       
   152     symbol_c *decl;
       
   153     search_base_type_c search_base_type;
       
   154 
       
   155     decl = this->get_decl(symbol);
       
   156     if (NULL == decl) ERROR;
       
   157     return search_base_type.type_is_fb(decl);
       
   158 }
   152 
   159 
   153 /***************************/
   160 /***************************/
   154 /* B 0 - Programming Model */
   161 /* B 0 - Programming Model */
   155 /***************************/
   162 /***************************/
   156 void *search_var_instance_decl_c::visit(library_c *symbol) {
   163 void *search_var_instance_decl_c::visit(library_c *symbol) {