On Thu, Feb 02, 2023 at 03:47:28PM -0500, D. Ben Knoble wrote: > Further, the following C program compiles without warnings (except for > the unused main parameters): > ``` > #include <regex.h> > #include <assert.h> > #include <stddef.h> > #include <stdio.h> > > int main(int argc, char **argv) { > regex_t re; > int ret = regcomp(&re, "[\xc0-\xff][\x80-\xbf]+", REG_EXTENDED | > REG_NEWLINE); > /* assert(ret != 0); */ > size_t errbuf_size = regerror(ret, &re, NULL, 0); > char errbuf[errbuf_size]; > regerror(ret, &re, errbuf, errbuf_size); > printf("%s\n", errbuf); > } > ``` Just a guess, but does calling: setlocale(LC_CTYPE, ""); at the start of the program change things (you'll probably need to also include locale.h)? I don't have a macos system to test on. -Peff