Index: include/grub/types.h =================================================================== --- include/grub/types.h (revisiĆ³n: 2439) +++ include/grub/types.h (copia de trabajo) @@ -58,23 +58,63 @@ # endif #endif -/* Define various wide integers. */ +/* Define various wide integers and their format specifiers. */ typedef signed char grub_int8_t; typedef short grub_int16_t; typedef int grub_int32_t; +#define GPRIi8 "i" +#define GPRIi16 "i" +#define GPRIi32 "i" +#define GPRId8 "d" +#define GPRId16 "d" +#define GPRId32 "d" +#define GINT8_C(x) (x) +#define GINT16_C(x) (x) +#define GINT32_C(x) (x) #if GRUB_CPU_SIZEOF_VOID_P == 8 typedef long grub_int64_t; +#define GPRIi64 "li" +#define GPRId64 "ld" +#define GINT64_C(x) (x ## L) #else typedef long long grub_int64_t; +#define GPRIi64 "lli" +#define GPRId64 "lld" +#define GINT64_C(x) (x ## LL) #endif typedef unsigned char grub_uint8_t; typedef unsigned short grub_uint16_t; typedef unsigned grub_uint32_t; +#define GPRIu8 "u" +#define GPRIu16 "u" +#define GPRIu32 "u" +#define GPRIo8 "o" +#define GPRIo16 "o" +#define GPRIo32 "o" +#define GPRIx8 "x" +#define GPRIx16 "x" +#define GPRIx32 "x" +#define GPRIX8 "X" +#define GPRIX16 "X" +#define GPRIX32 "X" +#define GUINT8_C(x) (x ## U) +#define GUINT16_C(x) (x ## U) +#define GUINT32_C(x) (x ## U) #if GRUB_CPU_SIZEOF_VOID_P == 8 typedef unsigned long grub_uint64_t; +#define GPRIu64 "lu" +#define GPRIo64 "lo" +#define GPRIx64 "lx" +#define GPRIX64 "lX" +#define GUINT64_C(x) (x ## UL) #else typedef unsigned long long grub_uint64_t; +#define GPRIu64 "llu" +#define GPRIo64 "llo" +#define GPRIx64 "llx" +#define GPRIX64 "llX" +#define GUINT64_C(x) (x ## ULL) #endif /* Misc types. */