| Index: src/base/macros.h
|
| diff --git a/src/base/macros.h b/src/base/macros.h
|
| index 382c30bd221b11fb7f2f3c9801157a33ccc20e49..3f09b2b9ce8af8939d64f85418a2e64a98387ad0 100644
|
| --- a/src/base/macros.h
|
| +++ b/src/base/macros.h
|
| @@ -5,8 +5,13 @@
|
| #ifndef V8_BASE_MACROS_H_
|
| #define V8_BASE_MACROS_H_
|
|
|
| +#include <stddef.h>
|
| +#include <stdint.h>
|
| +
|
| +#include <cstring>
|
| +
|
| +#include "src/base/build_config.h"
|
| #include "src/base/compiler-specific.h"
|
| -#include "src/base/format-macros.h"
|
| #include "src/base/logging.h"
|
|
|
|
|
| @@ -269,25 +274,21 @@
|
| #define V8PRIdPTR V8_PTR_PREFIX "d"
|
| #define V8PRIuPTR V8_PTR_PREFIX "u"
|
|
|
| -// ptrdiff_t is 't' according to the standard, but MSVC uses 'I'.
|
| -#if V8_CC_MSVC
|
| -#define V8PRIxPTRDIFF "Ix"
|
| -#define V8PRIdPTRDIFF "Id"
|
| -#define V8PRIuPTRDIFF "Iu"
|
| -#else
|
| -#define V8PRIxPTRDIFF "tx"
|
| -#define V8PRIdPTRDIFF "td"
|
| -#define V8PRIuPTRDIFF "tu"
|
| -#endif
|
| -
|
| // Fix for Mac OS X defining uintptr_t as "unsigned long":
|
| #if V8_OS_MACOSX
|
| #undef V8PRIxPTR
|
| #define V8PRIxPTR "lx"
|
| -#undef V8PRIdPTR
|
| -#define V8PRIdPTR "ld"
|
| #undef V8PRIuPTR
|
| #define V8PRIuPTR "lxu"
|
| +#endif
|
| +
|
| +// GCC on S390 31-bit expands 'size_t' to 'long unsigned int'
|
| +// instead of 'int', resulting in compilation errors with %d.
|
| +// The printf format specifier needs to be %zd instead.
|
| +#if V8_HOST_ARCH_S390 && !V8_HOST_ARCH_64_BIT
|
| +#define V8_SIZET_PREFIX "z"
|
| +#else
|
| +#define V8_SIZET_PREFIX ""
|
| #endif
|
|
|
| // The following macro works on both 32 and 64-bit platforms.
|
|
|