
The name _LIBCPP_TYPE_VIS_ONLY is no longer accurate because both _LIBCPP_TYPE_VIS and _LIBCPP_TYPE_VIS_ONLY expand to __attribute__((__type_visibility__)) with Clang. The only remaining difference is that _LIBCPP_TYPE_VIS_ONLY can be applied to templates whereas _LIBCPP_TYPE_VIS cannot (due to dllimport/dllexport not being allowed on templates). This patch renames _LIBCPP_TYPE_VIS_ONLY to _LIBCPP_TEMPLATE_VIS. llvm-svn: 291035
48 lines
1020 B
C++
48 lines
1020 B
C++
// -*- C++ -*-
|
|
//===-------------------------- utility ----------------------------------===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is dual licensed under the MIT and the University of Illinois Open
|
|
// Source Licenses. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef _LIBCPP_EXPERIMENTAL_UTILITY
|
|
#define _LIBCPP_EXPERIMENTAL_UTILITY
|
|
|
|
/*
|
|
experimental/utility synopsis
|
|
|
|
// C++1y
|
|
|
|
#include <utility>
|
|
|
|
namespace std {
|
|
namespace experimental {
|
|
inline namespace fundamentals_v1 {
|
|
|
|
3.1.2, erased-type placeholder
|
|
struct erased_type { };
|
|
|
|
} // namespace fundamentals_v1
|
|
} // namespace experimental
|
|
} // namespace std
|
|
|
|
*/
|
|
|
|
#include <experimental/__config>
|
|
#include <utility>
|
|
|
|
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
|
#pragma GCC system_header
|
|
#endif
|
|
|
|
_LIBCPP_BEGIN_NAMESPACE_LFTS
|
|
|
|
struct _LIBCPP_TEMPLATE_VIS erased_type { };
|
|
|
|
_LIBCPP_END_NAMESPACE_LFTS
|
|
|
|
#endif /* _LIBCPP_EXPERIMENTAL_UTILITY */
|