[libcxx] expose experimental::erased_type for all standard versions.

Summary: The polymorphic allocator implementation would greatly benefit by defining virtual functions in the dynlib instead of inline. In order to do that some types are going to have to be available outside of c++1y. This is the first step.

Reviewers: mclow.lists, EricWF

Reviewed By: EricWF

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D4554

llvm-svn: 213889
This commit is contained in:
Eric Fiselier 2014-07-24 19:17:38 +00:00
parent 567bb79bf2
commit aa873af53d
3 changed files with 5 additions and 13 deletions

View File

@ -33,8 +33,6 @@ inline namespace fundamentals_v1 {
# include <experimental/__config>
#if _LIBCPP_STD_VER > 11
# include <utility>
_LIBCPP_BEGIN_NAMESPACE_LFTS
@ -43,6 +41,4 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS
_LIBCPP_END_NAMESPACE_LFTS
#endif /* _LIBCPP_STD_VER > 11 */
#endif /* _LIBCPP_EXPERIMENTAL_UTILITY */

View File

@ -13,8 +13,5 @@
int main()
{
#if _LIBCPP_STD_VER > 11
using std::experimental::erased_type;
constexpr erased_type e{};
#endif
std::experimental::erased_type e();
}

View File

@ -11,11 +11,10 @@
#include <experimental/utility>
#ifndef _LIBCPP_UTILITY
# error "<experimental/utility> must include <utility>"
#endif
int main()
{
#if _LIBCPP_STD_VER > 11
# ifndef _LIBCPP_UTILITY
# error "<experimental/utility> must include <utility>"
# endif
#endif /* _LIBCPP_STD_VER > 11 */
}