On Thu, Nov 08, 2007 at 11:58:19PM +0100, Enrico Forestieri wrote: > > Hm... the easy way out would probably be an #include <string> or such > > guarded by #ifdef SOMETHING_CYGWIN_SPECIFIC. > > I don't think this is cygwin specific, though.
Possibly. But as long as we don't have > > But there should be something cheaper. > > > > Is USE_WCHAR_T defined for you? > > No. But there's a wchar_t type, but that's presumably only 16 bits, so we don't use it, right? > > What type is lyx::char_type typedef'ed to? > > Seems to be unsigned long. Ok, that's from boost::stdint.. > > For what types do you have char_traits<> specialized? > > gcc has only specializations for char and wchar_t. I guess that's the common pattern and they are the only ones that are required. > The only way out that I see is a full blown specialization for > lyx::char_type, something like: > > template<> > struct char_traits<lyx::char_type> > { > ... put here what is needed... > }; That would be a solution, but it's already a bit more of 'handcoding' than I'd consider sensible. I mean, have a few typedefs instead of #include <bigstuff> is ok, duplicating ~200 lines rather not... Is your wchar_t really 16 bit? Andre'