1*8a639897SRichard Smithnamespace std { 2*8a639897SRichard Smith template <typename, typename Container> struct normal_iterator { 3*8a639897SRichard Smith normal_iterator() {} 4*8a639897SRichard Smith 5*8a639897SRichard Smith template <typename I> 6*8a639897SRichard Smith normal_iterator(normal_iterator<I, typename Container::iterator>) {} 7*8a639897SRichard Smith }; 8*8a639897SRichard Smith 9*8a639897SRichard Smith template <typename pointer> struct basic_string { 10*8a639897SRichard Smith typedef normal_iterator<pointer, basic_string> iterator; 11*8a639897SRichard Smith }; 12*8a639897SRichard Smith 13*8a639897SRichard Smith typedef basic_string<wchar_t *> wstring; 14*8a639897SRichard Smith} 15