13257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// -*- C++ -*- 20ce02245a96edc9d1b2d60653fc06e9941e6fd2aHoward Hinnant//===----------------------------------------------------------------------===// 33257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// 43257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// The LLVM Compiler Infrastructure 53257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// 6b64f8b07c104c6cc986570ac8ee0ed16a9f23976Howard Hinnant// This file is dual licensed under the MIT and the University of Illinois Open 7b64f8b07c104c6cc986570ac8ee0ed16a9f23976Howard Hinnant// Source Licenses. See LICENSE.TXT for details. 83257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// 93257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant//===----------------------------------------------------------------------===// 103257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant 113257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// <regex> 123257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant 133257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// template <class charT> 143257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// struct regex_traits 153257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// { 163257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// public: 173257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// typedef charT char_type; 183257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// typedef basic_string<char_type> string_type; 193257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// typedef locale locale_type; 203257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant 213257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant#include <regex> 223257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant#include <type_traits> 23ee226c05af9e0187098f43fb71465a581487af9bDan Austin#include "test_macros.h" 243257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant 253257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnantint main() 263257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant{ 273257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant static_assert((std::is_same<std::regex_traits<char>::char_type, char>::value), ""); 283257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant static_assert((std::is_same<std::regex_traits<char>::string_type, std::string>::value), ""); 293257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant static_assert((std::is_same<std::regex_traits<char>::locale_type, std::locale>::value), ""); 303257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant static_assert((std::is_same<std::regex_traits<wchar_t>::char_type, wchar_t>::value), ""); 313257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant static_assert((std::is_same<std::regex_traits<wchar_t>::string_type, std::wstring>::value), ""); 323257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant static_assert((std::is_same<std::regex_traits<wchar_t>::locale_type, std::locale>::value), ""); 333257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant} 34