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> struct regex_traits; 143257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant 153257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant// regex_traits(); 163257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant 173257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant#include <regex> 18f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant#include <cassert> 193257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant 2083e2c4d877fe2d7793868b1c6a5d9525a7c4d431Marshall Clow#include "platform_support.h" // locale name macros 21c0d0cbad9ed434267a7af9531bdeeae52eb6d706Howard Hinnant 223257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnantint main() 233257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant{ 24f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant { 25f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant std::regex_traits<char> t1; 26f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant assert(t1.getloc().name() == "C"); 27f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant std::regex_traits<wchar_t> t2; 28f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant assert(t2.getloc().name() == "C"); 29f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant } 30f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant { 31c0d0cbad9ed434267a7af9531bdeeae52eb6d706Howard Hinnant std::locale::global(std::locale(LOCALE_en_US_UTF_8)); 32f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant std::regex_traits<char> t1; 33c0d0cbad9ed434267a7af9531bdeeae52eb6d706Howard Hinnant assert(t1.getloc().name() == LOCALE_en_US_UTF_8); 34f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant std::regex_traits<wchar_t> t2; 35c0d0cbad9ed434267a7af9531bdeeae52eb6d706Howard Hinnant assert(t2.getloc().name() == LOCALE_en_US_UTF_8); 36f409d2f2fc3b8ee5d2af59ae83dae8b7cbba6135Howard Hinnant } 373257c9853f0612761bbde4adfd56dce566d9f2a6Howard Hinnant} 38