bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

binutils-2.21.53 bugs


From: Jorma Karvonen
Subject: binutils-2.21.53 bugs
Date: Sat, 24 Sep 2011 22:08:17 +0300

Hi,

I have picked some errors from the source code or from the
binutils.pot file. I'm sure there will be more bugs, if I have browsed
the whole source code for binutils (missing translations).

Best regards,

Jorma Karvonen

#: addr2line.c:271
#, c-format
msgid " at "

Is this "at" an address or a function or something? It is difficult to
translate due to missing context.

#: addr2line.c:296
#, c-format
msgid " (inlined by) "

by who ? Missing context here too.

ar.c:1024
    bfd_fatal ("could not create temporary file whilst writing archive");

should be:
    bfd_fatal (_("could not create temporary file whilst writing archive"));

, I think.

The following three should be:

bucomm.c:228
    case BFD_ENDIAN_BIG: return _("big endian");
bucomm.c:229
    case BFD_ENDIAN_LITTLE: return _("little endian");
bucomm.c:230
    default: return _("endianness unknown");

, I think.

The following should be:

bucomm.c:251
      printf (_("%s\n (header %s, data %s)\n"), p->name,

, I think.

I wonder, if setlocale could be used here:

bucomm.c:430
          const char *ctime_result = (const char *) ctime (&when);

          /* POSIX format:  skip weekday and seconds from ctime output.  */
          sprintf (timebuf, "%.12s %.4s", ctime_result + 4, ctime_result + 20);

The following shoud maybe be:

coffdump.c:130
  printf (_("size %d "), p->size);
coffdump.c:135
      printf (_("section definition at %x size %x\n"),
coffdump.c:141
      /* Pointer is pointing to coff_pointer_type */
      printf (_("pointer to"));
coffdump.c:146
      /* a coff_type array */
      printf (_("array [%d] of"), p->u.array.dim);
coffdump.c:151
      printf (_("function returning"));
coffdump.c:155
      printf (_("arguments"));
coffdump.c:159
      printf (_("code"));
coffdump.c:165
      printf (_("structure definition"));
coffdump.c:171
        printf (_("structure ref to UNKNOWN struct"));
coffdump.c:173
        printf (_("structure ref to %s"), p->u.aenumref.ref->name);
coffdump.c:176
      printf (_("enum ref to %s"), p->u.astructref.ref->name);
coffdump.c:179
      printf (_("enum definition"));
coffdump.c:252
      printf (_("Stack offset %x"), p->offset);
coffdump.c:255
      printf (_("Memory section %s+%x"), p->section->name, p->offset);
coffdump.c:258
      printf (_("Register %d"), p->offset);
coffdump.c:261
      printf (_("Struct Member offset %x"), p->offset);
coffdump.c:264
      printf (_("Enum Member offset %x"), p->offset);
coffdump.c:267
      printf (_("Undefined symbol"));
coffdump.c:334
  printf (_("List of symbols"));
coffdump.c:341
      printf (_("Symbol  %s, tag %d, number %d"), p->name, p->tag, p->number);
coffdump.c:345
      printf (_("Type"));
coffdump.c:350
      printf (_("Where"));
coffdump.c:354
      printf (_("Visible"));
coffdump.c:369
      printf (_("List of blocks"));
      printf (" %" BFD_VMA_FMT "x ",(bfd_vma) (uintptr_t) p);
coffdump.c:384
          /* number of symbols */
          printf (_("vars %d"), p->nvars);
coffdump.c:385
          printf (_("blocks"));
coffdump.c:403
  printf (_("List of source files"));
coffdump.c:409
      printf (_("Source file %s"), p->name);
coffdump.c:423
      /* nrelocs is the number of the coff_reloc structs in a coff_section */
      printf (_("section %s %d %d address %x size %x number %d nrelocs %d"),
coffdump.c:446
      printf (_("Coff dump"));
coffdump.c:448
      printf (_("#sources %d"), ptr->nsources);

sysdump.c:66
    return _("*undefined*");
sysdump.c:503
      printf (_("GOT A %x\n"), c);
sysdump.c:503
      printf (_("WANTED %x!!\n"), x);
sysdump.c:539
      tab (1, _("SYMBOL INFO"));
sysdump.c:557
      tab (1, _("DERIVED TYPE"));
sysdump.c:614
      tab (1, _("MODULE***\n"));

dlltool.c:1266
      printf (_("VERSION %d.%d\n"), major, minor);
dlltool.c:1314
      inform (_("run: %s %s"), what, args);

dllwrap.c:417
      warn (_("wait: %s"), strerror (errno));

dwarf.c:132
      error (_("Wrong size in print_dwarf_vma"));
dwarf.c:356,360,364
      printf (_("(%s"),  <-- PLS, REMOVE THIS

In the following should be "UNKNOWN", not "UNKNOW":
dwarf.c:370
      printf (_("    UNKNOW DW_LNE_HP_SFC opcode (%u)\n"), opc);
dwarf.c:1075
      printf (_("size: %s "),
dwarf.c:1098
      printf ("DW_OP_GNU_push_tls_address ");
      printf (_("or"));
      printf ( " DW_OP_HP_unknown");
dwarf.c:1608
      printf (_("(implementation defined: %s)"),
dwarf.c:1611
      printf (_("(Unknown: %s)"), dwarf_vmatoa ("x", uvalue));
dwarf.c:1649
      printf (_("(user defined type)"));
dwarf.c:1651
      printf (_("(unknown type)"));
dwarf.c:1663
  printf (_("(unknown accessibility)"));
dwarf.c:1674
      default: printf (_("(unknown visibility)")); break;
dwarf.c:1684
      default: printf (_("(unknown virtuality)")); break;
dwarf.c:1695
      default: printf (_("(unknown case)")); break;
dwarf.c:1708
      printf (_("(user defined)"));
dwarf.c:1710
      printf (_("(unknown convention)"));
dwarf.c:1717
      case -1: printf (_("(undefined)")); break;
dwarf.c:1718
      case 0:  printf (_("(row major)")); break;
dwarf.c:1719
      case 1:  printf (_("(column major)")); break;
dwarf.c:1786
      printf (_("[Abbrev Number: %ld"), abbrev_number);
dwarf.c:2175
  printf ("  ");
  printf (_("Compilation Unit @ offset"));
  printf (" 0x%s:\n",
  dwarf_vmatoa ("x", cu_offset));
  printf ("   ");
  printf (_("Length:"));
  printf ("        0x%s (%s)\n",
  dwarf_vmatoa ("x", compunit.cu_length),
  offset_size == 8 ? _("64-bit") : _("32-bit"));
  printf ("   ");
  printf (_("Version:"));
  printf ("       %d\n", compunit.cu_version);
  printf ("   ");
  /* abbreviation offset */
  printf (_("Abbrev Offset:"));
  printf (" %s\n",
  dwarf_vmatoa ("d", compunit.cu_abbrev_offset));
  printf ("   ");
  printf (_("Pointer Size:"));
  printf ("  %d\n", compunit.cu_pointer_size);
  if (do_types)
    {
      int i;
      printf ("   ");
      printf (_("Signature:"));
      printf ("     "));
      for (i = 0; i < 8; i++)
        printf ("%02x", signature[i]);
      printf ("\n");
      printf ("   ");
      printf (_("Type Offset:"));
      printf ("   0x%s\n",
                     dwarf_vmatoa ("x", type_offset));
dwarf.c:2310
     printf (" <%d><%lx>: ");
     /* Abbreviation number */
     printf (_("Abbrev Number:"));
     printf (" %lu",
dwarf.c:2569
    /* Entry means here a line of the table */
    printf (_("  Entry\tDir\tTime\tSize\tName\n"));
dwarf.c:2973
    /* Compilation Unit */
    printf (_("CU: %s:\n"), file_table[0].name);
dwarf.c:5563
    printf (_("[%3u] 0x%lx - 0x%lx\n"), i / 2, <-- PLS, REMOVE THIS _(ONE)
dwarf.c:5568
    /* Translation Unit table */
    printf (_("\nTU table:\n"));
dwarf.c:5575
    printf (_("[%3u] 0x%lx 0x%lx "), i / 3,    <-- PLS, REMOVE THIS _(ONE)
dwarf.c:5591
    printf (_("%lu\n"), (unsigned long) cu_index);  <-- PLS, REMOVE THIS _(ONE)

od-xcoff.c:462
  printf (_("  o_mflag (magic): 0x%04x 0%04o\n"), magic, magic);
  printf (_("  o_vstamp:        0x%04x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned short)bfd_h_get_16 (abfd, auxhdr.vstamp));
  printf (_("  o_tsize:         0x%08x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_32 (abfd, auxhdr.tsize));
  printf (_("  o_dsize:         0x%08x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_32 (abfd, auxhdr.dsize));
  printf (_("  o_entry:         0x%08x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_32 (abfd, auxhdr.entry));
  printf (_("  o_text_start:    0x%08x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_32 (abfd, auxhdr.text_start));
  printf (_("  o_data_start:    0x%08x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_32 (abfd, auxhdr.data_start));
  if (sz == offsetof (AOUTHDR, o_toc))  <-- PLS, REMOVE THIS _(ONE)
    return;
  printf (_("  o_toc:           0x%08x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_32 (abfd, auxhdr.o_toc));
  printf (_("  o_snentry:       0x%04x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_16 (abfd, auxhdr.o_snentry));
  printf (_("  o_sntext:        0x%04x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_16 (abfd, auxhdr.o_sntext));
  printf (_("  o_sndata:        0x%04x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_16 (abfd, auxhdr.o_sndata));
  printf (_("  o_sntoc:         0x%04x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_16 (abfd, auxhdr.o_sntoc));
  printf (_("  o_snloader:      0x%04x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_16 (abfd, auxhdr.o_snloader));
  printf (_("  o_snbss:         0x%04x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_16 (abfd, auxhdr.o_snbss));
  printf (_("  o_algntext:      %u\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_16 (abfd, auxhdr.o_algntext));
  printf (_("  o_algndata:      %u\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_16 (abfd, auxhdr.o_algndata));
  printf (_("  o_modtype:       0x%04x"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_16 (abfd, auxhdr.o_modtype));
  if (ISPRINT (auxhdr.o_modtype[0]) && ISPRINT (auxhdr.o_modtype[1]))
    printf (" (%c%c)", auxhdr.o_modtype[0], auxhdr.o_modtype[1]);
  putchar ('\n');
  printf (_("  o_cputype:       0x%04x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_16 (abfd, auxhdr.o_cputype));
  printf (_("  o_maxstack:      0x%08x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_32 (abfd, auxhdr.o_maxstack));
  printf (_("  o_maxdata:       0x%08x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_32 (abfd, auxhdr.o_maxdata));
#if 0
  printf (_("  o_debugger:      0x%08x\n"),  <-- PLS, REMOVE THIS _(ONE)
          (unsigned int)bfd_h_get_32 (abfd, auxhdr.o_debugger));
#endif

od-xcoff.c:534
  /* Add a comment for TRANSLATORS: what are paddr, vaddr, scnptr,
relptr, lnnoptr, nrel nlnno ? */
  printf (_(" # Name     paddr    vaddr    size     scnptr   relptr
lnnoptr  nrel  nlnno\n"));

od-xcoff.c:546
      printf (_("%2d %-8.8s %08x %08x %08x %08x %08x %08x "
                "%-5d %-5d\n"),   <-- PLS, REMOVE THIS _(ONE)

od-xcoff.c:754
    printf (_(" (strings size: %08x):\n"), data->strings_size);  <-- A
QUESTION: Several strings ?

od-xcoff.c:767
    /* Add a comment for TRANSLATORS: what is "sc" ? What about "off"
? Offset or ON/OFF ? */
  printf (_("  # sc         value    section  type aux name/off\n"));

od-xcoff.c:818
    /* Add a comment for TRANSLATORS: what is "scnlen" ? What about
"nreloc" and "nlinno" ?*/
              printf (_("  scnlen: %08x  nreloc: %-6u  nlinno: %-6u\n"),
                      (unsigned)bfd_h_get_32 (abfd, aux->x_scn.x_scnlen),
                      (unsigned)bfd_h_get_16 (abfd, aux->x_scn.x_nreloc),
                      (unsigned)bfd_h_get_16 (abfd, aux->x_scn.x_nlinno));
              break;
            case C_DWARF:
              printf (_("  scnlen: %08x  nreloc: %-6u\n"),
                      (unsigned)bfd_h_get_32 (abfd, aux->x_scn.x_scnlen),
                      (unsigned)bfd_h_get_16 (abfd, aux->x_scn.x_nreloc));
              break;
            case C_EXT:
            case C_WEAKEXT:
            case C_HIDEXT:
              if (j == 0 && s->sym.numaux > 1)
                {
                  /* Function aux entry.  */
    /* Add a comment for TRANSLATORS: what is "exptr","fsize",
"lnnoptr", "endndx" ?*/
                  printf (_("  exptr: %08x fsize: %08x lnnoptr: %08x
endndx: %u\n"),
                          (unsigned)bfd_h_get_32 (abfd, aux->x_sym.x_tagndx),
                          (unsigned)bfd_h_get_32
                            (abfd, aux->x_sym.x_misc.x_fsize),
                          (unsigned)bfd_h_get_32
                            (abfd, aux->x_sym.x_fcnary.x_fcn.x_lnnoptr),
                          (unsigned)bfd_h_get_32
                            (abfd, aux->x_sym.x_fcnary.x_fcn.x_endndx));
                }
              else if (j == 1 || (j == 0 && s->sym.numaux == 1))
                {
                  /* csect aux entry.  */
                  unsigned char smtyp;
                  unsigned int scnlen;

                  smtyp = bfd_h_get_8 (abfd, aux->x_csect.x_smtyp);
                  scnlen = bfd_h_get_32 (abfd, aux->x_csect.x_scnlen);

                  if (smtyp == XTY_LD)
                    printf (_("  scnsym: %-8u"), scnlen); <-- WHAT IS "scnsym" ?
                  else
                    printf (_("  scnlen: %08x"), scnlen);
                  printf (_(" h: parm=%08x sn=%04x al: 2**%u"), <---
IS THIS NEEDED ?
                          (unsigned)bfd_h_get_32 (abfd,
aux->x_csect.x_parmhash),
                          (unsigned)bfd_h_get_16 (abfd, aux->x_csect.x_snhash),
                          SMTYP_ALIGN (smtyp));
                  printf (_(" typ: "));
                  dump_value (smtyp_xlat, SMTYP_SMTYP (smtyp), 2);
                  printf (_(" cl: ")); <-- WHAT IS "cl" ?
                  dump_value
                    (smclas_xlat,
                     (unsigned)bfd_h_get_8 (abfd, aux->x_csect.x_smclas), 6);
                  putchar ('\n');
                }
              else
                printf ("aux\n"); <--- SHOULD THIS BE printf (_("aux\n")); ?
              break;
            case C_FILE:
              {
                unsigned int off;

                printf (_(" ftype: %02x "), <--- WHAT IS "ftype" ? IS
THIS NEEDED ?
                        (unsigned)bfd_h_get_8 (abfd, aux->x_file.x_ftype));
                if (aux->x_file.x_n.x_fname[0] != 0)
                  printf (_("fname: %.14s"), aux->x_file.x_n.x_fname);
<-- IS THIS NEEDED ?
                else
                  {
                    off = (unsigned)bfd_h_get_32
                      (abfd, aux->x_file.x_n.x_n.x_offset);
                    if (data->strings != NULL && off < data->strings_size)
                      printf (_(" %s"), data->strings + off); <-- PLS,
REMOVE THIS _(ONE)
                    else
                      printf (_("offset: %08x"), off);
                  }
                putchar ('\n');
              }
              break;
            case C_BLOCK:
            case C_FCN:
              printf (_("  lnno: %u\n"), <-- IS THIS SOME NEW ONE ?
                      (unsigned)bfd_h_get_16
                      (abfd, aux->x_sym.x_misc.x_lnsz.x_lnno));
              break;
            default:
              printf ("aux\n"); <--- SHOULD THIS BE printf (_("aux\n")); ?

od-xcoff.c:934
      printf (_("vaddr    sgn mod sz type  symndx symbol\n")); <--- OOPS !

od-xcoff.c:947
      printf (_("%08x  %c   %c  %-2u "), <--- PLS, REMOVE THIS _(ONE)

od-xcoff.c:1001
          printf (_(" %-6u "), no); <--- PLS, REMOVE THIS _(ONE)

od-xcoff.c:1066
  printf (_("  import strtab len: %u\n"), <--- WHAT IS "strtab" ?

od-xcoff.c:1079
  /* WHAT IS "sc IFEW ty" ? WHAT ABOUT "pa name" ? */
  printf (_("     # value     sc IFEW ty class file  pa name\n"));

od-xcoff.c:1084
      printf (_("  %4u %08x %3u "), i,  <--- PLS, REMOVE THIS _(ONE)

od-xcoff.c:1087
      printf (_(" %3u %3u "),  <--- PLS, REMOVE THIS _(ONE)

od-xcoff.c:1114
      /* "vaddr" IS STILL THE SAME AS PREVIOUSLY ? IS "sec" sector OR
second(s) ? IS "sz" same as "size" ? */
      printf (_("  vaddr    sec    sz typ   sym\n"));

od-xcoff.c:1126
      printf (_("  %08x %3u %c%c %2u "),  <--- PLS, REMOVE THIS _(ONE)

od-xcoff.c:1137
        case 0:
          printf (_(".text"));  <--- PLS, REMOVE THIS _(ONE)
          break;
        case 1:
          printf (_(".data"));  <--- PLS, REMOVE THIS _(ONE)
          break;
        case 2:
          printf (_(".bss"));  <--- PLS, REMOVE THIS _(ONE)
          break;
        default:
          printf (_("%u"), symndx - 3);  <--- PLS, REMOVE THIS _(ONE)

od-xcoff.c:1201
      printf (_("  %02x     %02x "),  <--- PLS, REMOVE THIS _(ONE)
              (unsigned) bfd_get_8 (abfd, exceptab->e_lang), reason);
      if (reason == 0)
        xcoff32_print_symbol (data, addr);
      else
        printf (_("@%08x"), addr);  <--- PLS, REMOVE THIS _(ONE)

The following msgids need some comments for TRANSLATORS:

#: od-xcoff.c:1299
#, c-format
msgid " version: %u, lang: %u, global_link: %u, is_eprol: %u,
has_tboff: %u, int_proc: %u\n"

#: od-xcoff.c:1306
#, c-format
msgid " has_ctl: %u, tocless: %u, fp_pres: %u, log_abort: %u,
int_hndl: %u\n"   <--- PLS, REMOVE THIS _(ONE)

#: od-xcoff.c:1312
#, c-format
msgid " name_pres: %u, uses_alloca: %u, cl_dis_inv: %u, saves_cr: %u,
saves_lr: %u\n"  <--- PLS, REMOVE THIS _(ONE)

#: od-xcoff.c:1318
#, c-format
msgid " stores_bc: %u, fixup: %u, fpr_saved: %-2u, spare3: %u,
gpr_saved: %-2u\n"  <--- PLS, REMOVE THIS _(ONE)

#: od-xcoff.c:1324
#, c-format
msgid " fixparms: %-3u  floatparms: %-3u  parm_on_stk: %u\n"  <---
PLS, REMOVE THIS _(ONE)

#: od-xcoff.c:1337
#, c-format
msgid " parminfo: 0x%08x\n"  <--- PLS, REMOVE THIS _(ONE)

#: od-xcoff.c:1348
#, c-format
msgid " tb_offset: 0x%08x (start=0x%08x)\n" <--- OK, "start"

#: od-xcoff.c:1359
#, c-format
msgid " hand_mask_offset: 0x%08x\n"  <--- PLS, REMOVE THIS _(ONE)

#: od-xcoff.c:1370
#, c-format
msgid " number of CTL anchors: %u\n" <--- WHAT IS "CTL" ?

#: od-xcoff.c:1375
#, c-format
msgid "  CTL[%u]: %08x\n" <-- REMOVED OR TRANSLATED ?

#: od-xcoff.c:1407
#, c-format
msgid " alloca reg: %u\n" <-- "alloca" ?

#: readelf.c:4057 readelf.c:4132
msgid "symtab shndx"  <--- PLS, REMOVE THIS _(ONE) ??

#: readelf.c:5193
msgid "dynamic section image relas"  <--- WHAT IS "relas" ??

#: readelf.c:5399 readelf.c:5815 readelf.c:5830 readelf.c:6167
#, c-format
msgid "'%s'"  <--- PLS, REMOVE THIS _(ONE)

#: readelf.c:6666
#, c-format
msgid "  0x%02x "  <--- PLS, REMOVE THIS _(ONE)

#: readelf.c:6763
#, c-format
msgid "sp = sp + %ld"  <--- PLS, REMOVE THIS _(ONE) ??

#: readelf.c:8200
msgid "version need section" <-- SHOULD THIS ONE BE "version needs section" ??

#: readelf.c:8278
#, c-format
msgid "  Version need aux past end of section\n" <-- WHAT ABOUT THIS ONE ?

#: readelf.c:8283
#, c-format
msgid "  Version need past end of section\n" <-- AND THIS ONE ?

WHAT IS "GOT" IN THE FOLLOWING CONTEXT:

#: readelf.c:11936
msgid "GOT"

#: readelf.c:11937
#, c-format
msgid ""
"\n"
"Primary GOT:\n"
#: readelf.c:11979 readelf.c:12047
msgid "Ndx" <-- WHAT IS THIS ? Index ?

#  the Global Offset Table (GOT) ja the Procedure Linkage Table (PLT)
<-- I HAVE GUESSED
#: readelf.c:12032
msgid "PLT GOT" <-- IS THIS NEEDED ?

#: readelf.c:12033
#, c-format
msgid ""
"\n"
"PLT GOT:\n" <-- IS THIS NEEDED ?
"\n"

#: readelf.c:12269 readelf.c:12425
#, c-format
msgid "\n"  <--- PLS, REMOVE THIS _(ONE)

#: readelf.c:12371
#, c-format
msgid "PT_FIRSTMACH+%d"  <--- PLS, REMOVE THIS _(ONE)

#: readelf.c:12445
msgid "NT_VMS_TITLE"  <--- PLS, REMOVE THIS _(ONE)

#: readelf.c:12451
msgid "NT_VMS_LINKTIME"  <--- PLS, REMOVE THIS _(ONE)

#: readelf.c:12463
msgid "NT_VMS_ORIG_DYN"  <--- PLS, REMOVE THIS _(ONE)

#: readelf.c:12465
msgid "NT_VMS_PATCHTIME"  <--- PLS, REMOVE THIS _(ONE)

#: readelf.c:12494
msgid "   FP mode: 0x%016" <--- WHAT IS "FP" IN THIS CONTEXT ?

#: readelf.c:12513
#, c-format
msgid "   Manip date  : "  <--- WHAT IS "Manip" ?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]