Index: ast/ast_module.cpp =================================================================== --- ast/ast_module.cpp (revision 88654) +++ ast/ast_module.cpp (working copy) @@ -846,13 +846,7 @@ if ((d = this->lookup_for_add (i, false)) != 0) { AST_Decl::NodeType nt = d->node_type (); -/* - if (nt == AST_Decl::NT_interface_fwd) - { - AST_InterfaceFwd *ifwd = AST_InterfaceFwd::narrow_from_decl (d); - i->set_full_definition (ifwd->full_definition ()); - } -*/ + // There used to be another check here ANDed with the one below: // d->defined_in () == this. But lookup_for_add calls only // lookup_by_name_local(), which does not bump up the scope, @@ -938,12 +932,6 @@ { AST_Decl::NodeType nt = d->node_type (); - if (nt == AST_Decl::NT_valuetype_fwd) - { - AST_ValueTypeFwd *vfwd = AST_ValueTypeFwd::narrow_from_decl (d); - v->set_full_definition (vfwd->full_definition ()); - } - // There used to be another check here ANDed with the one below: // d->defined_in () == this. But lookup_for_add calls only // lookup_by_name_local(), which does not bump up the scope, @@ -965,8 +953,6 @@ this->add_to_scope (v); } - // @@ Redefinition of forward. Type check not implemented. - v->set_full_definition (vtf); // @@ Memory leak. return v; } @@ -1100,12 +1086,6 @@ { AST_Decl::NodeType nt = d->node_type (); - if (nt == AST_Decl::NT_component_fwd) - { - AST_ComponentFwd *cfwd = AST_ComponentFwd::narrow_from_decl (d); - c->set_full_definition (cfwd->full_definition ()); - } - // There used to be another check here ANDed with the one below: // d->defined_in () == this. But lookup_for_add calls only // lookup_by_name_local(), which does not bump up the scope, @@ -1127,8 +1107,6 @@ this->add_to_scope (c); } - // @@ Redefinition of forward. Type check not implemented. - c->set_full_definition (cf); // @@ Memory leak. return c; }