stb_sprintf: fix 32 vs 64-bit sizes for format widts j/z/t
This commit is contained in:
parent
6e7e5c5787
commit
619cdb6a3b
@ -15,6 +15,7 @@
|
||||
// Rohit Nirmal
|
||||
// Marcin Wojdyr
|
||||
// Leonard Ritter
|
||||
// Stefano Zanotti
|
||||
//
|
||||
// LICENSE:
|
||||
//
|
||||
@ -159,6 +160,7 @@ PERFORMANCE vs MSVC 2008 32-/64-bit (GCC is even slower than MSVC):
|
||||
#endif
|
||||
|
||||
#include <stdarg.h> // for va_list()
|
||||
#include <stddef.h> // size_t, ptrdiff_t
|
||||
|
||||
#ifndef STB_SPRINTF_MIN
|
||||
#define STB_SPRINTF_MIN 512 // how many characters per callback
|
||||
@ -457,13 +459,16 @@ STBSP__PUBLICDEF int STB_SPRINTF_DECORATE(vsprintfcb)(STBSP_SPRINTFCB *callback,
|
||||
break;
|
||||
// are we 64-bit on intmax? (c99)
|
||||
case 'j':
|
||||
fl |= STBSP__INTMAX;
|
||||
fl |= (sizeof(size_t) == 8) ? STBSP__INTMAX : 0;
|
||||
++f;
|
||||
break;
|
||||
// are we 64-bit on size_t or ptrdiff_t? (c99)
|
||||
case 'z':
|
||||
fl |= (sizeof(ptrdiff_t) == 8) ? STBSP__INTMAX : 0;
|
||||
++f;
|
||||
break;
|
||||
case 't':
|
||||
fl |= ((sizeof(char *) == 8) ? STBSP__INTMAX : 0);
|
||||
fl |= (sizeof(ptrdiff_t) == 8) ? STBSP__INTMAX : 0;
|
||||
++f;
|
||||
break;
|
||||
// are we 64-bit (msft style)
|
||||
|
Loading…
Reference in New Issue
Block a user