{ modname = strrchr (filename, '\\'); if (modname != NULL) ++modname; else modname = filename; }
modname = filename;
ieee_add_bb11 (info, sec, low, high)     struct ieee_handle *info;     asection *sec;     bfd_vma low;     bfd_vma high;{  int kind;  if (! ieee_buffer_emptyp (&info->vars))    {      if (! ieee_change_buffer (info, &info->vars))	return false;    }  else    {      const char *filename, *modname;      char *c, *s;      /* Start the enclosing BB10 block.  */      filename = bfd_get_filename (info->abfd);      modname = strrchr (filename, '/');      if (modname != NULL)	++modname;      else	{	  modname = strrchr (filename, '\\');	  if (modname != NULL)	    ++modname;	  else	    modname = filename;	}      c = xstrdup (modname);      s = strrchr (c, '.');      if (s != NULL)	*s = '\0';      if (! ieee_change_buffer (info, &info->vars)	  || ! ieee_write_byte (info, (int) ieee_bb_record_enum)	  || ! ieee_write_byte (info, 10)	  || ! ieee_write_number (info, 0)	  || ! ieee_write_id (info, c)	  || ! ieee_write_id (info, "")	  || ! ieee_write_number (info, 0)	  || ! ieee_write_id (info, "GNU objcopy"))	return false;      free (c);    }  if ((sec->flags & SEC_CODE) != 0)    kind = 1;  else if ((sec->flags & SEC_READONLY) != 0)    kind = 3;  else    kind = 2;  if (! ieee_write_byte (info, (int) ieee_bb_record_enum)      || ! ieee_write_byte (info, 11)      || ! ieee_write_number (info, 0)      || ! ieee_write_id (info, "")      || ! ieee_write_number (info, kind)      || ! ieee_write_number (info, sec->index + IEEE_SECTION_NUMBER_BASE)      || ! ieee_write_number (info, low)      || ! ieee_write_byte (info, (int) ieee_be_record_enum)      || ! ieee_write_number (info, high - low))    return false;  return true;}