{ sym = h->sym; BFD_ASSERT (strcmp (bfd_asymbol_name (sym), h->root.root.string) == 0); }
sym = h->sym;
_bfd_generic_link_write_global_symbol (h, data)     struct generic_link_hash_entry *h;     PTR data;{  struct generic_write_global_symbol_info *wginfo =    (struct generic_write_global_symbol_info *) data;  asymbol *sym;  if (h->written)    return true;  h->written = true;  if (wginfo->info->strip == strip_all      || (wginfo->info->strip == strip_some	  && bfd_hash_lookup (wginfo->info->keep_hash, h->root.root.string,			      false, false) == NULL))    return true;  if (h->sym != (asymbol *) NULL)    {      sym = h->sym;      BFD_ASSERT (strcmp (bfd_asymbol_name (sym), h->root.root.string) == 0);    }  else    {      sym = bfd_make_empty_symbol (wginfo->output_bfd);      if (!sym)	return false;      sym->name = h->root.root.string;      sym->flags = 0;    }  set_symbol_from_hash (sym, &h->root);  sym->flags |= BSF_GLOBAL;  if (! generic_add_output_symbol (wginfo->output_bfd, wginfo->psymalloc,				   sym))    {      /* FIXME: No way to return failure.  */      abort ();    }  return true;}