This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH] Don't define __CORRECT_ISO_CPP_STRING_H_PROTO for non-GCC compilers
- From: Andreas Schwab <schwab at suse dot de>
- To: libc-alpha at sourceware dot org
- Date: Tue, 24 Feb 2015 12:49:29 +0100
- Subject: [PATCH] Don't define __CORRECT_ISO_CPP_STRING_H_PROTO for non-GCC compilers
- Authentication-results: sourceware.org; auth=none
The implementation of __CORRECT_ISO_CPP_STRING_H_PROTO requires support
for asm aliases, thus it cannot be defined for strict C++.
Andreas.
[BZ #17631]
* string/string.h (__CORRECT_ISO_CPP_STRING_H_PROTO): Don't define
for non-GCC compilers.
* string/strings.h (__CORRECT_ISO_CPP_STRINGS_H_PROTO):
Likewise.
---
string/string.h | 8 ++------
string/strings.h | 8 ++------
2 files changed, 4 insertions(+), 12 deletions(-)
diff --git a/string/string.h b/string/string.h
index f6520a9..54a4d39 100644
--- a/string/string.h
+++ b/string/string.h
@@ -31,12 +31,8 @@ __BEGIN_DECLS
#define __need_NULL
#include <stddef.h>
-/* Provide correct C++ prototypes, and indicate this to the caller. This
- requires a compatible C++ standard library. As a heuristic, we provide
- these when the compiler indicates full conformance with C++98 or later,
- and for older GCC versions that are known to provide a compatible
- libstdc++. */
-#if defined __cplusplus && (__cplusplus >= 199711L || __GNUC_PREREQ (4, 4))
+/* Tell the caller that we provide correct C++ prototypes. */
+#if defined __cplusplus && __GNUC_PREREQ (4, 4)
# define __CORRECT_ISO_CPP_STRING_H_PROTO
#endif
diff --git a/string/strings.h b/string/strings.h
index 2e5f822..028361a 100644
--- a/string/strings.h
+++ b/string/strings.h
@@ -27,12 +27,8 @@
# define __need_size_t
# include <stddef.h>
-/* Provide correct C++ prototypes, and indicate this to the caller. This
- requires a compatible C++ standard library. As a heuristic, we provide
- these when the compiler indicates full conformance with C++98 or later,
- and for older GCC versions that are known to provide a compatible
- libstdc++. */
-# if defined __cplusplus && (__cplusplus >= 199711L || __GNUC_PREREQ (4, 4))
+/* Tell the caller that we provide correct C++ prototypes. */
+# if defined __cplusplus && __GNUC_PREREQ (4, 4)
# define __CORRECT_ISO_CPP_STRINGS_H_PROTO
# endif
--
2.3.0
--
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."