blob: 929659d004b0e39018a018746c2da391a77ad42e [file] [log] [blame]
Howard Hinnant70505302010-06-17 00:34:59 +00001//===----------------------------------------------------------------------===//
2//
3// The LLVM Compiler Infrastructure
4//
Howard Hinnant412dbeb2010-11-16 22:09:02 +00005// This file is dual licensed under the MIT and the University of Illinois Open
6// Source Licenses. See LICENSE.TXT for details.
Howard Hinnant70505302010-06-17 00:34:59 +00007//
8//===----------------------------------------------------------------------===//
9
Daniel Sanders61c115f2016-01-21 15:35:15 +000010// REQUIRES: locale.en_US.UTF-8
11
Howard Hinnant70505302010-06-17 00:34:59 +000012// <regex>
13
14// template <class charT> struct regex_traits;
15
16// locale_type getloc()const;
17
18#include <regex>
Howard Hinnant24757ff2010-06-21 21:01:43 +000019#include <cassert>
Howard Hinnant70505302010-06-17 00:34:59 +000020
Marshall Clowfd5ceb22016-04-26 16:24:44 +000021#include "test_macros.h"
Marshall Clow32227082013-01-05 03:21:01 +000022#include "platform_support.h" // locale name macros
Howard Hinnant33a30f42011-10-03 15:23:59 +000023
Howard Hinnant70505302010-06-17 00:34:59 +000024int main()
25{
Howard Hinnant24757ff2010-06-21 21:01:43 +000026 {
27 std::regex_traits<char> t1;
28 assert(t1.getloc().name() == "C");
29 std::regex_traits<wchar_t> t2;
30 assert(t2.getloc().name() == "C");
31 }
32 {
Howard Hinnant33a30f42011-10-03 15:23:59 +000033 std::locale::global(std::locale(LOCALE_en_US_UTF_8));
Howard Hinnant24757ff2010-06-21 21:01:43 +000034 std::regex_traits<char> t1;
Howard Hinnant33a30f42011-10-03 15:23:59 +000035 assert(t1.getloc().name() == LOCALE_en_US_UTF_8);
Howard Hinnant24757ff2010-06-21 21:01:43 +000036 std::regex_traits<wchar_t> t2;
Howard Hinnant33a30f42011-10-03 15:23:59 +000037 assert(t2.getloc().name() == LOCALE_en_US_UTF_8);
Howard Hinnant24757ff2010-06-21 21:01:43 +000038 }
Howard Hinnant70505302010-06-17 00:34:59 +000039}