// -*- 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>

#if _LIBCPP_STD_VER > 11

# include <utility>

_LIBCPP_BEGIN_NAMESPACE_LFTS

  struct _LIBCPP_TYPE_VIS_ONLY erased_type { };

_LIBCPP_END_NAMESPACE_LFTS

#endif /* _LIBCPP_STD_VER > 11 */

#endif /* _LIBCPP_EXPERIMENTAL_UTILITY */
