On 3/26/26 13:03, Pádraig Brady wrote:
Well I'm not too sure on all this,
but the replacement seems due to mbrtowc and mbrtoc32 returning EILSEQ in the C locale (as mentioned in the comment above the 3 lines referenced above in lib/ mcel.h

OK; does simply removing the "#undef mbrtoc32" from mcel.h give the performance boost? Or do you also need to tell 'configure' that mbrtowc is missing? And if the latter, why don't you also need to tell 'configure' that mbrtoc32 is missing?


With ./configure ac_cv_func_mbrtowc=no we get the following (and faster operation):

   HAVE_MBRTOC16='1'
   HAVE_MBRTOC32='1'
   HAVE_MBRTOWC='0'
   REPLACE_MBRTOC16='0'
   REPLACE_MBRTOC32='1'
   REPLACE_MBRTOWC='1'

It sounds like we need to modify m4/mbrtowc.m4 so that it replaces mbrtwoc on glibc. Maybe similarly for mbrtoc32?

Reply via email to