[Bug libstdc++/11740] ctype<wchar_t>::do_is(mask, wchar_t) doesn't handle multiple bits in mask.

paolo at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Mon Oct 6 19:43:00 GMT 2003


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11740



------- Additional Comments From paolo at gcc dot gnu dot org  2003-10-06 19:43 -------
Ok, finally I see (I hope ;) !

1- Currently we do *not* implement correctly (M & m) != 0 because we do,
   incorrectly, "&=" in the loop, instead of "|=" (and __ret initialized
   false).
2- However, we *seem* to implement the standard because the standard says,
   with an imprecise wording, "true if the character has the characteristics
   specified" instead of the more correct and consistent with the logical
   definition, "true if the character has any of the characteristics specified"

I'm testing a patch along the lines of 1- above...



More information about the Gcc-bugs mailing list