diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | string/string.h | 8 | ||||
-rw-r--r-- | string/strings.h | 8 |
3 files changed, 19 insertions, 4 deletions
@@ -1,3 +1,10 @@ +2013-12-24 Brooks Moses <bmoses@google.com> + + * string/string.h (__CORRECT_ISO_CPP_STRING_H_PROTO): Define for + all compilers that claim C++98 compliance, not just GCC. + * string/strings.h (__CORRECT_ISO_CPP_STRINGS_H_PROTO): + Likewise. + 2013-12-24 Maxim Kuvyrkov <maxim@kugelworks.com> * NEWS: Restore accidentally deleted bug-fix entries. diff --git a/string/string.h b/string/string.h index ecc3fef..33d01ad 100644 --- a/string/string.h +++ b/string/string.h @@ -31,8 +31,12 @@ __BEGIN_DECLS #define __need_NULL #include <stddef.h> -/* Tell the caller that we provide correct C++ prototypes. */ -#if defined __cplusplus && __GNUC_PREREQ (4, 4) +/* 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)) # define __CORRECT_ISO_CPP_STRING_H_PROTO #endif diff --git a/string/strings.h b/string/strings.h index dad0a04..0d2b5bf 100644 --- a/string/strings.h +++ b/string/strings.h @@ -27,8 +27,12 @@ # define __need_size_t # include <stddef.h> -/* Tell the caller that we provide correct C++ prototypes. */ -# if defined __cplusplus && __GNUC_PREREQ (4, 4) +/* 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)) # define __CORRECT_ISO_CPP_STRINGS_H_PROTO # endif |