From 05cc5bd9dca91dfad3eec076b1bfdfef868f0987 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 18 May 1999 08:37:39 +0000 Subject: [PATCH] Update. 1999-05-04 Zack Weinberg * argp/argp.h, assert/assert.h, misc/sys/cdefs.h, posix/sys/types.h: Handle the case of __GNUC__=3, __GNUC_MINOR__=(anything). --- ChangeLog | 6 ++++++ argp/argp.h | 9 ++++++--- assert/assert.h | 24 +++++++++++++++++------- misc/sys/cdefs.h | 2 +- posix/sys/types.h | 2 +- 5 files changed, 31 insertions(+), 12 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3df33a74f1..1ae439395e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +1999-05-04 Zack Weinberg + + * argp/argp.h, assert/assert.h, misc/sys/cdefs.h, + posix/sys/types.h: Handle the case of __GNUC__=3, + __GNUC_MINOR__=(anything). + 1999-05-18 Andreas Jaeger * sysdeps/i386/i486/bits/string.h (rawmemchr): Remove unneccessary diff --git a/argp/argp.h b/argp/argp.h index eb570f1653..cfa7116fe9 100644 --- a/argp/argp.h +++ b/argp/argp.h @@ -1,5 +1,5 @@ /* Hierarchial argument parsing, layered over getopt. - Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. + Copyright (C) 1995, 1996, 1997, 1998, 1999 Free Software Foundation, Inc. This file is part of the GNU C Library. Written by Miles Bader . @@ -38,13 +38,16 @@ typedef int error_t; #endif #ifndef __P -# if (defined __STDC__ && __STDC__) || defined __cplusplus -# if defined __GNUC__ && defined __cplusplus && __GNUC_MINOR__ >= 8 +# ifdef __cplusplus +# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 7) # define __P(args) args throw () # else # define __P(args) args # endif # define __PMT(args) args +# elif defined __STDC__ && __STDC__ > 0 +# define __P(args) args +# define __PMT(args) args # else # define __P(args) () # define __PMT(args) () diff --git a/assert/assert.h b/assert/assert.h index ec54f64c05..bbff9417f4 100644 --- a/assert/assert.h +++ b/assert/assert.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 92, 94, 95, 96, 97, 98 Free Software Foundation, Inc. +/* Copyright (C) 1991,92,94,95,96,97,98,99 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -87,13 +87,23 @@ __END_DECLS /* Version 2.4 and later of GCC define a magical variable `__PRETTY_FUNCTION__' which contains the name of the function currently being defined. - This is broken in G++ before version 2.6. */ -# if (!defined __GNUC__ || __GNUC__ < 2 || \ - __GNUC_MINOR__ < (defined __cplusplus ? 6 : 4)) -# define __ASSERT_FUNCTION ((__const char *) 0) -# else # define __ASSERT_FUNCTION __PRETTY_FUNCTION__ + This is broken in G++ before version 2.6. + C9x has a similar variable called __func__, but prefer the GCC one since + it demangles C++ function names. */ +# ifdef __GNUC__ +# if __GNUC__ > 2 || (__GNUC__ == 2 \ + && __GNUC_MINOR__ >= (defined __cplusplus ? 6 : 4)) +# define __ASSERT_FUNCTION __PRETTY_FUNCTION__ +# else +# define __ASSERT_FUNCTION ((__const char *) 0) +# endif +# else +# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L +# define __ASSERT_FUNCTION __func__ +# else +# define __ASSERT_FUNCTION ((__const char *) 0) +# endif # endif - #endif /* NDEBUG. */ diff --git a/misc/sys/cdefs.h b/misc/sys/cdefs.h index bc8d7c5cdb..6d4bc62e14 100644 --- a/misc/sys/cdefs.h +++ b/misc/sys/cdefs.h @@ -33,7 +33,7 @@ /* GCC can always grok prototypes. For C++ programs we add throw() to help it optimize the function calls. But this works only with gcc 2.8.x and egcs. */ -# if defined __cplusplus && __GNUC_MINOR__ >= 8 +# if defined __cplusplus && (__GNUC__ >= 3 || __GNUC_MINOR__ >= 8) # define __THROW throw () # else # define __THROW diff --git a/posix/sys/types.h b/posix/sys/types.h index 3966a389a1..8ba320006b 100644 --- a/posix/sys/types.h +++ b/posix/sys/types.h @@ -132,7 +132,7 @@ typedef unsigned int uint; /* These size-specific names are used by some of the inet code. */ -#if !defined __GNUC__ || __GNUC__ < 2 || __GNUC_MINOR__ < 7 +#if !defined __GNUC__ || __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) /* These types are defined by the ISO C 9x header . */ # ifndef __int8_t_defined