Khem Raj wrote:
> > Khem Raj wrote:
> > > > * tests/test-c32isalnum.c(main): Disable failing testcase on musl.
> >
> > With which distribution and which musl libc version did you see the
> > test fail?
> 
> This is with yocto based custom embedded Linux distribution I can share
> more info and how to reproduce it if you are interested

This appears to be a distro where each user creates their own custom system
[1] (like Gentoo). Then, it's of no point for me to try to reproduce anything;
instead you'll have to help with debugging info from your system.

* Facts:
  Yocto has multiple versions of musl libc [2] and multiple versions of
  libunistring [3], but they don't contain specific patches regarding character
  properties [4].
  The test-c32ispunct.c file tests the behaviour of the function c32ispunct,
  which is defined in lib/c32ispunct.c and lib/c32is-impl.h.
  This function uses either WCHAR_FUNC = iswpunct (whose value at U+E003A is 0
  [5]) or UCS_FUNC = uc_is_punct (whose value at U+E003A is 1 [6]).

* Hypothesis:
  On your system, c32ispunct uses UCS_FUNC, when in fact it should use 
WCHAR_FUNC,
  most likely due to configuration issues. In particular, it could be that some
  of these macros have an incorrect value:
    GNULIB_defined_mbstate_t
    HAVE_WORKING_MBRTOC32
    HAVE_WORKING_C32RTOMB
    _GL_WCHAR_T_IS_UCS4
    _GL_SMALL_WCHAR_T
    GL_CHAR32_T_IS_UNICODE
    GL_CHAR32_T_VS_WCHAR_T_NEEDS_CONVERSION

* Actions:
  Please provide as attachments
  - the output of the 'configure' command of m4-1.4.20,
  - the resulting config.log file,
  - the resulting config.status file,
  - the resulting config.h file,
  - the preprocessed output of lib/c32ispunct.c. That is, take the
    compilation command of this file from your build log, remove the
    "-c" and "-o outputfile" options and add "-E -dD > c32ispunct.i"
    instead, and send us this file c32ispunct.i.

Bruno

[1] https://www.yoctoproject.org/
[2] https://layers.openembedded.org/layerindex/recipe/44287/
[3] https://layers.openembedded.org/rrs/recipedetail/OE-Core/272/
[4] https://git.openembedded.org/openembedded-core/tree/meta/recipes-core/musl
[5] musl/src/ctype/iswpunct.c
[6] gnulib/tests/unictype/test-ctype_punct.c




Reply via email to