
On Wed, May 11, 2005 at 01:13:39PM -0400, Gennadiy Rozental wrote:
And a lot more like this. Why references to std::char_traits<wchar_t> symbols are undefined?
Because MinGW doesn't have wide char support. Well.. it has the type.. but that's about it :-) (this is AFAIK, i.e. last I checked)
Doesn't standard require wchar_t specialization?
It also requires "export" :-) If the host OS doesn't provide all the necessary functions such as wcstombs then libstdc++ disables the wchar_t specialisations.
Anyway, how could I separate mingw from any other gcc?
It's not just MinGW, but also FreeBSD 4.x, and others. You can test _GLIBCXX_USE_WCHAR_T to see if the library includes wchar_t specialisations (or _GLIBCPP_USE_WCHAR_T for version 3.3 and lower). Or you could test BOOST_NO_STD_WSTRING, which will be set if the library doesn't support wide chars. jon