Paul Eggert wrote: > My guess is that it matters with picky implementations intended for > debugging. > The C standard allows implementations to trap when an out-of-range value is > converted to a signed integer, and some debugging implementations do that. > See, > clang's new -fsanitize=implicit-signed-integer-change option for an example.
Does this sanitizer also apply to implicit conversions in static initializers? Anyway, I pushed this change: 2020-08-12 Bruno Haible <br...@clisp.org> Avoid implicit conversion from 'unsigned int' to 'int' in initializers. Reported by Florian Weimer in <https://lists.gnu.org/archive/html/bug-gnulib/2020-08/msg00086.html>. * lib/gen-uni-tables.c (output_predicate): Change the element type of the level3 array to 'unsigned int'. * lib/unictype/bitmap.h (bitmap_lookup): Access an 'unsigned int'. * lib/unictype/categ_*.h: Regenerated. * lib/unictype/ctype_*.h: Regenerated. * lib/unictype/pr_*.h: Regenerated. * lib/unictype/sy_*.h: Regenerated. * lib/unicase/cased.h: Regenerated. * lib/unicase/ignorable.h: Regenerated. https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=1a5ab8331da8c0f2fe54b937064b64271ec15550