| @@ -53,12 +53,15 @@ depcomp | |||
| install-sh | |||
| libtool | |||
| ltmain.sh | |||
| m4/ | |||
| missing | |||
| Makefile | |||
| Makefile.in | |||
| stamp-h1 | |||
| m4/* | |||
| !m4/ax_check_compile_flag.m4 | |||
| # emscripten: | |||
| a.out.js | |||
| a.out.js.mem | |||
| @@ -41,6 +41,15 @@ AC_ARG_WITH([unicode-version], | |||
| AC_SUBST(UCD_VERSION) | |||
| dnl ================================================================ | |||
| dnl Compiler warnings. | |||
| dnl | |||
| dnl Reference: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html | |||
| dnl ================================================================ | |||
| AX_CHECK_COMPILE_FLAG([-Wmissing-prototypes], [CFLAGS="-Wmissing-prototypes $CFLAGS"]) | |||
| AX_CHECK_COMPILE_FLAG([-Wreturn-type], [CFLAGS="-Wreturn-type $CFLAGS"]) | |||
| dnl ================================================================ | |||
| dnl Generate output. | |||
| dnl ================================================================ | |||
| @@ -0,0 +1,75 @@ | |||
| # =========================================================================== | |||
| # https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html | |||
| # =========================================================================== | |||
| # | |||
| # SYNOPSIS | |||
| # | |||
| # AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT]) | |||
| # | |||
| # DESCRIPTION | |||
| # | |||
| # Check whether the given FLAG works with the current language's compiler | |||
| # or gives an error. (Warnings, however, are ignored) | |||
| # | |||
| # ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on | |||
| # success/failure. | |||
| # | |||
| # If EXTRA-FLAGS is defined, it is added to the current language's default | |||
| # flags (e.g. CFLAGS) when the check is done. The check is thus made with | |||
| # the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to | |||
| # force the compiler to issue an error when a bad flag is given. | |||
| # | |||
| # INPUT gives an alternative input source to AC_COMPILE_IFELSE. | |||
| # | |||
| # NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this | |||
| # macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG. | |||
| # | |||
| # LICENSE | |||
| # | |||
| # Copyright (c) 2008 Guido U. Draheim <[email protected]> | |||
| # Copyright (c) 2011 Maarten Bosmans <[email protected]> | |||
| # | |||
| # This program is free software: you can redistribute it and/or modify it | |||
| # under the terms of the GNU General Public License as published by the | |||
| # Free Software Foundation, either version 3 of the License, or (at your | |||
| # option) any later version. | |||
| # | |||
| # This program is distributed in the hope that it will be useful, but | |||
| # WITHOUT ANY WARRANTY; without even the implied warranty of | |||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General | |||
| # Public License for more details. | |||
| # | |||
| # You should have received a copy of the GNU General Public License along | |||
| # with this program. If not, see <https://www.gnu.org/licenses/>. | |||
| # | |||
| # As a special exception, the respective Autoconf Macro's copyright owner | |||
| # gives unlimited permission to copy, distribute and modify the configure | |||
| # scripts that are the output of Autoconf when processing the Macro. You | |||
| # need not follow the terms of the GNU General Public License when using | |||
| # or distributing such scripts, even though portions of the text of the | |||
| # Macro appear in them. The GNU General Public License (GPL) does govern | |||
| # all other use of the material that constitutes the Autoconf Macro. | |||
| # | |||
| # This special exception to the GPL applies to versions of the Autoconf | |||
| # Macro released by the Autoconf Archive. When you make and distribute a | |||
| # modified version of the Autoconf Macro, you may extend this special | |||
| # exception to the GPL to apply to your modified version as well. | |||
| #serial 5 | |||
| AC_DEFUN([AX_CHECK_COMPILE_FLAG], | |||
| [AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF | |||
| AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl | |||
| AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [ | |||
| ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS | |||
| _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1" | |||
| AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])], | |||
| [AS_VAR_SET(CACHEVAR,[yes])], | |||
| [AS_VAR_SET(CACHEVAR,[no])]) | |||
| _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags]) | |||
| AS_VAR_IF(CACHEVAR,yes, | |||
| [m4_default([$2], :)], | |||
| [m4_default([$3], :)]) | |||
| AS_VAR_POPDEF([CACHEVAR])dnl | |||
| ])dnl AX_CHECK_COMPILE_FLAGS | |||
| @@ -26,7 +26,7 @@ | |||
| #include <stddef.h> | |||
| /* Unicode Character Data 9.0.0 */ | |||
| /* Unicode Character Data 10.0.0 */ | |||
| struct case_conversion_entry | |||
| { | |||
| @@ -58,7 +58,7 @@ | |||
| #define Zs UCD_CATEGORY_Zs | |||
| #define Ii UCD_CATEGORY_Ii | |||
| /* Unicode Character Data 9.0.0 */ | |||
| /* Unicode Character Data 10.0.0 */ | |||
| static const uint8_t categories_Cn[256] = | |||
| { | |||
| @@ -3532,6 +3532,7 @@ ucd_category_group ucd_get_category_group_for_category(ucd_category c) | |||
| case Zl: case Zp: case Zs: | |||
| return UCD_CATEGORY_GROUP_Z; | |||
| case Ii: | |||
| default: | |||
| return UCD_CATEGORY_GROUP_I; | |||
| } | |||
| } | |||
| @@ -203,7 +203,7 @@ | |||
| #define Zyyy UCD_SCRIPT_Zyyy | |||
| #define Zzzz UCD_SCRIPT_Zzzz | |||
| /* Unicode Character Data 9.0.0 */ | |||
| /* Unicode Character Data 10.0.0 */ | |||
| static const uint8_t scripts_Latn[256] = | |||
| { | |||
| @@ -33,7 +33,7 @@ static int iswblank(wint_t c) | |||
| } | |||
| #endif | |||
| void fput_utf8c(FILE *out, codepoint_t c) | |||
| static void fput_utf8c(FILE *out, codepoint_t c) | |||
| { | |||
| if (c < 0x80) | |||
| fputc((uint8_t)c, out); | |||
| @@ -57,7 +57,7 @@ void fput_utf8c(FILE *out, codepoint_t c) | |||
| } | |||
| } | |||
| int fget_utf8c(FILE *in, codepoint_t *c) | |||
| static int fget_utf8c(FILE *in, codepoint_t *c) | |||
| { | |||
| int ch = EOF; | |||
| if ((ch = fgetc(in)) == EOF) return 0; | |||
| @@ -90,7 +90,7 @@ int fget_utf8c(FILE *in, codepoint_t *c) | |||
| return 1; | |||
| } | |||
| void uprintf_codepoint(FILE *out, codepoint_t c, char mode) | |||
| static void uprintf_codepoint(FILE *out, codepoint_t c, char mode) | |||
| { | |||
| switch (mode) | |||
| { | |||
| @@ -112,7 +112,7 @@ void uprintf_codepoint(FILE *out, codepoint_t c, char mode) | |||
| } | |||
| } | |||
| void uprintf_is(FILE *out, codepoint_t c, char mode) | |||
| static void uprintf_is(FILE *out, codepoint_t c, char mode) | |||
| { | |||
| switch (mode) | |||
| { | |||
| @@ -155,7 +155,7 @@ void uprintf_is(FILE *out, codepoint_t c, char mode) | |||
| } | |||
| } | |||
| void uprintf(FILE *out, codepoint_t c, const char *format) | |||
| static void uprintf(FILE *out, codepoint_t c, const char *format) | |||
| { | |||
| while (*format) switch (*format) | |||
| { | |||
| @@ -221,7 +221,7 @@ void uprintf(FILE *out, codepoint_t c, const char *format) | |||
| } | |||
| } | |||
| void print_file(FILE *in, const char *format) | |||
| static void print_file(FILE *in, const char *format) | |||
| { | |||
| codepoint_t c = 0; | |||
| while (fget_utf8c(in, &c)) | |||
| @@ -22,7 +22,7 @@ | |||
| #include <string.h> | |||
| #include <stdio.h> | |||
| void fput_utf8c(FILE *out, codepoint_t c) | |||
| static void fput_utf8c(FILE *out, codepoint_t c) | |||
| { | |||
| if (c < 0x80) | |||
| fputc((uint8_t)c, out); | |||
| @@ -46,7 +46,7 @@ void fput_utf8c(FILE *out, codepoint_t c) | |||
| } | |||
| } | |||
| int fget_utf8c(FILE *in, codepoint_t *c) | |||
| static int fget_utf8c(FILE *in, codepoint_t *c) | |||
| { | |||
| int ch = EOF; | |||
| if ((ch = fgetc(in)) == EOF) return 0; | |||
| @@ -79,7 +79,7 @@ int fget_utf8c(FILE *in, codepoint_t *c) | |||
| return 1; | |||
| } | |||
| void uprintf_codepoint(FILE *out, codepoint_t c, char mode) | |||
| static void uprintf_codepoint(FILE *out, codepoint_t c, char mode) | |||
| { | |||
| switch (mode) | |||
| { | |||
| @@ -101,7 +101,7 @@ void uprintf_codepoint(FILE *out, codepoint_t c, char mode) | |||
| } | |||
| } | |||
| void uprintf_is(FILE *out, codepoint_t c, char mode) | |||
| static void uprintf_is(FILE *out, codepoint_t c, char mode) | |||
| { | |||
| switch (mode) | |||
| { | |||
| @@ -144,7 +144,7 @@ void uprintf_is(FILE *out, codepoint_t c, char mode) | |||
| } | |||
| } | |||
| void uprintf(FILE *out, codepoint_t c, const char *format) | |||
| static void uprintf(FILE *out, codepoint_t c, const char *format) | |||
| { | |||
| while (*format) switch (*format) | |||
| { | |||
| @@ -210,7 +210,7 @@ void uprintf(FILE *out, codepoint_t c, const char *format) | |||
| } | |||
| } | |||
| void print_file(FILE *in, const char *format) | |||
| static void print_file(FILE *in, const char *format) | |||
| { | |||
| codepoint_t c = 0; | |||
| while (fget_utf8c(in, &c)) | |||
| @@ -228,6 +228,7 @@ ucd_category_group ucd_get_category_group_for_category(ucd_category c) | |||
| case Zl: case Zp: case Zs: | |||
| return UCD_CATEGORY_GROUP_Z; | |||
| case Ii: | |||
| default: | |||
| return UCD_CATEGORY_GROUP_I; | |||
| } | |||
| } | |||