Re: g++でwcharが使えない

http://d.hatena.ne.jp/gpuppur/20080429
Cygwinのg++ 4.3.0でconfigureを試してみました。
ログを見ると、

conftest.cc:40: error: '::fgetwc' has not been declared
conftest.cc:41: error: '::fgetws' has not been declared
conftest.cc:42: error: '::fputwc' has not been declared
conftest.cc:43: error: '::fputws' has not been declared
conftest.cc:44: error: '::fwide' has not been declared
conftest.cc:45: error: '::fwprintf' has not been declared
conftest.cc:46: error: '::fwscanf' has not been declared
conftest.cc:47: error: '::getwc' has not been declared
conftest.cc:48: error: '::getwchar' has not been declared
conftest.cc:53: error: '::putwc' has not been declared
conftest.cc:54: error: '::putwchar' has not been declared
conftest.cc:55: error: '::swprintf' has not been declared
conftest.cc:56: error: '::swscanf' has not been declared
conftest.cc:57: error: '::ungetwc' has not been declared
conftest.cc:58: error: '::vfwprintf' has not been declared
conftest.cc:59: error: '::vswprintf' has not been declared
conftest.cc:60: error: '::vwprintf' has not been declared
conftest.cc:68: error: '::wcsftime' has not been declared
conftest.cc:78: error: '::wcstod' has not been declared
conftest.cc:79: error: '::wcstok' has not been declared
conftest.cc:80: error: '::wcstol' has not been declared
conftest.cc:81: error: '::wcstoul' has not been declared
conftest.cc:82: error: '::wcsxfrm' has not been declared
conftest.cc:89: error: '::wprintf' has not been declared
conftest.cc:90: error: '::wscanf' has not been declared

ワイド文字関数が全然足りてないみたいです。
Cygwinのマルチバイト/ワイド文字サポートは絶望的(MB_LEN_MAX=1)なので、UTF-8 Cygwinがワイド文字関数を実装してくれるのを待つしかないですね。


ちなみに、configureでwchar_tが有効にならなくても、std::basic_string<wchar_t>は使えます。(std::wstringのtypedefはなし)