case kind_unary_plus:
case kind_unary_minus:
case kind_bitnot:
- return type_default_conversion(e->type);
+ return type_default_conversion(e->arg1->type);
case kind_realpart: case kind_imagpart: {
- type etype = type_default_conversion(e->type);
+ type etype = type_default_conversion(e->arg1->type);
return type_complex(etype) ? make_base_type(etype) : etype;
}
abstract configurations)...
*/
{
- component_spec_iterate(component, set_ddecl_instantiation1, NULL, TRUE);
+ component_spec_iterate(component, set_ddecl_instantiation1, NULL, TRUE, TRUE);
}
static void set_ddecl_instantiation2(data_declaration fndecl, void *data)
{
/* We just make the decl fndecl is a copy of point back to fndecl */
+
fndecl->instanceof->instantiation = fndecl;
}
the original abstract component from which component is derived to
the copies in component (in preparation for cloning component's
AST and pointing to component's decls)
-
- The original data_declarations can be found by following the
- shadowed fields. We may have to follow these one deep (abstract
- modules in configurations) or two deep (abstract modules in
- abstract configurations)...
*/
{
- component_spec_iterate(component, set_ddecl_instantiation2, NULL, TRUE);
+ component_spec_iterate(component, set_ddecl_instantiation2, NULL, TRUE, TRUE);
}
static declaration instantiate_parameters(region r, declaration orig_parms)