浏览代码

Move uncaught_exeption() definition inside the #ifdef block like uncaught_exceptions()

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@238879 91177308-0d34-0410-b5e6-96231b3b80d8
Marshall Clow 10 年之前
父节点
当前提交
22f6c0532d
共有 2 个文件被更改,包括 24 次插入5 次删除
  1. 23 4
      include/cstring
  2. 1 1
      src/exception.cpp

+ 23 - 4
include/cstring

@@ -67,15 +67,34 @@ size_t strlen(const char* s);
 _LIBCPP_BEGIN_NAMESPACE_STD
 
 using ::size_t;
-using ::memcpy;
-using ::memmove;
+
+// using ::memcpy;
+inline _LIBCPP_INLINE_VISIBILITY 
+void* memcpy(void* __s1, const void* __s2, size_t __n) __attribute__((nonnull(1, 2)))
+{ return ::memcpy(__s1, __s2, __n); }
+
+// using ::memmove;
+inline _LIBCPP_INLINE_VISIBILITY 
+void* memmove(void* __s1, const void* __s2, size_t __n) __attribute__((nonnull(1, 2)))
+{ return ::memmove(__s1, __s2, __n); }
+
 using ::strcpy;
 using ::strncpy;
 using ::strcat;
 using ::strncat;
-using ::memcmp;
+
+// using ::memcmp;
+inline _LIBCPP_INLINE_VISIBILITY 
+int memcmp(const void* __s1, const void* __s2, size_t __n) __attribute__((nonnull(1, 2)))
+{ return ::memcmp(__s1, __s2, __n); }
+
 using ::strcmp;
-using ::strncmp;
+
+// using ::strncmp;
+inline _LIBCPP_INLINE_VISIBILITY 
+int strncmp(const char* __s1, const char* __s2, size_t __n) __attribute__((nonnull(1, 2)))
+{ return ::memcmp(__s1, __s2, __n); }
+
 using ::strcoll;
 using ::strxfrm;
 

+ 1 - 1
src/exception.cpp

@@ -105,9 +105,9 @@ terminate() _NOEXCEPT
 #endif // !__EMSCRIPTEN__
 #endif // !defined(LIBCXXRT) && !defined(_LIBCPPABI_VERSION)
 
+#if !defined(LIBCXXRT) && !defined(__GLIBCXX__) && !defined(__EMSCRIPTEN__)
 bool uncaught_exception() _NOEXCEPT { return uncaught_exceptions() > 0; }
 
-#if !defined(LIBCXXRT) && !defined(__GLIBCXX__) && !defined(__EMSCRIPTEN__)
 int uncaught_exceptions() _NOEXCEPT
 {
 #if defined(__APPLE__) || defined(_LIBCPPABI_VERSION)