From: Marek Polacek Date: Wed, 26 Sep 2012 10:58:36 +0000 (+0200) Subject: Fix up definitions for older compilers. X-Git-Tag: upstream/2.20~3261 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b7bfe116e6304da848759b69a6d713da3e93e936;p=platform%2Fupstream%2Flinaro-glibc.git Fix up definitions for older compilers. --- diff --git a/ChangeLog b/ChangeLog index a477ba2..123f339 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2012-09-26 Marek Polacek + + [BZ #14530] + [BZ #13741] + * misc/sys/cdefs.h: Define __extern_inline and __extern_always_inline + for C++ and GCC <4.3 as well as for non GCC compilers. + 2012-09-26 Markus Trippelsdorf * sysdeps/x86_64/fpu/libm-test-ulps: Update. diff --git a/NEWS b/NEWS index 1612b6f..cd0c579 100644 --- a/NEWS +++ b/NEWS @@ -10,11 +10,11 @@ Version 2.17 * The following bugs are resolved with this release: 1349, 3479, 5044, 5400, 6778, 6808, 9685, 9914, 10014, 10038, 11607, - 13412, 13542, 13629, 13679, 13696, 13717, 13939, 13966, 14042, 14090, - 14150, 14151, 14154, 14157, 14166, 14173, 14195, 14237, 14252, 14283, - 14298, 14303, 14307, 14328, 14331, 14336, 14337, 14347, 14349, 14459, - 14476, 14505, 14510, 14516, 14518, 14519, 14532, 14538, 14544, 14545, - 14562, 14576, 14579, 14583, 14587, 14621. + 13412, 13542, 13629, 13679, 13696, 13717, 13741, 13939, 13966, 14042, + 14090, 14150, 14151, 14154, 14157, 14166, 14173, 14195, 14237, 14252, + 14283, 14298, 14303, 14307, 14328, 14331, 14336, 14337, 14347, 14349, + 14459, 14476, 14505, 14510, 14516, 14518, 14519, 14530, 14532, 14538, + 14544, 14545, 14562, 14576, 14579, 14583, 14587, 14621. * Support for STT_GNU_IFUNC symbols added for s390 and s390x. Optimized versions of memcpy, memset, and memcmp added for System z10 and diff --git a/misc/sys/cdefs.h b/misc/sys/cdefs.h index b94147e..fb6c959 100644 --- a/misc/sys/cdefs.h +++ b/misc/sys/cdefs.h @@ -320,7 +320,7 @@ /* GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99 inline semantics, unless -fgnu89-inline is used. */ -#if !defined __cplusplus || __GNUC_PREREQ (4,3) +#if (!defined __cplusplus || __GNUC_PREREQ (4,3)) && defined __GNUC__ # if defined __GNUC_STDC_INLINE__ || defined __cplusplus # define __extern_inline extern __inline __attribute__ ((__gnu_inline__)) # define __extern_always_inline \ @@ -329,6 +329,13 @@ # define __extern_inline extern __inline # define __extern_always_inline extern __always_inline # endif +#elif defined __GNUC__ /* C++ and GCC <4.3. */ +# define __extern_inline extern __inline +# define __extern_always_inline \ + extern __always_inline +#else /* Not GCC. */ +# define __extern_inline /* Ignore */ +# define __extern_always_inline /* Ignore */ #endif /* GCC 4.3 and above allow passing all anonymous arguments of an