This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[v3] limits fixes for wchar_t, s390x
- To: gcc-patches at gcc dot gnu dot org
- Subject: [v3] limits fixes for wchar_t, s390x
- From: Benjamin Kosnik <bkoz at redhat dot com>
- Date: Thu, 25 Oct 2001 19:12:43 -0700
tested x86/linux
As per bug reports.
2001-10-25 Benjamin Kosnik <bkoz@redhat.com>
Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
* config/os/gnu-linux/bits/os_defines.h: Set to 64 bit longs with
__s390x__ only.
* include/bits/std_limits.h: Fix wchar_t issues.
* config/os/aix/bits/os_defines.h: Fix.
Index: config/cpu/s390/bits/cpu_limits.h
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/config/cpu/s390/bits/cpu_limits.h,v
retrieving revision 1.1
diff -c -p -r1.1 cpu_limits.h
*** cpu_limits.h 2001/10/23 21:40:29 1.1
--- cpu_limits.h 2001/10/26 02:11:03
***************
*** 28,35 ****
#ifndef _GLIBCPP_CPU_LIMITS
#define _GLIBCPP_CPU_LIMITS 1
- #define __glibcpp_long_bits 64
-
#define __glibcpp_long_double_bits 64
#endif
--- 28,33 ----
Index: config/os/gnu-linux/bits/os_defines.h
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/config/os/gnu-linux/bits/os_defines.h,v
retrieving revision 1.16
diff -c -p -r1.16 os_defines.h
*** os_defines.h 2001/10/23 21:40:29 1.16
--- os_defines.h 2001/10/26 02:11:04
*************** typedef __loff_t __off64_t;
*** 58,75 ****
// our definitions.
#define __NO_MATH_INLINES
! #endif /* not glibc 2.1 or higher. */
! # if defined __GLIBC__ && __GLIBC__ >= 2
// We must not see the optimized string functions GNU libc defines.
! # define __NO_STRING_INLINES
! # endif
!
! #if defined(__sparc__) && defined(__arch64__)
! #define __glibcpp_long_bits 64
#endif
! #ifdef __powerpc64__
#define __glibcpp_long_bits 64
#endif
--- 58,71 ----
// our definitions.
#define __NO_MATH_INLINES
! #endif
! #if defined __GLIBC__ && __GLIBC__ >= 2
// We must not see the optimized string functions GNU libc defines.
! #define __NO_STRING_INLINES
#endif
! #if defined(__powerpc64__) || defined(__s390x__) || (defined(__sparc__) && defined(__arch64__))
#define __glibcpp_long_bits 64
#endif
Index: include/bits/std_limits.h
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/include/bits/std_limits.h,v
retrieving revision 1.8
diff -c -p -r1.8 std_limits.h
*** std_limits.h 2001/10/23 21:40:30 1.8
--- std_limits.h 2001/10/26 02:11:10
***************
*** 96,102 ****
#define __glibcpp_wchar_t_bits 32
#endif
#ifndef __glibcpp_wchar_t_is_signed
! #define __glibcpp_wchar_t_is_signed false
#endif
#ifdef _GLIBCPP_USE_LONG_LONG
#ifndef __glibcpp_long_long_bits
--- 96,102 ----
#define __glibcpp_wchar_t_bits 32
#endif
#ifndef __glibcpp_wchar_t_is_signed
! #define __glibcpp_wchar_t_is_signed true
#endif
#ifdef _GLIBCPP_USE_LONG_LONG
#ifndef __glibcpp_long_long_bits