Author: ericwf Date: Fri Nov 6 00:30:12 2015 New Revision: 252274 URL: http://llvm.org/viewvc/llvm-project?rev=252274&view=rev Log: Cleanup foo.h headers and __config to work in C
Modified: libcxx/trunk/include/__config libcxx/trunk/include/errno.h libcxx/trunk/include/float.h libcxx/trunk/include/inttypes.h libcxx/trunk/include/setjmp.h libcxx/trunk/include/stdlib.h Modified: libcxx/trunk/include/__config URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__config?rev=252274&r1=252273&r2=252274&view=diff ============================================================================== --- libcxx/trunk/include/__config (original) +++ libcxx/trunk/include/__config Fri Nov 6 00:30:12 2015 @@ -11,10 +11,16 @@ #ifndef _LIBCPP_CONFIG #define _LIBCPP_CONFIG -#if !defined(_MSC_VER) || defined(__clang__) +#if defined(_MSC_VER) && !defined(__clang__) +#define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER +#endif + +#ifndef _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER #pragma GCC system_header #endif +#ifdef __cplusplus + #ifdef __GNUC__ #define _GNUC_VER (__GNUC__ * 100 + __GNUC_MINOR__) #else @@ -526,7 +532,6 @@ using namespace _LIBCPP_NAMESPACE __attr #elif defined(_LIBCPP_MSVC) #define _LIBCPP_HAS_NO_TEMPLATE_ALIASES -#define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER #define _LIBCPP_HAS_NO_CONSTEXPR #define _LIBCPP_HAS_NO_CXX14_CONSTEXPR #define _LIBCPP_HAS_NO_VARIABLE_TEMPLATES @@ -811,4 +816,6 @@ extern "C" void __sanitizer_annotate_con #define _LIBCPP_HAS_NO_ATOMIC_HEADER #endif +#endif // __cplusplus + #endif // _LIBCPP_CONFIG Modified: libcxx/trunk/include/errno.h URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/errno.h?rev=252274&r1=252273&r2=252274&view=diff ============================================================================== --- libcxx/trunk/include/errno.h (original) +++ libcxx/trunk/include/errno.h Fri Nov 6 00:30:12 2015 @@ -31,6 +31,8 @@ Macros: #include_next <errno.h> +#ifdef __cplusplus + #if !defined(EOWNERDEAD) || !defined(ENOTRECOVERABLE) #ifdef ELAST @@ -391,4 +393,6 @@ static const int __elast2 = 105; #define EMLINK 9979 #endif +#endif // __cplusplus + #endif // _LIBCPP_ERRNO_H Modified: libcxx/trunk/include/float.h URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/float.h?rev=252274&r1=252273&r2=252274&view=diff ============================================================================== --- libcxx/trunk/include/float.h (original) +++ libcxx/trunk/include/float.h Fri Nov 6 00:30:12 2015 @@ -68,6 +68,8 @@ Macros: #include_next <float.h> +#ifdef __cplusplus + #ifndef FLT_EVAL_METHOD #define FLT_EVAL_METHOD __FLT_EVAL_METHOD__ #endif @@ -76,4 +78,6 @@ Macros: #define DECIMAL_DIG __DECIMAL_DIG__ #endif +#endif // __cplusplus + #endif // _LIBCPP_FLOAT_H Modified: libcxx/trunk/include/inttypes.h URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/inttypes.h?rev=252274&r1=252273&r2=252274&view=diff ============================================================================== --- libcxx/trunk/include/inttypes.h (original) +++ libcxx/trunk/include/inttypes.h Fri Nov 6 00:30:12 2015 @@ -246,6 +246,6 @@ uintmax_t wcstoumax(const wchar_t* restr #undef imaxabs #undef imaxdiv -#endif +#endif // __cplusplus #endif // _LIBCPP_INTTYPES_H Modified: libcxx/trunk/include/setjmp.h URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/setjmp.h?rev=252274&r1=252273&r2=252274&view=diff ============================================================================== --- libcxx/trunk/include/setjmp.h (original) +++ libcxx/trunk/include/setjmp.h Fri Nov 6 00:30:12 2015 @@ -34,8 +34,12 @@ void longjmp(jmp_buf env, int val); #include_next <setjmp.h> +#ifdef __cplusplus + #ifndef setjmp #define setjmp(env) setjmp(env) #endif +#endif // __cplusplus + #endif // _LIBCPP_SETJMP_H Modified: libcxx/trunk/include/stdlib.h URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/stdlib.h?rev=252274&r1=252273&r2=252274&view=diff ============================================================================== --- libcxx/trunk/include/stdlib.h (original) +++ libcxx/trunk/include/stdlib.h Fri Nov 6 00:30:12 2015 @@ -94,6 +94,7 @@ void *aligned_alloc(size_t alignment, si #include_next <stdlib.h> #ifdef __cplusplus + extern "C++" { #ifdef _LIBCPP_MSVCRT @@ -123,6 +124,7 @@ inline _LIBCPP_INLINE_VISIBILITY lldiv_t #endif // _LIBCPP_MSVCRT / __sun__ / _AIX } // extern "C++" + #endif // __cplusplus #endif // _LIBCPP_STDLIB_H _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits