15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//===----------------------------------------------------------------------===// 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// The LLVM Compiler Infrastructure 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This file is dual licensed under the MIT and the University of Illinois Open 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Source Licenses. See LICENSE.TXT for details. 7868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)// 8868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)//===----------------------------------------------------------------------===// 9c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// <string> 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// template<> struct char_traits<wchar_t> 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// static size_t length(const char_type* s); 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <string> 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <cassert> 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int main() 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles){ 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(std::char_traits<wchar_t>::length(L"") == 0); 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(std::char_traits<wchar_t>::length(L"a") == 1); 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(std::char_traits<wchar_t>::length(L"aa") == 2); 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(std::char_traits<wchar_t>::length(L"aaa") == 3); 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(std::char_traits<wchar_t>::length(L"aaaa") == 4); 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)