Am 03.12.2010 um 20:33 schrieb Andre Poenitz: > On Fri, Dec 03, 2010 at 07:33:58AM +0100, Stephan Witt wrote: >> Am 03.12.2010 um 04:36 schrieb Enrico Forestieri: >> >>> On Fri, Dec 03, 2010 at 12:44:57AM +0100, Pavel Sanda wrote: >>> >>>> Stephan Witt wrote: >>>>> There is a patch pending from Georg. >>>>> I present it here again and propose to apply it. >>>>> >>>>> The second part of the patch is mine. >>>>> It encapsulates the crucial hasDigit into an ignoreWord() method to >>>>> prepare to solve the FIXME and to propose an alternate implementation. >>>>> >>>>> The latter is not that important... >>>> >>>> is Enrico fine with the isDigit part? p >>> >>> It's becoming a mess. We have isdigit(), isDigit(), isDigitASCII(), >>> and now iswdigit() enters the scene. >> >> iswdigit() is POSIX standard for wchar_t arguments - our char_type >> is a typedef of wchar_t. But I don't insist here. > > I thought it was a typedef to a 32 bit integer type, even on systems > where wchar_t is only 16?
I overlooked the ifdef, sorry. So, probably it's not wchar_t. Below is the code from strfwd.h =================================== #ifdef USE_WCHAR_T // Prefer this if possible because GNU libstdc++ has usable // std::ctype<wchar_t> locale facets but not // std::ctype<boost::uint32_t>. gcc older than 3.4 is also missing // usable std::char_traits<boost::uint32_t>. namespace lyx { typedef wchar_t char_type; } #else #include <boost/cstdint.hpp> namespace lyx { typedef boost::uint32_t char_type; } #endif =================================== Stephan