From 28fe4f87e0b815f4c0d9b80e0a9f3e6a53c649b3 Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Tue, 25 Oct 2016 11:47:18 +0100 Subject: [PATCH] Define __STDC_CONSTANT_MACROS/__STDC_LIMIT_MACROS again. Revert commit f6abaf7a4088 (gdb: no longer define __STDC_CONSTANT_MACROS/__STDC_LIMIT_MACROS), with the tweak suggested in that commit's log: the macros are now defined before any system header is included. This should fix AIX: https://sourceware.org/ml/gdb-patches/2016-10/msg00682.html gdb/ChangeLog: 2016-10-25 Pedro Alves * common/common-defs.h (__STDC_CONSTANT_MACROS) (__STDC_LIMIT_MACROS): Define. --- gdb/ChangeLog | 5 +++++ gdb/common/common-defs.h | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 5541086d55..40fab9bcd1 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2016-10-25 Pedro Alves + + * common/common-defs.h (__STDC_CONSTANT_MACROS) + (__STDC_LIMIT_MACROS): Define. + 2016-10-25 Yao Qi PR gdb/20716 diff --git a/gdb/common/common-defs.h b/gdb/common/common-defs.h index 9b5d853c25..3d5ff18827 100644 --- a/gdb/common/common-defs.h +++ b/gdb/common/common-defs.h @@ -27,6 +27,19 @@ #include "build-gnulib/config.h" #endif +/* From: + https://www.gnu.org/software/gnulib/manual/html_node/stdint_002eh.html + + "On some hosts that predate C++11, when using C++ one must define + __STDC_CONSTANT_MACROS to make visible the definitions of constant + macros such as INTMAX_C, and one must define __STDC_LIMIT_MACROS to + make visible the definitions of limit macros such as INTMAX_MAX.". + + Must do this before including any system header, since system + headers may include stdint.h. */ +#define __STDC_CONSTANT_MACROS 1 +#define __STDC_LIMIT_MACROS 1 + #include #include #include