This series fixes four build failures in Bash 5.3 when compiled without
multibyte support (e.g., when HANDLE_MULTIBYTE is not defined, or on systems
lacking wide character support).

Patch 1: builtins/printf.def: mb_cur_max is declared only under
HANDLE_MULTIBYTE but was assigned unconditionally, causing a compile error.

Patch 2: lib/glob/glob.c: External declarations using wchar_t and wint_t
were unconditional, causing 'wint_t undeclared' errors when multibyte
support is disabled.

Patch 3: builtins/printf.def: The variable 'c' is an int in the non-multibyte
path but tescape() expects a char *, causing a type mismatch error with
-Werror=incompatible-pointer-types.

Patch 4: lib/glob/smatch.c: locale_utf8locale and UTF8_SINGLEBYTE are not
available without multibyte support, causing undeclared identifier errors in
collseqcmp(), is_cclass(), and the FOLD macro.

Changes in v2:
- Patch 4: Dropped changes to lib/glob/smatch.c and instead added the
  extern declaration for locale_utf8locale in shmbutil.h for
  non-multibyte builds, as suggested by Chet Ramey.

Shubham Chakraborty (4):
  builtins/printf.def: fix build when HANDLE_MULTIBYTE is undefined
  lib/glob/glob.c: fix build failure when multibyte support is disabled
  builtins/printf.def: fix type mismatch in tescape call
  include/shmbutil.h: fix build failure when multibyte support is
    disabled

 builtins/printf.def | 8 +++++++-
 include/shmbutil.h  | 2 ++
 lib/glob/glob.c     | 4 ++++
 3 files changed, 13 insertions(+), 1 deletion(-)

-- 
2.55.0


Reply via email to