//===----------------------------------------------------------------------===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
// <memory>
// template <class T>
// struct pointer_traits<T*>
// {
// template <class U> using rebind = U*;
// ...
// };
#include<memory>#include<type_traits>intmain(){#ifndef _LIBCPP_HAS_NO_TEMPLATE_ALIASESstatic_assert((std::is_same<std::pointer_traits<int*>::rebind<double>,double*>::value),"");#elsestatic_assert((std::is_same<std::pointer_traits<int*>::rebind<double>::other,double*>::value),"");#endif}