[cfe-commits] [libcxx] r153981 - in /libcxx/trunk: include/utility src/utility.cpp

Howard Hinnant hhinnant at apple.com
Tue Apr 3 16:45:46 PDT 2012


Author: hhinnant
Date: Tue Apr  3 18:45:46 2012
New Revision: 153981

URL: http://llvm.org/viewvc/llvm-project?rev=153981&view=rev
Log:
Put std::piecewise_construct_t back into the dylib for ABI stability.  When clients are in C++11/constexpr mode this will be safely ignored because piecewise_construct is then declared with internal linkage.

Modified:
    libcxx/trunk/include/utility
    libcxx/trunk/src/utility.cpp

Modified: libcxx/trunk/include/utility
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/utility?rev=153981&r1=153980&r2=153981&view=diff
==============================================================================
--- libcxx/trunk/include/utility (original)
+++ libcxx/trunk/include/utility Tue Apr  3 18:45:46 2012
@@ -206,7 +206,7 @@
 }
 
 struct _LIBCPP_VISIBLE piecewise_construct_t { };
-#ifdef _LIBCPP_HAS_NO_CONSTEXPR
+#if defined(_LIBCPP_HAS_NO_CONSTEXPR) || defined(_LIBCPP_BUILDING_UTILITY)
 extern const piecewise_construct_t piecewise_construct;// = piecewise_construct_t();
 #else
 constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t();

Modified: libcxx/trunk/src/utility.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/src/utility.cpp?rev=153981&r1=153980&r2=153981&view=diff
==============================================================================
--- libcxx/trunk/src/utility.cpp (original)
+++ libcxx/trunk/src/utility.cpp Tue Apr  3 18:45:46 2012
@@ -7,12 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define _LIBCPP_BUILDING_UTILITY
 #include "utility"
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
-#ifdef _LIBCPP_HAS_NO_CONSTEXPR
 const piecewise_construct_t piecewise_construct = {};
-#endif
 
 _LIBCPP_END_NAMESPACE_STD





More information about the cfe-commits mailing list