# 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)
# endif
# endif
+#ifdef __cplusplus
+}
+#endif
+
#endif
/* ??? Glibc's fwrite/fread_unlocked macros cause
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
extern char *strstr (const char *, const char *);
#endif
+#ifdef __cplusplus
+}
+#endif
+
#ifdef HAVE_MALLOC_H
#include <malloc.h>
#endif
+#ifdef __cplusplus
+extern "C" {
+#endif
+
#if defined (HAVE_DECL_MALLOC) && !HAVE_DECL_MALLOC
extern void *malloc (size_t);
#endif
extern void *realloc (void *, size_t);
#endif
+#ifdef __cplusplus
+}
+#endif
+
#ifdef HAVE_STDINT_H
#include <stdint.h>
#endif
#include <inttypes.h>
#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) \
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 \
LABEL_ALIGN_MAX_SKIP LOOP_ALIGN_MAX_SKIP \
LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP JUMP_ALIGN_MAX_SKIP \
CAN_DEBUG_WITHOUT_FP UNLIKELY_EXECUTED_TEXT_SECTION_NAME \
- HOT_TEXT_SECTION_NAME LEGITIMATE_CONSTANT_P ALWAYS_STRIP_DOTDOT
+ HOT_TEXT_SECTION_NAME LEGITIMATE_CONSTANT_P ALWAYS_STRIP_DOTDOT \
+ OUTPUT_ADDR_CONST_EXTRA
/* Target macros only used for code built for the target, that have
moved to libgcc-tm.h or have never been present elsewhere. */
#pragma GCC poison DECLARE_LIBRARY_RENAMES LIBGCC2_GNU_PREFIX \
- MD_UNWIND_SUPPORT ENABLE_EXECUTE_STACK
+ MD_UNWIND_SUPPORT MD_FROB_UPDATE_CONTEXT ENABLE_EXECUTE_STACK \
+ REG_VALUE_IN_UNWIND_CONTEXT ASSUME_EXTENDED_UNWIND_CONTEXT
/* Other obsolete target macros, or macros that used to be in target
headers and were not used, and may be obsolete or may never have
USING_SVR4_H SVR4_ASM_SPEC FUNCTION_ARG FUNCTION_ARG_ADVANCE \
FUNCTION_INCOMING_ARG IRA_COVER_CLASSES TARGET_VERSION \
MACHINE_TYPE TARGET_HAS_TARGETCM ASM_OUTPUT_BSS \
- SETJMP_VIA_SAVE_AREA FORBIDDEN_INC_DEC_CLASSES
+ SETJMP_VIA_SAVE_AREA FORBIDDEN_INC_DEC_CLASSES \
+ PREFERRED_OUTPUT_RELOAD_CLASS SYSTEM_INCLUDE_DIR \
+ STANDARD_INCLUDE_DIR STANDARD_INCLUDE_COMPONENT
/* Hooks that are no longer used. */
#pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE \
TARGET_HANDLE_OFAST TARGET_OPTION_OPTIMIZATION \
TARGET_IRA_COVER_CLASSES TARGET_HELP
+/* Arrays that were deleted in favor of a functional interface. */
+ #pragma GCC poison built_in_decls implicit_built_in_decls
+
/* Hooks into libgcc2. */
#pragma GCC poison LIBGCC2_DOUBLE_TYPE_SIZE LIBGCC2_WORDS_BIG_ENDIAN \
LIBGCC2_FLOAT_WORDS_BIG_ENDIAN