1 //===---------------------------- any.cpp ---------------------------------===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is dual licensed under the MIT and the University of Illinois Open 6 // Source Licenses. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 #include "any" 11 12 namespace std { what() const13const char* bad_any_cast::what() const _NOEXCEPT { 14 return "bad any cast"; 15 } 16 } 17 18 19 #include <experimental/__config> 20 21 // Preserve std::experimental::any_bad_cast for ABI compatibility 22 // Even though it no longer exists in a header file 23 _LIBCPP_BEGIN_NAMESPACE_LFTS 24 25 class _LIBCPP_EXCEPTION_ABI _LIBCPP_AVAILABILITY_BAD_ANY_CAST bad_any_cast : public bad_cast 26 { 27 public: 28 virtual const char* what() const _NOEXCEPT; 29 }; 30 what() const31const char* bad_any_cast::what() const _NOEXCEPT { 32 return "bad any cast"; 33 } 34 35 _LIBCPP_END_NAMESPACE_LFTS 36