]> git.lizzy.rs Git - plan9front.git/commitdiff
introduce signed intptr and %z format modifier for formating uintptr and intptr
authorcinap_lenrek <cinap_lenrek@felloff.net>
Thu, 7 Jan 2016 03:39:09 +0000 (04:39 +0100)
committercinap_lenrek <cinap_lenrek@felloff.net>
Thu, 7 Jan 2016 03:39:09 +0000 (04:39 +0100)
17 files changed:
386/include/u.h
68000/include/u.h
68020/include/u.h
alpha/include/u.h
amd64/include/u.h
arm/include/u.h
mips/include/u.h
power/include/u.h
power64/include/u.h
sparc/include/u.h
sparc64/include/u.h
spim/include/u.h
sys/include/libc.h
sys/src/9/port/lib.h
sys/src/cmd/cc/dpchk.c
sys/src/libc/fmt/dofmt.c
sys/src/libc/fmt/fmt.c

index ebccf02e870d2e41968bf919f0198841319c1304..ec4e5516131b0c0f6955665384cbe769c154b80e 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef signed char    schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long           intptr;
 typedef unsigned long  uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index 445edbfb4b406bead2a7bc1f1f337deebb1fdb67..fe9f79723251cbd1f9fa47969fe1c59eaa444bda 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef        signed char     schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long           intptr;
 typedef unsigned long  uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index d4942b8fbc96ad63133283909041cd4d7b5f1423..1eb2754db49d2a5c22028ac1ab50da682d97ead8 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef        signed char     schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long           intptr;
 typedef unsigned long  uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index 92fea5c7c462645e0633de0c0330700c6860dd4f..1be41658431e3f004b112321a3e93cf04fcc11c9 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef signed char    schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long           intptr;
 typedef unsigned long  uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index 742de10355ebff15afdda3465ed13c06b72093de..3ca2369422b38b8d697c9b0ae72d9f52830f239c 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef signed char    schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long long      intptr;
 typedef unsigned long long uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index 5a86e34d88d6239ea3c88fc86e830584a86d5e4c..47d75a07a149d6181ad8870ff96ff2596453d0ff 100644 (file)
@@ -7,6 +7,7 @@ typedef unsigned int    uint;
 typedef        signed char     schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long           intptr;
 typedef unsigned long  uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index c30ebd8827384618caab68df826ee9fa9ab124c3..f4c28fcb4505ac23bb296f710221e6f43212f74c 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef        signed char     schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long           intptr;
 typedef unsigned long  uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index 27a88d27416c0ae2d6accecc9954eea7106168e9..e2def0bc7c0e6d7df8044136eff602be0324571a 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef        signed char     schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long           intptr;
 typedef unsigned long  uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index 7f4c22c9639157149d77be2a3b4e1ddbe284b46e..0f059498b031de9f23bb28bd2a327793b48b6f56 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef        signed char     schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long long      intptr;
 typedef unsigned long long uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index fe9fbff2d4a10d8721c454a9492276f9a70902ad..3fce8ec512f6645b38c3c339ea7d7476a35841a3 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef        signed char     schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long           intptr;
 typedef unsigned long  uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index fe9fbff2d4a10d8721c454a9492276f9a70902ad..3fce8ec512f6645b38c3c339ea7d7476a35841a3 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef        signed char     schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long           intptr;
 typedef unsigned long  uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index c30ebd8827384618caab68df826ee9fa9ab124c3..f4c28fcb4505ac23bb296f710221e6f43212f74c 100644 (file)
@@ -6,6 +6,7 @@ typedef unsigned int    uint;
 typedef        signed char     schar;
 typedef        long long       vlong;
 typedef        unsigned long long uvlong;
+typedef long           intptr;
 typedef unsigned long  uintptr;
 typedef unsigned long  usize;
 typedef        uint            Rune;
index bd273d8b8e23903c313485889927a100c4ee0bae..095615ad76c080551d416d1c8ab16316ae4f21d0 100644 (file)
@@ -194,6 +194,14 @@ extern     Rune*   runefmtstrflush(Fmt*);
 #pragma        varargck        type    "lo"    ulong
 #pragma        varargck        type    "lx"    ulong
 #pragma        varargck        type    "lb"    ulong
+#pragma varargck       type    "zd"    intptr
+#pragma varargck       type    "zo"    intptr
+#pragma varargck       type    "zx"    intptr
+#pragma varargck       type    "zb"    intptr
+#pragma varargck       type    "zd"    uintptr
+#pragma varargck       type    "zo"    uintptr
+#pragma varargck       type    "zx"    uintptr
+#pragma varargck       type    "zb"    uintptr
 #pragma        varargck        type    "d"     int
 #pragma        varargck        type    "o"     int
 #pragma        varargck        type    "x"     int
index 67d08e502b14ef37e7299043278dc83b51b9c95f..1dbccbcc560479c69739685415e29242d3966dac 100644 (file)
@@ -98,6 +98,14 @@ extern       int     sprint(char*, char*, ...);
 #pragma        varargck        type    "lb"    ulong
 #pragma        varargck        type    "ld"    ulong
 #pragma        varargck        type    "lx"    ulong
+#pragma varargck       type    "zd"    intptr
+#pragma varargck       type    "zo"    intptr
+#pragma varargck       type    "zx"    intptr
+#pragma varargck       type    "zb"    intptr
+#pragma varargck       type    "zd"    uintptr
+#pragma varargck       type    "zo"    uintptr
+#pragma varargck       type    "zx"    uintptr
+#pragma varargck       type    "zb"    uintptr
 #pragma        varargck        type    "b"     int
 #pragma        varargck        type    "d"     int
 #pragma        varargck        type    "x"     int
index 217e005c3655fe4f42923b41b0f09f09f56d0653..a08dd6970728720df7b3d8d5d1287116310b028e 100644 (file)
@@ -165,6 +165,7 @@ arginit(void)
 
        argflag('*', Fstar);
        argflag('l', Fl);
+       argflag('z', ewidth[TVLONG]==ewidth[TIND] ? Fvl : Fl);
 
        argflag('o', Fverb);
        flagbits['x'] = flagbits['o'];
index 95852f5c201d1566b589e759e1fdd5c3f5e4c1fc..bb6ee99a5d6b3a21c1c1d59fbd0401610a13925e 100644 (file)
@@ -504,6 +504,11 @@ _flagfmt(Fmt *f)
                        f->flags |= FmtVLong;
                f->flags |= FmtLong;
                break;
+       case 'z':
+               f->flags |= FmtLong;
+               if(sizeof(uintptr) == sizeof(uvlong))
+                       f->flags |= FmtVLong;
+               break;
        }
        return 1;
 }
index a1dee68d589a8141bbb8b4a4937278b838c145d9..84f4004b5c3df9f8ef62422ee44e805e7eea3647 100644 (file)
@@ -48,6 +48,7 @@ static Convfmt knownfmt[] = {
        's',    _strfmt,
        'u',    _flagfmt,
        'x',    _ifmt,
+       'z',    _flagfmt,
        0,      nil,
 };