1 // PR 99039, we need to remove the namespace-scope meaning of
2 // IDENTIFIER_TYPE_VALUE.
3
4 namespace std
5 {
6 typedef long unsigned int size_t;
7
8 template<typename _CharT>
9 struct char_traits
10 {
11 typedef _CharT char_type;
12
13 template<typename U>
14 static int
15 compare(const char_type* __s1, const char_type* __s2, std::size_t __n);
16 };
17
18 template<typename _CharT>
19 template<typename U>
20 int
21 char_traits<_CharT>::
compare(const char_type * __s1,const char_type * __s2,std::size_t __n)22 compare(const char_type* __s1, const char_type* __s2, std::size_t __n)
23 {
24 return 0;
25 }
26
27 }
28
29 struct CHAR_TRAITS;
30 namespace std
31 {
32 typedef long unsigned int size_t;
33
34 struct CHAR_TRAITS
35 {
36 typedef char char_type;
37
38 static int
39 compare(const char_type* __s1, const char_type* __s2, std::size_t __n);
40 };
41
42 int
43 CHAR_TRAITS::
compare(const char_type * __s1,const char_type * __s2,std::size_t __n)44 compare(const char_type* __s1, const char_type* __s2, std::size_t __n)
45 {
46 return 0;
47 }
48
49 }
50
51 struct CHAR_TRAITS;
52