From 4d1c74214ef76216ad529b233dfac63ccf0cf7b5 Mon Sep 17 00:00:00 2001 From: Rainer Orth Date: Mon, 25 Jul 2011 14:24:59 +0000 Subject: [PATCH] system.h [...]: Wrap C function declarations in extern "C". gcc: * system.h [__cplusplus]: Wrap C function declarations in extern "C". include: * xregex.h (regoff_t): Define. From-SVN: r176747 --- gcc/ChangeLog | 4 ++++ gcc/system.h | 32 ++++++++++++++++++++++++++++++++ include/ChangeLog | 4 ++++ include/xregex.h | 1 + 4 files changed, 41 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6543bcff597..6af45fe4a4f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2011-07-25 Rainer Orth + + * system.h [__cplusplus]: Wrap C function declarations in extern "C". + 2011-07-25 Richard Guenther PR tree-optimization/49822 diff --git a/gcc/system.h b/gcc/system.h index ce027b2ea1e..7ac98596bc7 100644 --- a/gcc/system.h +++ b/gcc/system.h @@ -90,6 +90,10 @@ along with GCC; see the file COPYING3. If not see # define fputc(C, Stream) fputc_unlocked (C, Stream) # endif +#ifdef __cplusplus +extern "C" { +#endif + # ifdef HAVE_CLEARERR_UNLOCKED # undef clearerr # define clearerr(Stream) clearerr_unlocked (Stream) @@ -170,6 +174,10 @@ extern int fprintf_unlocked (FILE *, const char *, ...); # endif # endif +#ifdef __cplusplus +} +#endif + #endif /* ??? Glibc's fwrite/fread_unlocked macros cause @@ -390,6 +398,10 @@ extern int errno; here. These checks will be in the undefined state while configure is running so be careful to test "defined (HAVE_DECL_*)". */ +#ifdef __cplusplus +extern "C" { +#endif + #if defined (HAVE_DECL_ATOF) && !HAVE_DECL_ATOF extern double atof (const char *); #endif @@ -430,10 +442,18 @@ extern void *sbrk (int); extern char *strstr (const char *, const char *); #endif +#ifdef __cplusplus +} +#endif + #ifdef HAVE_MALLOC_H #include #endif +#ifdef __cplusplus +extern "C" { +#endif + #if defined (HAVE_DECL_MALLOC) && !HAVE_DECL_MALLOC extern void *malloc (size_t); #endif @@ -446,6 +466,10 @@ extern void *calloc (size_t, size_t); extern void *realloc (void *, size_t); #endif +#ifdef __cplusplus +} +#endif + #ifdef HAVE_STDINT_H #include #endif @@ -454,6 +478,10 @@ extern void *realloc (void *, size_t); #include #endif +#ifdef __cplusplus +extern "C" { +#endif + /* If the system doesn't provide strsignal, we get it defined in libiberty but no declaration is supplied. */ #if !defined (HAVE_STRSIGNAL) \ @@ -493,6 +521,10 @@ extern int snprintf (char *, size_t, const char *, ...); extern int vsnprintf(char *, size_t, const char *, va_list); #endif +#ifdef __cplusplus +} +#endif + /* 1 if we have C99 designated initializers. */ #if !defined(HAVE_DESIGNATED_INITIALIZERS) #define HAVE_DESIGNATED_INITIALIZERS \ diff --git a/include/ChangeLog b/include/ChangeLog index 29106d0479f..32f4c6f8fb0 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2011-07-25 Rainer Orth + + * xregex.h (regoff_t): Define. + 2011-07-22 Jakub Jelinek * dwarf2.h (DW_AT_GNU_macros): New. diff --git a/include/xregex.h b/include/xregex.h index 645195bbceb..4c5ef934556 100644 --- a/include/xregex.h +++ b/include/xregex.h @@ -8,6 +8,7 @@ # define regexec xregexec # define regcomp xregcomp # define regerror xregerror +# define regoff_t xregoff_t # define re_set_registers xre_set_registers # define re_match_2 xre_match_2 # define re_match xre_match -- 2.30.2