Change [_Py_]re_compile_pattern() to return a char*.
Since it only returns an error message (or NULL) there's no reason
for it to be unsigned char *, and various compilers like this better.
diff --git a/Modules/regexpr.h b/Modules/regexpr.h
index 729088e..dd66325 100644
--- a/Modules/regexpr.h
+++ b/Modules/regexpr.h
@@ -101,7 +101,7 @@
/* This sets the syntax to use and returns the previous syntax. The
* syntax is specified by a bit mask of the above defined bits. */
-unsigned char *re_compile_pattern(unsigned char *regex, int regex_size, regexp_t compiled);
+char *re_compile_pattern(unsigned char *regex, int regex_size, regexp_t compiled);
/* This compiles the regexp (given in regex and length in regex_size).
* This returns NULL if the regexp compiled successfully, and an error
* message if an error was encountered. The buffer field must be
@@ -138,7 +138,7 @@
extern unsigned char re_syntax_table[256];
void re_compile_initialize();
int re_set_syntax();
-unsigned char *re_compile_pattern();
+char *re_compile_pattern();
int re_match();
int re_search();
void re_compile_fastmap();