introduce signed intptr and %z format modifier for formating uintptr and intptr
This commit is contained in:
parent
59245c73f0
commit
3e38194d72
17 changed files with 35 additions and 0 deletions
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long intptr;
|
||||||
typedef unsigned long uintptr;
|
typedef unsigned long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long intptr;
|
||||||
typedef unsigned long uintptr;
|
typedef unsigned long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long intptr;
|
||||||
typedef unsigned long uintptr;
|
typedef unsigned long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long intptr;
|
||||||
typedef unsigned long uintptr;
|
typedef unsigned long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long long intptr;
|
||||||
typedef unsigned long long uintptr;
|
typedef unsigned long long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -7,6 +7,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long intptr;
|
||||||
typedef unsigned long uintptr;
|
typedef unsigned long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long intptr;
|
||||||
typedef unsigned long uintptr;
|
typedef unsigned long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long intptr;
|
||||||
typedef unsigned long uintptr;
|
typedef unsigned long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long long intptr;
|
||||||
typedef unsigned long long uintptr;
|
typedef unsigned long long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long intptr;
|
||||||
typedef unsigned long uintptr;
|
typedef unsigned long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long intptr;
|
||||||
typedef unsigned long uintptr;
|
typedef unsigned long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -6,6 +6,7 @@ typedef unsigned int uint;
|
||||||
typedef signed char schar;
|
typedef signed char schar;
|
||||||
typedef long long vlong;
|
typedef long long vlong;
|
||||||
typedef unsigned long long uvlong;
|
typedef unsigned long long uvlong;
|
||||||
|
typedef long intptr;
|
||||||
typedef unsigned long uintptr;
|
typedef unsigned long uintptr;
|
||||||
typedef unsigned long usize;
|
typedef unsigned long usize;
|
||||||
typedef uint Rune;
|
typedef uint Rune;
|
||||||
|
|
|
@ -194,6 +194,14 @@ extern Rune* runefmtstrflush(Fmt*);
|
||||||
#pragma varargck type "lo" ulong
|
#pragma varargck type "lo" ulong
|
||||||
#pragma varargck type "lx" ulong
|
#pragma varargck type "lx" ulong
|
||||||
#pragma varargck type "lb" 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 "d" int
|
||||||
#pragma varargck type "o" int
|
#pragma varargck type "o" int
|
||||||
#pragma varargck type "x" int
|
#pragma varargck type "x" int
|
||||||
|
|
|
@ -98,6 +98,14 @@ extern int sprint(char*, char*, ...);
|
||||||
#pragma varargck type "lb" ulong
|
#pragma varargck type "lb" ulong
|
||||||
#pragma varargck type "ld" ulong
|
#pragma varargck type "ld" ulong
|
||||||
#pragma varargck type "lx" 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 "b" int
|
||||||
#pragma varargck type "d" int
|
#pragma varargck type "d" int
|
||||||
#pragma varargck type "x" int
|
#pragma varargck type "x" int
|
||||||
|
|
|
@ -165,6 +165,7 @@ arginit(void)
|
||||||
|
|
||||||
argflag('*', Fstar);
|
argflag('*', Fstar);
|
||||||
argflag('l', Fl);
|
argflag('l', Fl);
|
||||||
|
argflag('z', ewidth[TVLONG]==ewidth[TIND] ? Fvl : Fl);
|
||||||
|
|
||||||
argflag('o', Fverb);
|
argflag('o', Fverb);
|
||||||
flagbits['x'] = flagbits['o'];
|
flagbits['x'] = flagbits['o'];
|
||||||
|
|
|
@ -504,6 +504,11 @@ _flagfmt(Fmt *f)
|
||||||
f->flags |= FmtVLong;
|
f->flags |= FmtVLong;
|
||||||
f->flags |= FmtLong;
|
f->flags |= FmtLong;
|
||||||
break;
|
break;
|
||||||
|
case 'z':
|
||||||
|
f->flags |= FmtLong;
|
||||||
|
if(sizeof(uintptr) == sizeof(uvlong))
|
||||||
|
f->flags |= FmtVLong;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,6 +48,7 @@ static Convfmt knownfmt[] = {
|
||||||
's', _strfmt,
|
's', _strfmt,
|
||||||
'u', _flagfmt,
|
'u', _flagfmt,
|
||||||
'x', _ifmt,
|
'x', _ifmt,
|
||||||
|
'z', _flagfmt,
|
||||||
0, nil,
|
0, nil,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue