diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4eb8d9ca898..221d8dfd6e0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2003-08-07 John David Anglin + + PR c++/11712 + * pa-hpux.h, pa-hpux10.h, pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define + __STDC_EXT__ when using C++ dialect. + 2003-08-07 J"orn Rennecke * sh.c (calc_live_regs): If the return address pointer is live, diff --git a/gcc/config/pa/pa-hpux.h b/gcc/config/pa/pa-hpux.h index 5b99ee5aadc..9287924f7b7 100644 --- a/gcc/config/pa/pa-hpux.h +++ b/gcc/config/pa/pa-hpux.h @@ -28,6 +28,12 @@ Boston, MA 02111-1307, USA. */ #define SIZE_TYPE "unsigned int" #define PTRDIFF_TYPE "int" +/* GCC always defines __STDC__. HP C++ compilers don't define it. This + causes trouble when sys/stdsyms.h is included. As a work around, + we define __STDC_EXT__. A similar situation exists with respect to + the definition of __cplusplus. We define _INCLUDE_LONGLONG + to prevent nlist.h from defining __STDC_32_MODE__ (no longlong + support). */ #undef TARGET_OS_CPP_BUILTINS #define TARGET_OS_CPP_BUILTINS() \ do \ @@ -46,6 +52,7 @@ Boston, MA 02111-1307, USA. */ { \ builtin_define ("_HPUX_SOURCE"); \ builtin_define ("_INCLUDE_LONGLONG"); \ + builtin_define ("__STDC_EXT__"); \ } \ else if (!flag_iso) \ { \ diff --git a/gcc/config/pa/pa-hpux10.h b/gcc/config/pa/pa-hpux10.h index 78ac2afef0d..c6740635478 100644 --- a/gcc/config/pa/pa-hpux10.h +++ b/gcc/config/pa/pa-hpux10.h @@ -20,6 +20,12 @@ along with GNU CC; see the file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +/* GCC always defines __STDC__. HP C++ compilers don't define it. This + causes trouble when sys/stdsyms.h is included. As a work around, + we define __STDC_EXT__. A similar situation exists with respect to + the definition of __cplusplus. We define _INCLUDE_LONGLONG + to prevent nlist.h from defining __STDC_32_MODE__ (no longlong + support). */ #undef TARGET_OS_CPP_BUILTINS #define TARGET_OS_CPP_BUILTINS() \ do \ @@ -36,6 +42,7 @@ Boston, MA 02111-1307, USA. */ { \ builtin_define ("_HPUX_SOURCE"); \ builtin_define ("_INCLUDE_LONGLONG"); \ + builtin_define ("__STDC_EXT__"); \ } \ else if (!flag_iso) \ { \ diff --git a/gcc/config/pa/pa-hpux11.h b/gcc/config/pa/pa-hpux11.h index 5a35ace408b..ebf3dc4ec33 100644 --- a/gcc/config/pa/pa-hpux11.h +++ b/gcc/config/pa/pa-hpux11.h @@ -18,6 +18,12 @@ along with GNU CC; see the file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +/* GCC always defines __STDC__. HP C++ compilers don't define it. This + causes trouble when sys/stdsyms.h is included. As a work around, + we define __STDC_EXT__. A similar situation exists with respect to + the definition of __cplusplus. We define _INCLUDE_LONGLONG + to prevent nlist.h from defining __STDC_32_MODE__ (no longlong + support). */ #undef TARGET_OS_CPP_BUILTINS #define TARGET_OS_CPP_BUILTINS() \ do \ @@ -34,6 +40,7 @@ Boston, MA 02111-1307, USA. */ { \ builtin_define ("_HPUX_SOURCE"); \ builtin_define ("_INCLUDE_LONGLONG"); \ + builtin_define ("__STDC_EXT__"); \ } \ else \ { \