]> Cypherpunks repositories - gostls13.git/commitdiff
ld: fix build on Plan 9
authorLucio De Re <lucio.dere@gmail.com>
Mon, 25 Jul 2011 17:45:50 +0000 (13:45 -0400)
committerRuss Cox <rsc@golang.org>
Mon, 25 Jul 2011 17:45:50 +0000 (13:45 -0400)
ld/data.c:
. Format specifier with corresponding cast to cater for all
  architectures (llux and vlong).

ld/ldelf.c:
ld/ldmacho.c:
. Missing "pn" argument in diag() calls.

ld/ldpe.c:
. Dropped "sym->sectnum" in diag() call.
. Typo in a comment.

ld/lib.h:
. Added varargck pragma for "O".

R=rsc
CC=golang-dev
https://golang.org/cl/4749042

src/cmd/ld/data.c
src/cmd/ld/ldelf.c
src/cmd/ld/ldmacho.c
src/cmd/ld/ldpe.c
src/cmd/ld/lib.h

index 168f3e6d1c85fe8ae7857925294ec014ab62e66a..974c08708f89ff900b887ba0084bb66e515753fc 100644 (file)
@@ -512,7 +512,7 @@ codeblk(int32 addr, int32 size)
                                epc = p->link->pc;
                        else
                                epc = sym->value + sym->size;
-                       Bprint(&bso, "%.6ux\t", p->pc);
+                       Bprint(&bso, "%.6llux\t", (uvlong)p->pc);
                        q = sym->p + p->pc - sym->value;
                        n = epc - p->pc;
                        Bprint(&bso, "%-20.*I | %P\n", (int)n, q, p);
index 8334e988e4b01adaca304231ecd73ea96c1d9eb6..924687867b6c52c078140338eee083e9399becaa 100644 (file)
@@ -398,13 +398,13 @@ ldelf(Biobuf *f, char *pkg, int64 len, char *pn)
                goto bad;
 
        if(e->e16(hdr->type) != ElfTypeRelocatable) {
-               diag("%s: elf but not elf relocatable object");
+               diag("%s: elf but not elf relocatable object", pn);
                return;
        }
 
        switch(thechar) {
        default:
-               diag("%s: elf %s unimplemented", thestring);
+               diag("%s: elf %s unimplemented", pn, thestring);
                return;
        case '5':
                if(e != &le || obj->machine != ElfMachArm || hdr->ident[4] != ElfClass32) {
index abbc3b3cdb3eaa6a1ee4c1b58194171dcab976d8..3888487673f291e7ac21f879721c96a372b2c7fb 100644 (file)
@@ -480,7 +480,7 @@ ldmacho(Biobuf *f, char *pkg, int64 len, char *pn)
        
        switch(thechar) {
        default:
-               diag("%s: mach-o %s unimplemented", thestring);
+               diag("%s: mach-o %s unimplemented", pn, thestring);
                return;
        case '6':
                if(e != &le || m->cputype != MachoCpuAmd64) {
index c2b34eee6b58927064cc1e266f55779890f21acf..68055707562ec6817fce2cd5f220d6fbe19e684d 100644 (file)
@@ -338,7 +338,7 @@ ldpe(Biobuf *f, char *pkg, int64 len, char *pn)
                        if(sect->sym == 0)
                                diag("%s: %s sym == 0!", pn, s->name);
                } else {
-                       diag("%s: %s sectnum <0!", pn, s->name, sym->sectnum);
+                       diag("%s: %s sectnum < 0!", pn, s->name);
                }
 
                if(sect == nil) 
@@ -383,7 +383,7 @@ map(PeObj *obj, PeSect *sect)
                return 0;
 
        sect->base = mal(sect->sh.SizeOfRawData);
-       if(sect->sh.PointerToRawData == 0) // .bss don't has data in object file.
+       if(sect->sh.PointerToRawData == 0) // .bss doesn't have data in object file
                return 0;
        werrstr("short read");
        if(Bseek(obj->f, obj->base+sect->sh.PointerToRawData, 0) < 0 || 
index 03a1d5806dbd3777b33455d5b2a63a3593ee999b..e226f0122cdcd40079d220f14c79b1e995c7b2e0 100644 (file)
@@ -277,6 +277,8 @@ extern      Header  headers[];
 int    headtype(char*);
 
 int    Yconv(Fmt*);
+
+#pragma        varargck        type    "O"     int
 #pragma        varargck        type    "Y"     Sym*
 
 // buffered output