Branch
Hash :
910fc17e
Author :
Date :
2025-02-09T11:27:56
unistr, unigbrk: Use const-improved function macros for 30 functions. Reported by Kang-Che Sung <explorer09@gmail.com> in <https://lists.gnu.org/archive/html/bug-libunistring/2025-02/msg00000.html>. * lib/unistr.in.h (u*_check, u*_next, u*_prev): Define as macros that cast the result to a non-const pointer when the argument is a non-const pointer. (u*_chr, u*_strchr, u*_strrchr, u*_strpbrk, u*_strstr): Define as macros that cast the result to a const pointer when the argument is a const pointer. * lib/unistr/u8-check.c: Define _LIBUNISTRING_NO_CONST_GENERICS. * lib/unistr/u16-check.c: Likewise. * lib/unistr/u32-check.c: Likewise. * lib/unistr/u8-next.c: Likewise. * lib/unistr/u16-next.c: Likewise. * lib/unistr/u32-next.c: Likewise. * lib/unistr/u8-prev.c: Likewise. * lib/unistr/u16-prev.c: Likewise. * lib/unistr/u32-prev.c: Likewise. * lib/unistr/u8-chr.c: Likewise. * lib/unistr/u16-chr.c: Likewise. * lib/unistr/u32-chr.c: Likewise. * lib/unistr/u8-strchr.c: Likewise. * lib/unistr/u16-strchr.c: Likewise. * lib/unistr/u32-strchr.c: Likewise. * lib/unistr/u8-strrchr.c: Likewise. * lib/unistr/u16-strrchr.c: Likewise. * lib/unistr/u32-strrchr.c: Likewise. * lib/unistr/u8-strpbrk.c: Likewise. * lib/unistr/u16-strpbrk.c: Likewise. * lib/unistr/u32-strpbrk.c: Likewise. * lib/unistr/u8-strstr.c: Likewise. * lib/unistr/u16-strstr.c: Likewise. * lib/unistr/u32-strstr.c: Likewise. * lib/unigbrk.in.h (u*_grapheme_next, u*_grapheme_prev): Define as macros that cast the result to a non-const pointer when the argument is a non-const pointer. * lib/unigbrk/u8-grapheme-next.c: Define _LIBUNISTRING_NO_CONST_GENERICS. * lib/unigbrk/u16-grapheme-next.c: Likewise. * lib/unigbrk/u32-grapheme-next.c: Likewise. * lib/unigbrk/u8-grapheme-prev.c: Likewise. * lib/unigbrk/u16-grapheme-prev.c: Likewise. * lib/unigbrk/u32-grapheme-prev.c: Likewise.