diff options
Diffstat (limited to 'tests')
730 files changed, 4685 insertions, 2434 deletions
diff --git a/tests/Makefile.gnulib b/tests/Makefile.gnulib index 661e14dc..4b3f0ea2 100644 --- a/tests/Makefile.gnulib +++ b/tests/Makefile.gnulib @@ -4,7 +4,7 @@  #  # This file 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 +# the Free Software Foundation, either version 3 of the License, or  # (at your option) any later version.  #  # This file is distributed in the hope that it will be useful, @@ -22,7 +22,7 @@  #  # Generated by gnulib-tool. -AUTOMAKE_OPTIONS = 1.11 foreign subdir-objects +AUTOMAKE_OPTIONS = 1.14 foreign subdir-objects  SUBDIRS = .  TESTS = @@ -43,7 +43,7 @@ CLEANFILES =  DISTCLEANFILES =  MAINTAINERCLEANFILES = -CFLAGS = @GL_CFLAG_ALLOW_WARNINGS@ @CFLAGS@ +CFLAGS = @GL_CFLAG_ALLOW_WARNINGS@ $(GL_CFLAG_GNULIB_WARNINGS) @CFLAGS@  CXXFLAGS = @GL_CXXFLAG_ALLOW_WARNINGS@ @CXXFLAGS@  AM_CPPFLAGS = \ @@ -64,10 +64,11 @@ TESTS_ENVIRONMENT += EXEEXT='@EXEEXT@' srcdir='$(srcdir)'  ## begin gnulib module accept +if GL_COND_OBJ_ACCEPT +libtests_a_SOURCES += accept.c +endif -EXTRA_DIST += accept.c w32sock.h - -EXTRA_libtests_a_SOURCES += accept.c +EXTRA_DIST += w32sock.h  ## end   gnulib module accept @@ -151,6 +152,14 @@ EXTRA_DIST += test-array-mergesort.c macros.h  ## end   gnulib module array-mergesort-tests +## begin gnulib module assert-h-tests + +TESTS += test-assert +check_PROGRAMS += test-assert +EXTRA_DIST += test-assert.c + +## end   gnulib module assert-h-tests +  ## begin gnulib module basename-lgpl  libtests_a_SOURCES += basename-lgpl.c @@ -176,10 +185,11 @@ EXTRA_DIST += test-binary-io.sh test-binary-io.c macros.h  ## begin gnulib module bind +if GL_COND_OBJ_BIND +libtests_a_SOURCES += bind.c +endif -EXTRA_DIST += bind.c w32sock.h - -EXTRA_libtests_a_SOURCES += bind.c +EXTRA_DIST += w32sock.h  ## end   gnulib module bind @@ -194,10 +204,9 @@ EXTRA_DIST += test-bind.c signature.h macros.h  ## begin gnulib module btowc - -EXTRA_DIST += btowc.c - -EXTRA_libtests_a_SOURCES += btowc.c +if GL_COND_OBJ_BTOWC +libtests_a_SOURCES += btowc.c +endif  ## end   gnulib module btowc @@ -275,10 +284,9 @@ EXTRA_DIST += test-cloexec.c macros.h  ## begin gnulib module close - -EXTRA_DIST += close.c - -EXTRA_libtests_a_SOURCES += close.c +if GL_COND_OBJ_CLOSE +libtests_a_SOURCES += close.c +endif  ## end   gnulib module close @@ -292,10 +300,11 @@ EXTRA_DIST += test-close.c signature.h macros.h  ## begin gnulib module connect +if GL_COND_OBJ_CONNECT +libtests_a_SOURCES += connect.c +endif -EXTRA_DIST += connect.c w32sock.h - -EXTRA_libtests_a_SOURCES += connect.c +EXTRA_DIST += w32sock.h  ## end   gnulib module connect @@ -343,10 +352,9 @@ EXTRA_DIST += test-ctype.c  ## begin gnulib module dup2 - -EXTRA_DIST += dup2.c - -EXTRA_libtests_a_SOURCES += dup2.c +if GL_COND_OBJ_DUP2 +libtests_a_SOURCES += dup2.c +endif  ## end   gnulib module dup2 @@ -378,10 +386,11 @@ EXTRA_DIST += test-errno.c  ## begin gnulib module error +if GL_COND_OBJ_ERROR +libtests_a_SOURCES += error.c +endif -EXTRA_DIST += error.c error.h - -EXTRA_libtests_a_SOURCES += error.c +EXTRA_DIST += error.h  ## end   gnulib module error @@ -395,10 +404,9 @@ EXTRA_DIST += exitfail.h  ## begin gnulib module fcntl - -EXTRA_DIST += fcntl.c - -EXTRA_libtests_a_SOURCES += fcntl.c +if GL_COND_OBJ_FCNTL +libtests_a_SOURCES += fcntl.c +endif  ## end   gnulib module fcntl @@ -465,10 +473,9 @@ EXTRA_DIST += fd-hook.h  ## begin gnulib module fdopen - -EXTRA_DIST += fdopen.c - -EXTRA_libtests_a_SOURCES += fdopen.c +if GL_COND_OBJ_FDOPEN +libtests_a_SOURCES += fdopen.c +endif  ## end   gnulib module fdopen @@ -556,10 +563,13 @@ EXTRA_DIST += test-fseterr.c  ## begin gnulib module fstat +if GL_COND_OBJ_FSTAT +libtests_a_SOURCES += fstat.c +endif -EXTRA_DIST += fstat.c stat-w32.c stat-w32.h +EXTRA_DIST += stat-w32.c stat-w32.h -EXTRA_libtests_a_SOURCES += fstat.c stat-w32.c +EXTRA_libtests_a_SOURCES += stat-w32.c  ## end   gnulib module fstat @@ -573,10 +583,9 @@ EXTRA_DIST += test-fstat.c signature.h macros.h  ## begin gnulib module ftruncate - -EXTRA_DIST += ftruncate.c - -EXTRA_libtests_a_SOURCES += ftruncate.c +if GL_COND_OBJ_FTRUNCATE +libtests_a_SOURCES += ftruncate.c +endif  ## end   gnulib module ftruncate @@ -617,10 +626,9 @@ gl_V_at = $(AM_V_GEN)  ## begin gnulib module getcwd-lgpl - -EXTRA_DIST += getcwd-lgpl.c - -EXTRA_libtests_a_SOURCES += getcwd-lgpl.c +if GL_COND_OBJ_GETCWD_LGPL +libtests_a_SOURCES += getcwd-lgpl.c +endif  ## end   gnulib module getcwd-lgpl @@ -635,10 +643,9 @@ EXTRA_DIST += test-getcwd-lgpl.c signature.h macros.h  ## begin gnulib module getdtablesize - -EXTRA_DIST += getdtablesize.c - -EXTRA_libtests_a_SOURCES += getdtablesize.c +if GL_COND_OBJ_GETDTABLESIZE +libtests_a_SOURCES += getdtablesize.c +endif  ## end   gnulib module getdtablesize @@ -652,10 +659,9 @@ EXTRA_DIST += test-getdtablesize.c signature.h macros.h  ## begin gnulib module getpagesize - -EXTRA_DIST += getpagesize.c - -EXTRA_libtests_a_SOURCES += getpagesize.c +if GL_COND_OBJ_GETPAGESIZE +libtests_a_SOURCES += getpagesize.c +endif  ## end   gnulib module getpagesize @@ -683,10 +689,9 @@ libtests_a_SOURCES += gettext.h  ## begin gnulib module gettimeofday - -EXTRA_DIST += gettimeofday.c - -EXTRA_libtests_a_SOURCES += gettimeofday.c +if GL_COND_OBJ_GETTIMEOFDAY +libtests_a_SOURCES += gettimeofday.c +endif  ## end   gnulib module gettimeofday @@ -764,10 +769,9 @@ EXTRA_DIST += test-ignore-value.c  ## begin gnulib module inet_pton - -EXTRA_DIST += inet_pton.c - -EXTRA_libtests_a_SOURCES += inet_pton.c +if GL_COND_OBJ_INET_PTON +libtests_a_SOURCES += inet_pton.c +endif  ## end   gnulib module inet_pton @@ -780,6 +784,13 @@ EXTRA_DIST += test-inet_pton.c signature.h macros.h  ## end   gnulib module inet_pton-tests +## begin gnulib module intprops + + +EXTRA_DIST += intprops-internal.h intprops.h + +## end   gnulib module intprops +  ## begin gnulib module intprops-tests  TESTS += test-intprops @@ -798,10 +809,11 @@ EXTRA_DIST += test-inttypes.c  ## begin gnulib module ioctl +if GL_COND_OBJ_IOCTL +libtests_a_SOURCES += ioctl.c +endif -EXTRA_DIST += ioctl.c w32sock.h - -EXTRA_libtests_a_SOURCES += ioctl.c +EXTRA_DIST += w32sock.h  ## end   gnulib module ioctl @@ -815,10 +827,9 @@ EXTRA_DIST += test-ioctl.c signature.h macros.h  ## begin gnulib module isblank - -EXTRA_DIST += isblank.c - -EXTRA_libtests_a_SOURCES += isblank.c +if GL_COND_OBJ_ISBLANK +libtests_a_SOURCES += isblank.c +endif  ## end   gnulib module isblank @@ -911,10 +922,11 @@ EXTRA_DIST += test-limits-h.c  ## begin gnulib module listen +if GL_COND_OBJ_LISTEN +libtests_a_SOURCES += listen.c +endif -EXTRA_DIST += listen.c w32sock.h - -EXTRA_libtests_a_SOURCES += listen.c +EXTRA_DIST += w32sock.h  ## end   gnulib module listen @@ -969,10 +981,9 @@ EXTRA_DIST += test-rwlock1.c test-lock.c test-once.c atomic-int-gnulib.h  ## begin gnulib module lstat - -EXTRA_DIST += lstat.c - -EXTRA_libtests_a_SOURCES += lstat.c +if GL_COND_OBJ_LSTAT +libtests_a_SOURCES += lstat.c +endif  ## end   gnulib module lstat @@ -1049,10 +1060,11 @@ EXTRA_DIST += test-mbsinit.sh test-mbsinit.c signature.h macros.h  ## begin gnulib module mbtowc +if GL_COND_OBJ_MBTOWC +libtests_a_SOURCES += mbtowc.c +endif -EXTRA_DIST += mbtowc-impl.h mbtowc.c - -EXTRA_libtests_a_SOURCES += mbtowc.c +EXTRA_DIST += mbtowc-impl.h  ## end   gnulib module mbtowc @@ -1066,28 +1078,29 @@ EXTRA_DIST += test-memchr.c zerosize-ptr.h signature.h macros.h  ## begin gnulib module msvc-inval +if GL_COND_OBJ_MSVC_INVAL +libtests_a_SOURCES += msvc-inval.c +endif -EXTRA_DIST += msvc-inval.c msvc-inval.h - -EXTRA_libtests_a_SOURCES += msvc-inval.c +EXTRA_DIST += msvc-inval.h  ## end   gnulib module msvc-inval  ## begin gnulib module msvc-nothrow +if GL_COND_OBJ_MSVC_NOTHROW +libtests_a_SOURCES += msvc-nothrow.c +endif -EXTRA_DIST += msvc-nothrow.c msvc-nothrow.h - -EXTRA_libtests_a_SOURCES += msvc-nothrow.c +EXTRA_DIST += msvc-nothrow.h  ## end   gnulib module msvc-nothrow  ## begin gnulib module nanosleep - -EXTRA_DIST += nanosleep.c - -EXTRA_libtests_a_SOURCES += nanosleep.c +if GL_COND_OBJ_NANOSLEEP +libtests_a_SOURCES += nanosleep.c +endif  ## end   gnulib module nanosleep @@ -1139,10 +1152,9 @@ EXTRA_DIST += test-netinet_in.c  ## begin gnulib module open - -EXTRA_DIST += open.c - -EXTRA_libtests_a_SOURCES += open.c +if GL_COND_OBJ_OPEN +libtests_a_SOURCES += open.c +endif  ## end   gnulib module open @@ -1171,10 +1183,9 @@ EXTRA_DIST += test-pathmax.c  ## begin gnulib module perror - -EXTRA_DIST += perror.c - -EXTRA_libtests_a_SOURCES += perror.c +if GL_COND_OBJ_PERROR +libtests_a_SOURCES += perror.c +endif  ## end   gnulib module perror @@ -1188,10 +1199,9 @@ EXTRA_DIST += macros.h signature.h test-perror.c test-perror2.c test-perror.sh  ## begin gnulib module pipe-posix - -EXTRA_DIST += pipe.c - -EXTRA_libtests_a_SOURCES += pipe.c +if GL_COND_OBJ_PIPE +libtests_a_SOURCES += pipe.c +endif  ## end   gnulib module pipe-posix @@ -1219,6 +1229,23 @@ EXTRA_DIST += test-printf-frexpl.c macros.h  ## end   gnulib module printf-frexpl-tests +## begin gnulib module pselect + +if GL_COND_OBJ_PSELECT +libtests_a_SOURCES += pselect.c +endif + +## end   gnulib module pselect + +## begin gnulib module pselect-tests + +TESTS += test-pselect +check_PROGRAMS += test-pselect +test_pselect_LDADD = $(LDADD) @LIB_SELECT@ @LIBSOCKET@ @LIB_PTHREAD_SIGMASK@ $(INET_PTON_LIB) +EXTRA_DIST += test-pselect.c test-select.h macros.h signature.h + +## end   gnulib module pselect-tests +  ## begin gnulib module pthread-h  BUILT_SOURCES += pthread.h @@ -1372,10 +1399,9 @@ EXTRA_DIST += test-pthread.c  ## begin gnulib module pthread-thread - -EXTRA_DIST += pthread-thread.c - -EXTRA_libtests_a_SOURCES += pthread-thread.c +if GL_COND_OBJ_PTHREAD_THREAD +libtests_a_SOURCES += pthread-thread.c +endif  ## end   gnulib module pthread-thread @@ -1390,10 +1416,9 @@ EXTRA_DIST += test-pthread-thread.c macros.h  ## begin gnulib module pthread_sigmask - -EXTRA_DIST += pthread_sigmask.c - -EXTRA_libtests_a_SOURCES += pthread_sigmask.c +if GL_COND_OBJ_PTHREAD_SIGMASK +libtests_a_SOURCES += pthread_sigmask.c +endif  ## end   gnulib module pthread_sigmask @@ -1409,19 +1434,17 @@ EXTRA_DIST += test-pthread_sigmask1.c test-pthread_sigmask2.c signature.h macros  ## begin gnulib module putenv - -EXTRA_DIST += putenv.c - -EXTRA_libtests_a_SOURCES += putenv.c +if GL_COND_OBJ_PUTENV +libtests_a_SOURCES += putenv.c +endif  ## end   gnulib module putenv  ## begin gnulib module raise - -EXTRA_DIST += raise.c - -EXTRA_libtests_a_SOURCES += raise.c +if GL_COND_OBJ_RAISE +libtests_a_SOURCES += raise.c +endif  ## end   gnulib module raise @@ -1461,10 +1484,9 @@ EXTRA_libtests_a_SOURCES += realloc.c  ## begin gnulib module reallocarray - -EXTRA_DIST += reallocarray.c - -EXTRA_libtests_a_SOURCES += reallocarray.c +if GL_COND_OBJ_REALLOCARRAY +libtests_a_SOURCES += reallocarray.c +endif  ## end   gnulib module reallocarray @@ -1522,19 +1544,17 @@ EXTRA_DIST += test-sched.c  ## begin gnulib module sched_yield - -EXTRA_DIST += sched_yield.c - -EXTRA_libtests_a_SOURCES += sched_yield.c +if GL_COND_OBJ_SCHED_YIELD +libtests_a_SOURCES += sched_yield.c +endif  ## end   gnulib module sched_yield  ## begin gnulib module select - -EXTRA_DIST += select.c - -EXTRA_libtests_a_SOURCES += select.c +if GL_COND_OBJ_SELECT +libtests_a_SOURCES += select.c +endif  ## end   gnulib module select @@ -1552,10 +1572,9 @@ EXTRA_DIST += macros.h signature.h test-select.c test-select.h test-select-fd.c  ## begin gnulib module setenv - -EXTRA_DIST += setenv.c - -EXTRA_libtests_a_SOURCES += setenv.c +if GL_COND_OBJ_SETENV +libtests_a_SOURCES += setenv.c +endif  ## end   gnulib module setenv @@ -1569,10 +1588,9 @@ EXTRA_DIST += test-setenv.c signature.h macros.h  ## begin gnulib module setlocale - -EXTRA_DIST += setlocale.c - -EXTRA_libtests_a_SOURCES += setlocale.c +if GL_COND_OBJ_SETLOCALE +libtests_a_SOURCES += setlocale.c +endif  ## end   gnulib module setlocale @@ -1610,10 +1628,11 @@ EXTRA_DIST += test-setlocale1.sh test-setlocale1.c test-setlocale2.sh test-setlo  ## begin gnulib module setsockopt +if GL_COND_OBJ_SETSOCKOPT +libtests_a_SOURCES += setsockopt.c +endif -EXTRA_DIST += setsockopt.c w32sock.h - -EXTRA_libtests_a_SOURCES += setsockopt.c +EXTRA_DIST += w32sock.h  ## end   gnulib module setsockopt @@ -1626,24 +1645,6 @@ EXTRA_DIST += test-setsockopt.c signature.h macros.h  ## end   gnulib module setsockopt-tests -## begin gnulib module sigaction - -libtests_a_SOURCES += sig-handler.c - -EXTRA_DIST += sig-handler.h sigaction.c - -EXTRA_libtests_a_SOURCES += sigaction.c - -## end   gnulib module sigaction - -## begin gnulib module sigaction-tests - -TESTS += test-sigaction -check_PROGRAMS += test-sigaction -EXTRA_DIST += test-sigaction.c signature.h macros.h - -## end   gnulib module sigaction-tests -  ## begin gnulib module signal-h  BUILT_SOURCES += signal.h @@ -1703,10 +1704,9 @@ EXTRA_DIST += test-signbit.c minus-zero.h infinity.h macros.h  ## begin gnulib module sigprocmask - -EXTRA_DIST += sigprocmask.c - -EXTRA_libtests_a_SOURCES += sigprocmask.c +if GL_COND_OBJ_SIGPROCMASK +libtests_a_SOURCES += sigprocmask.c +endif  ## end   gnulib module sigprocmask @@ -1720,10 +1720,9 @@ EXTRA_DIST += test-sigprocmask.c signature.h macros.h  ## begin gnulib module sleep - -EXTRA_DIST += sleep.c - -EXTRA_libtests_a_SOURCES += sleep.c +if GL_COND_OBJ_SLEEP +libtests_a_SOURCES += sleep.c +endif  ## end   gnulib module sleep @@ -1785,10 +1784,11 @@ EXTRA_DIST += warn-on-use.h  ## begin gnulib module socket +if GL_COND_OBJ_SOCKET +libtests_a_SOURCES += socket.c +endif -EXTRA_DIST += socket.c w32sock.h - -EXTRA_libtests_a_SOURCES += socket.c +EXTRA_DIST += w32sock.h  ## end   gnulib module socket @@ -1811,10 +1811,13 @@ EXTRA_DIST += test-sockets.c  ## begin gnulib module stat +if GL_COND_OBJ_STAT +libtests_a_SOURCES += stat.c +endif -EXTRA_DIST += stat-w32.c stat-w32.h stat.c +EXTRA_DIST += stat-w32.c stat-w32.h -EXTRA_libtests_a_SOURCES += stat-w32.c stat.c +EXTRA_libtests_a_SOURCES += stat-w32.c  ## end   gnulib module stat @@ -1880,6 +1883,14 @@ EXTRA_DIST += test-stdbool.c  ## end   gnulib module stdbool-tests +## begin gnulib module stdckdint-tests + +TESTS += test-stdckdint +check_PROGRAMS += test-stdckdint +EXTRA_DIST += macros.h test-intprops.c test-stdckdint.c + +## end   gnulib module stdckdint-tests +  ## begin gnulib module stddef-tests  TESTS += test-stddef @@ -2028,6 +2039,13 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)  	$(AM_V_at)mv $@-t $@  MOSTLYCLEANFILES += stdio.h stdio.h-t +if GL_COND_OBJ_STDIO_READ +libtests_a_SOURCES += stdio-read.c +endif +if GL_COND_OBJ_STDIO_WRITE +libtests_a_SOURCES += stdio-write.c +endif +  EXTRA_DIST += stdio.in.h  ## end   gnulib module stdio @@ -2050,19 +2068,19 @@ EXTRA_DIST += test-stdlib.c test-sys_wait.h  ## begin gnulib module strerror - -EXTRA_DIST += strerror.c - -EXTRA_libtests_a_SOURCES += strerror.c +if GL_COND_OBJ_STRERROR +libtests_a_SOURCES += strerror.c +endif  ## end   gnulib module strerror  ## begin gnulib module strerror-override +if GL_COND_OBJ_STRERROR_OVERRIDE +libtests_a_SOURCES += strerror-override.c +endif -EXTRA_DIST += strerror-override.c strerror-override.h - -EXTRA_libtests_a_SOURCES += strerror-override.c +EXTRA_DIST += strerror-override.h  ## end   gnulib module strerror-override @@ -2138,10 +2156,9 @@ EXTRA_DIST += test-strstr.c zerosize-ptr.h signature.h macros.h  ## begin gnulib module symlink - -EXTRA_DIST += symlink.c - -EXTRA_libtests_a_SOURCES += symlink.c +if GL_COND_OBJ_SYMLINK +libtests_a_SOURCES += symlink.c +endif  ## end   gnulib module symlink @@ -2305,6 +2322,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU  	      -e 's|@''NEXT_SYS_STAT_H''@|$(NEXT_SYS_STAT_H)|g' \  	      -e 's|@''WINDOWS_64_BIT_ST_SIZE''@|$(WINDOWS_64_BIT_ST_SIZE)|g' \  	      -e 's|@''WINDOWS_STAT_TIMESPEC''@|$(WINDOWS_STAT_TIMESPEC)|g' \ +	      -e 's/@''GNULIB_CHMOD''@/$(GL_GNULIB_CHMOD)/g' \  	      -e 's/@''GNULIB_FCHMODAT''@/$(GL_GNULIB_FCHMODAT)/g' \  	      -e 's/@''GNULIB_FSTAT''@/$(GL_GNULIB_FSTAT)/g' \  	      -e 's/@''GNULIB_FSTATAT''@/$(GL_GNULIB_FSTATAT)/g' \ @@ -2336,6 +2354,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU  	      -e 's|@''HAVE_MKNOD''@|$(HAVE_MKNOD)|g' \  	      -e 's|@''HAVE_MKNODAT''@|$(HAVE_MKNODAT)|g' \  	      -e 's|@''HAVE_UTIMENSAT''@|$(HAVE_UTIMENSAT)|g' \ +	      -e 's|@''REPLACE_CHMOD''@|$(REPLACE_CHMOD)|g' \  	      -e 's|@''REPLACE_FCHMODAT''@|$(REPLACE_FCHMODAT)|g' \  	      -e 's|@''REPLACE_FSTAT''@|$(REPLACE_FSTAT)|g' \  	      -e 's|@''REPLACE_FSTATAT''@|$(REPLACE_FSTATAT)|g' \ @@ -6736,10 +6755,9 @@ EXTRA_DIST += uniwidth/test-uc_width.c uniwidth/test-uc_width2.c uniwidth/test-u  ## begin gnulib module unsetenv - -EXTRA_DIST += unsetenv.c - -EXTRA_libtests_a_SOURCES += unsetenv.c +if GL_COND_OBJ_UNSETENV +libtests_a_SOURCES += unsetenv.c +endif  ## end   gnulib module unsetenv @@ -6753,10 +6771,9 @@ EXTRA_DIST += test-unsetenv.c signature.h macros.h  ## begin gnulib module usleep - -EXTRA_DIST += usleep.c - -EXTRA_libtests_a_SOURCES += usleep.c +if GL_COND_OBJ_USLEEP +libtests_a_SOURCES += usleep.c +endif  ## end   gnulib module usleep @@ -6768,6 +6785,13 @@ EXTRA_DIST += test-usleep.c signature.h macros.h  ## end   gnulib module usleep-tests +## begin gnulib module verify + + +EXTRA_DIST += verify.h + +## end   gnulib module verify +  ## begin gnulib module verify-tests  TESTS_ENVIRONMENT += MAKE='$(MAKE)' @@ -6795,10 +6819,9 @@ EXTRA_DIST += test-wchar.c  ## begin gnulib module wcrtomb - -EXTRA_DIST += wcrtomb.c - -EXTRA_libtests_a_SOURCES += wcrtomb.c +if GL_COND_OBJ_WCRTOMB +libtests_a_SOURCES += wcrtomb.c +endif  ## end   gnulib module wcrtomb @@ -6822,19 +6845,19 @@ EXTRA_DIST += test-wcrtomb.sh test-wcrtomb.c test-wcrtomb-w32-1.sh test-wcrtomb-  ## begin gnulib module wctob - -EXTRA_DIST += wctob.c - -EXTRA_libtests_a_SOURCES += wctob.c +if GL_COND_OBJ_WCTOB +libtests_a_SOURCES += wctob.c +endif  ## end   gnulib module wctob  ## begin gnulib module wctomb +if GL_COND_OBJ_WCTOMB +libtests_a_SOURCES += wctomb.c +endif -EXTRA_DIST += wctomb-impl.h wctomb.c - -EXTRA_libtests_a_SOURCES += wctomb.c +EXTRA_DIST += wctomb-impl.h  ## end   gnulib module wctomb @@ -6857,19 +6880,21 @@ EXTRA_DIST += test-wcwidth.c signature.h macros.h  ## begin gnulib module windows-thread +if GL_COND_OBJ_WINDOWS_THREAD +libtests_a_SOURCES += windows-thread.c +endif -EXTRA_DIST += windows-thread.c windows-thread.h - -EXTRA_libtests_a_SOURCES += windows-thread.c +EXTRA_DIST += windows-thread.h  ## end   gnulib module windows-thread  ## begin gnulib module windows-tls +if GL_COND_OBJ_WINDOWS_TLS +libtests_a_SOURCES += windows-tls.c +endif -EXTRA_DIST += windows-tls.c windows-tls.h - -EXTRA_libtests_a_SOURCES += windows-tls.c +EXTRA_DIST += windows-tls.h  ## end   gnulib module windows-tls diff --git a/tests/Makefile.in b/tests/Makefile.in index b2fb0764..1da30a6a 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.16.4 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am.  # @configure_input@  # Copyright (C) 1994-2021 Free Software Foundation, Inc. @@ -18,7 +18,7 @@  #  # This file 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 +# the Free Software Foundation, either version 3 of the License, or  # (at your option) any later version.  #  # This file is distributed in the hope that it will be useful, @@ -114,11 +114,12 @@ build_triplet = @build@  host_triplet = @host@  TESTS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \  	test-arpa_inet$(EXEEXT) test-array-mergesort$(EXEEXT) \ -	test-binary-io.sh test-bind$(EXEEXT) test-btowc1.sh \ -	test-btowc2.sh test-c-ctype$(EXEEXT) test-c-strcase.sh \ -	test-calloc-gnu$(EXEEXT) test-cloexec$(EXEEXT) \ -	test-close$(EXEEXT) test-connect$(EXEEXT) test-ctype$(EXEEXT) \ -	test-dup2$(EXEEXT) test-environ$(EXEEXT) test-errno$(EXEEXT) \ +	test-assert$(EXEEXT) test-binary-io.sh test-bind$(EXEEXT) \ +	test-btowc1.sh test-btowc2.sh test-c-ctype$(EXEEXT) \ +	test-c-strcase.sh test-calloc-gnu$(EXEEXT) \ +	test-cloexec$(EXEEXT) test-close$(EXEEXT) \ +	test-connect$(EXEEXT) test-ctype$(EXEEXT) test-dup2$(EXEEXT) \ +	test-environ$(EXEEXT) test-errno$(EXEEXT) \  	test-fcntl-h$(EXEEXT) test-fcntl$(EXEEXT) test-fdopen$(EXEEXT) \  	test-fgetc$(EXEEXT) test-float$(EXEEXT) test-fputc$(EXEEXT) \  	test-fread$(EXEEXT) test-free$(EXEEXT) \ @@ -149,31 +150,32 @@ TESTS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \  	test-open$(EXEEXT) test-pathmax$(EXEEXT) test-perror.sh \  	test-perror2$(EXEEXT) test-pipe$(EXEEXT) \  	test-printf-frexp$(EXEEXT) test-printf-frexpl$(EXEEXT) \ -	test-pthread$(EXEEXT) test-pthread-thread$(EXEEXT) \ -	test-pthread_sigmask1$(EXEEXT) test-pthread_sigmask2$(EXEEXT) \ -	test-raise$(EXEEXT) test-realloc-gnu$(EXEEXT) \ -	test-reallocarray$(EXEEXT) test-sched$(EXEEXT) \ -	test-select$(EXEEXT) test-select-in.sh test-select-out.sh \ -	test-setenv$(EXEEXT) test-setlocale_null$(EXEEXT) \ +	test-pselect$(EXEEXT) test-pthread$(EXEEXT) \ +	test-pthread-thread$(EXEEXT) test-pthread_sigmask1$(EXEEXT) \ +	test-pthread_sigmask2$(EXEEXT) test-raise$(EXEEXT) \ +	test-realloc-gnu$(EXEEXT) test-reallocarray$(EXEEXT) \ +	test-sched$(EXEEXT) test-select$(EXEEXT) test-select-in.sh \ +	test-select-out.sh test-setenv$(EXEEXT) \ +	test-setlocale_null$(EXEEXT) \  	test-setlocale_null-mt-one$(EXEEXT) \  	test-setlocale_null-mt-all$(EXEEXT) test-setlocale1.sh \  	test-setlocale2.sh test-setsockopt$(EXEEXT) \ -	test-sigaction$(EXEEXT) test-signal-h$(EXEEXT) \ -	test-signbit$(EXEEXT) test-sigprocmask$(EXEEXT) \ -	test-sleep$(EXEEXT) test-sockets$(EXEEXT) test-stat$(EXEEXT) \ +	test-signal-h$(EXEEXT) test-signbit$(EXEEXT) \ +	test-sigprocmask$(EXEEXT) test-sleep$(EXEEXT) \ +	test-sockets$(EXEEXT) test-stat$(EXEEXT) \  	test-stat-time$(EXEEXT) test-stdalign$(EXEEXT) \ -	test-stdbool$(EXEEXT) test-stddef$(EXEEXT) \ -	test-stdint$(EXEEXT) test-stdio$(EXEEXT) test-stdlib$(EXEEXT) \ -	test-strerror$(EXEEXT) test-strerror_r$(EXEEXT) \ -	test-striconveh$(EXEEXT) test-striconveha$(EXEEXT) \ -	test-string$(EXEEXT) test-strncat$(EXEEXT) \ -	test-strstr$(EXEEXT) test-symlink$(EXEEXT) \ -	test-sys_ioctl$(EXEEXT) test-sys_select$(EXEEXT) \ -	test-sys_socket$(EXEEXT) test-sys_stat$(EXEEXT) \ -	test-sys_time$(EXEEXT) test-sys_types$(EXEEXT) \ -	test-sys_uio$(EXEEXT) test-init.sh test-thread_self$(EXEEXT) \ -	test-thread_create$(EXEEXT) test-time$(EXEEXT) \ -	test-cased$(EXEEXT) test-ignorable$(EXEEXT) \ +	test-stdbool$(EXEEXT) test-stdckdint$(EXEEXT) \ +	test-stddef$(EXEEXT) test-stdint$(EXEEXT) test-stdio$(EXEEXT) \ +	test-stdlib$(EXEEXT) test-strerror$(EXEEXT) \ +	test-strerror_r$(EXEEXT) test-striconveh$(EXEEXT) \ +	test-striconveha$(EXEEXT) test-string$(EXEEXT) \ +	test-strncat$(EXEEXT) test-strstr$(EXEEXT) \ +	test-symlink$(EXEEXT) test-sys_ioctl$(EXEEXT) \ +	test-sys_select$(EXEEXT) test-sys_socket$(EXEEXT) \ +	test-sys_stat$(EXEEXT) test-sys_time$(EXEEXT) \ +	test-sys_types$(EXEEXT) test-sys_uio$(EXEEXT) test-init.sh \ +	test-thread_self$(EXEEXT) test-thread_create$(EXEEXT) \ +	test-time$(EXEEXT) test-cased$(EXEEXT) test-ignorable$(EXEEXT) \  	unicase/test-locale-language.sh test-uc_tolower$(EXEEXT) \  	test-uc_totitle$(EXEEXT) test-uc_toupper$(EXEEXT) \  	test-u16-casecmp$(EXEEXT) test-u16-casecoll$(EXEEXT) \ @@ -338,7 +340,7 @@ TESTS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \  	test-u8-possible-linebreaks$(EXEEXT) \  	test-u8-width-linebreaks$(EXEEXT) \  	test-ulc-possible-linebreaks$(EXEEXT) \ -	test-ulc-width-linebreaks$(EXEEXT) $(am__append_3) \ +	test-ulc-width-linebreaks$(EXEEXT) $(am__append_50) \  	test-canonical-decomposition$(EXEEXT) \  	test-compat-decomposition$(EXEEXT) test-composition$(EXEEXT) \  	test-decomposing-form$(EXEEXT) test-decomposition$(EXEEXT) \ @@ -436,12 +438,12 @@ XFAIL_TESTS =  noinst_PROGRAMS = current-locale$(EXEEXT) test-localcharset$(EXEEXT)  check_PROGRAMS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \  	test-arpa_inet$(EXEEXT) test-array-mergesort$(EXEEXT) \ -	test-binary-io$(EXEEXT) test-bind$(EXEEXT) test-btowc$(EXEEXT) \ -	test-c-ctype$(EXEEXT) test-c-strcasecmp$(EXEEXT) \ -	test-c-strncasecmp$(EXEEXT) test-calloc-gnu$(EXEEXT) \ -	test-cloexec$(EXEEXT) test-close$(EXEEXT) \ -	test-connect$(EXEEXT) test-ctype$(EXEEXT) test-dup2$(EXEEXT) \ -	test-environ$(EXEEXT) test-errno$(EXEEXT) \ +	test-assert$(EXEEXT) test-binary-io$(EXEEXT) \ +	test-bind$(EXEEXT) test-btowc$(EXEEXT) test-c-ctype$(EXEEXT) \ +	test-c-strcasecmp$(EXEEXT) test-c-strncasecmp$(EXEEXT) \ +	test-calloc-gnu$(EXEEXT) test-cloexec$(EXEEXT) \ +	test-close$(EXEEXT) test-connect$(EXEEXT) test-ctype$(EXEEXT) \ +	test-dup2$(EXEEXT) test-environ$(EXEEXT) test-errno$(EXEEXT) \  	test-fcntl-h$(EXEEXT) test-fcntl$(EXEEXT) test-fdopen$(EXEEXT) \  	test-fgetc$(EXEEXT) test-float$(EXEEXT) test-fputc$(EXEEXT) \  	test-fread$(EXEEXT) test-free$(EXEEXT) \ @@ -470,32 +472,32 @@ check_PROGRAMS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \  	test-pathmax$(EXEEXT) test-perror$(EXEEXT) \  	test-perror2$(EXEEXT) test-pipe$(EXEEXT) \  	test-printf-frexp$(EXEEXT) test-printf-frexpl$(EXEEXT) \ -	test-pthread$(EXEEXT) test-pthread-thread$(EXEEXT) \ -	test-pthread_sigmask1$(EXEEXT) test-pthread_sigmask2$(EXEEXT) \ -	test-raise$(EXEEXT) test-realloc-gnu$(EXEEXT) \ -	test-reallocarray$(EXEEXT) test-sched$(EXEEXT) \ -	test-select$(EXEEXT) test-select-fd$(EXEEXT) \ -	test-select-stdin$(EXEEXT) test-setenv$(EXEEXT) \ -	test-setlocale_null$(EXEEXT) \ +	test-pselect$(EXEEXT) test-pthread$(EXEEXT) \ +	test-pthread-thread$(EXEEXT) test-pthread_sigmask1$(EXEEXT) \ +	test-pthread_sigmask2$(EXEEXT) test-raise$(EXEEXT) \ +	test-realloc-gnu$(EXEEXT) test-reallocarray$(EXEEXT) \ +	test-sched$(EXEEXT) test-select$(EXEEXT) \ +	test-select-fd$(EXEEXT) test-select-stdin$(EXEEXT) \ +	test-setenv$(EXEEXT) test-setlocale_null$(EXEEXT) \  	test-setlocale_null-mt-one$(EXEEXT) \  	test-setlocale_null-mt-all$(EXEEXT) test-setlocale1$(EXEEXT) \  	test-setlocale2$(EXEEXT) test-setsockopt$(EXEEXT) \ -	test-sigaction$(EXEEXT) test-signal-h$(EXEEXT) \ -	test-signbit$(EXEEXT) test-sigprocmask$(EXEEXT) \ -	test-sleep$(EXEEXT) test-sockets$(EXEEXT) test-stat$(EXEEXT) \ +	test-signal-h$(EXEEXT) test-signbit$(EXEEXT) \ +	test-sigprocmask$(EXEEXT) test-sleep$(EXEEXT) \ +	test-sockets$(EXEEXT) test-stat$(EXEEXT) \  	test-stat-time$(EXEEXT) test-stdalign$(EXEEXT) \ -	test-stdbool$(EXEEXT) test-stddef$(EXEEXT) \ -	test-stdint$(EXEEXT) test-stdio$(EXEEXT) test-stdlib$(EXEEXT) \ -	test-strerror$(EXEEXT) test-strerror_r$(EXEEXT) \ -	test-striconveh$(EXEEXT) test-striconveha$(EXEEXT) \ -	test-string$(EXEEXT) test-strncat$(EXEEXT) \ -	test-strstr$(EXEEXT) test-symlink$(EXEEXT) \ -	test-sys_ioctl$(EXEEXT) test-sys_select$(EXEEXT) \ -	test-sys_socket$(EXEEXT) test-sys_stat$(EXEEXT) \ -	test-sys_time$(EXEEXT) test-sys_types$(EXEEXT) \ -	test-sys_uio$(EXEEXT) test-thread_self$(EXEEXT) \ -	test-thread_create$(EXEEXT) test-time$(EXEEXT) \ -	test-cased$(EXEEXT) test-ignorable$(EXEEXT) \ +	test-stdbool$(EXEEXT) test-stdckdint$(EXEEXT) \ +	test-stddef$(EXEEXT) test-stdint$(EXEEXT) test-stdio$(EXEEXT) \ +	test-stdlib$(EXEEXT) test-strerror$(EXEEXT) \ +	test-strerror_r$(EXEEXT) test-striconveh$(EXEEXT) \ +	test-striconveha$(EXEEXT) test-string$(EXEEXT) \ +	test-strncat$(EXEEXT) test-strstr$(EXEEXT) \ +	test-symlink$(EXEEXT) test-sys_ioctl$(EXEEXT) \ +	test-sys_select$(EXEEXT) test-sys_socket$(EXEEXT) \ +	test-sys_stat$(EXEEXT) test-sys_time$(EXEEXT) \ +	test-sys_types$(EXEEXT) test-sys_uio$(EXEEXT) \ +	test-thread_self$(EXEEXT) test-thread_create$(EXEEXT) \ +	test-time$(EXEEXT) test-cased$(EXEEXT) test-ignorable$(EXEEXT) \  	test-locale-language$(EXEEXT) test-uc_tolower$(EXEEXT) \  	test-uc_totitle$(EXEEXT) test-uc_toupper$(EXEEXT) \  	test-u16-casecmp$(EXEEXT) test-u16-casecoll$(EXEEXT) \ @@ -749,21 +751,77 @@ check_PROGRAMS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \  	test-wcrtomb-w32$(EXEEXT) test-wctype-h$(EXEEXT) \  	test-wcwidth$(EXEEXT) test-xalloc-die$(EXEEXT)  EXTRA_PROGRAMS = test-verify-try$(EXEEXT) -@WOE32DLL_FALSE@am__append_1 = test-categ_none -@WOE32DLL_FALSE@am__append_2 = test-categ_none +@GL_COND_OBJ_ACCEPT_TRUE@am__append_1 = accept.c +@GL_COND_OBJ_BIND_TRUE@am__append_2 = bind.c +@GL_COND_OBJ_BTOWC_TRUE@am__append_3 = btowc.c +@GL_COND_OBJ_CLOSE_TRUE@am__append_4 = close.c +@GL_COND_OBJ_CONNECT_TRUE@am__append_5 = connect.c +@GL_COND_OBJ_DUP2_TRUE@am__append_6 = dup2.c +@GL_COND_OBJ_ERROR_TRUE@am__append_7 = error.c +@GL_COND_OBJ_FCNTL_TRUE@am__append_8 = fcntl.c +@GL_COND_OBJ_FDOPEN_TRUE@am__append_9 = fdopen.c +@GL_COND_OBJ_FSTAT_TRUE@am__append_10 = fstat.c +@GL_COND_OBJ_FTRUNCATE_TRUE@am__append_11 = ftruncate.c +@GL_COND_OBJ_GETCWD_LGPL_TRUE@am__append_12 = getcwd-lgpl.c +@GL_COND_OBJ_GETDTABLESIZE_TRUE@am__append_13 = getdtablesize.c +@GL_COND_OBJ_GETPAGESIZE_TRUE@am__append_14 = getpagesize.c +@GL_COND_OBJ_GETTIMEOFDAY_TRUE@am__append_15 = gettimeofday.c +@GL_COND_OBJ_INET_PTON_TRUE@am__append_16 = inet_pton.c +@GL_COND_OBJ_IOCTL_TRUE@am__append_17 = ioctl.c +@GL_COND_OBJ_ISBLANK_TRUE@am__append_18 = isblank.c +@GL_COND_OBJ_LISTEN_TRUE@am__append_19 = listen.c +@GL_COND_OBJ_LSTAT_TRUE@am__append_20 = lstat.c +@GL_COND_OBJ_MBTOWC_TRUE@am__append_21 = mbtowc.c +@GL_COND_OBJ_MSVC_INVAL_TRUE@am__append_22 = msvc-inval.c +@GL_COND_OBJ_MSVC_NOTHROW_TRUE@am__append_23 = msvc-nothrow.c +@GL_COND_OBJ_NANOSLEEP_TRUE@am__append_24 = nanosleep.c +@GL_COND_OBJ_OPEN_TRUE@am__append_25 = open.c +@GL_COND_OBJ_PERROR_TRUE@am__append_26 = perror.c +@GL_COND_OBJ_PIPE_TRUE@am__append_27 = pipe.c +@GL_COND_OBJ_PSELECT_TRUE@am__append_28 = pselect.c +@GL_COND_OBJ_PTHREAD_THREAD_TRUE@am__append_29 = pthread-thread.c +@GL_COND_OBJ_PTHREAD_SIGMASK_TRUE@am__append_30 = pthread_sigmask.c +@GL_COND_OBJ_PUTENV_TRUE@am__append_31 = putenv.c +@GL_COND_OBJ_RAISE_TRUE@am__append_32 = raise.c +@GL_COND_OBJ_REALLOCARRAY_TRUE@am__append_33 = reallocarray.c +@GL_COND_OBJ_SCHED_YIELD_TRUE@am__append_34 = sched_yield.c +@GL_COND_OBJ_SELECT_TRUE@am__append_35 = select.c +@GL_COND_OBJ_SETENV_TRUE@am__append_36 = setenv.c +@GL_COND_OBJ_SETLOCALE_TRUE@am__append_37 = setlocale.c +@GL_COND_OBJ_SETSOCKOPT_TRUE@am__append_38 = setsockopt.c +@GL_COND_OBJ_SIGPROCMASK_TRUE@am__append_39 = sigprocmask.c +@GL_COND_OBJ_SLEEP_TRUE@am__append_40 = sleep.c +@GL_COND_OBJ_SOCKET_TRUE@am__append_41 = socket.c +@GL_COND_OBJ_STAT_TRUE@am__append_42 = stat.c +@GL_COND_OBJ_STDIO_READ_TRUE@am__append_43 = stdio-read.c +@GL_COND_OBJ_STDIO_WRITE_TRUE@am__append_44 = stdio-write.c +@GL_COND_OBJ_STRERROR_TRUE@am__append_45 = strerror.c +@GL_COND_OBJ_STRERROR_OVERRIDE_TRUE@am__append_46 = strerror-override.c +@GL_COND_OBJ_SYMLINK_TRUE@am__append_47 = symlink.c +@WOE32DLL_FALSE@am__append_48 = test-categ_none +@WOE32DLL_FALSE@am__append_49 = test-categ_none  # Unlike other libunistring modules, this test passes only when the  # same version of uniname/uniname.c is used (even if it is newer). -@LIBUNISTRING_COMPILE_UNINAME_UNINAME_TRUE@am__append_3 = uniname/test-uninames.sh -@LIBUNISTRING_COMPILE_UNINAME_UNINAME_TRUE@am__append_4 = test-uninames +@LIBUNISTRING_COMPILE_UNINAME_UNINAME_TRUE@am__append_50 = uniname/test-uninames.sh +@LIBUNISTRING_COMPILE_UNINAME_UNINAME_TRUE@am__append_51 = test-uninames +@GL_COND_OBJ_UNSETENV_TRUE@am__append_52 = unsetenv.c +@GL_COND_OBJ_USLEEP_TRUE@am__append_53 = usleep.c +@GL_COND_OBJ_WCRTOMB_TRUE@am__append_54 = wcrtomb.c +@GL_COND_OBJ_WCTOB_TRUE@am__append_55 = wctob.c +@GL_COND_OBJ_WCTOMB_TRUE@am__append_56 = wctomb.c +@GL_COND_OBJ_WINDOWS_THREAD_TRUE@am__append_57 = windows-thread.c +@GL_COND_OBJ_WINDOWS_TLS_TRUE@am__append_58 = windows-tls.c  subdir = tests  ACLOCAL_M4 = $(top_srcdir)/aclocal.m4  am__aclocal_m4_deps = $(top_srcdir)/gnulib-m4/00gnulib.m4 \  	$(top_srcdir)/gnulib-m4/absolute-header.m4 \  	$(top_srcdir)/gnulib-m4/alloca.m4 \  	$(top_srcdir)/gnulib-m4/arpa_inet_h.m4 \ +	$(top_srcdir)/gnulib-m4/assert_h.m4 \  	$(top_srcdir)/gnulib-m4/btowc.m4 \  	$(top_srcdir)/gnulib-m4/builtin-expect.m4 \ +	$(top_srcdir)/gnulib-m4/c-bool.m4 \  	$(top_srcdir)/gnulib-m4/calloc.m4 \  	$(top_srcdir)/gnulib-m4/close.m4 \  	$(top_srcdir)/gnulib-m4/codeset.m4 \ @@ -868,6 +926,7 @@ am__aclocal_m4_deps = $(top_srcdir)/gnulib-m4/00gnulib.m4 \  	$(top_srcdir)/gnulib-m4/printf-frexp.m4 \  	$(top_srcdir)/gnulib-m4/printf-frexpl.m4 \  	$(top_srcdir)/gnulib-m4/printf.m4 \ +	$(top_srcdir)/gnulib-m4/pselect.m4 \  	$(top_srcdir)/gnulib-m4/pthread-thread.m4 \  	$(top_srcdir)/gnulib-m4/pthread_h.m4 \  	$(top_srcdir)/gnulib-m4/pthread_rwlock_rdlock.m4 \ @@ -884,7 +943,6 @@ am__aclocal_m4_deps = $(top_srcdir)/gnulib-m4/00gnulib.m4 \  	$(top_srcdir)/gnulib-m4/setenv.m4 \  	$(top_srcdir)/gnulib-m4/setlocale.m4 \  	$(top_srcdir)/gnulib-m4/setlocale_null.m4 \ -	$(top_srcdir)/gnulib-m4/sigaction.m4 \  	$(top_srcdir)/gnulib-m4/signal_h.m4 \  	$(top_srcdir)/gnulib-m4/signalblocking.m4 \  	$(top_srcdir)/gnulib-m4/signbit.m4 \ @@ -898,7 +956,6 @@ am__aclocal_m4_deps = $(top_srcdir)/gnulib-m4/00gnulib.m4 \  	$(top_srcdir)/gnulib-m4/stat-time.m4 \  	$(top_srcdir)/gnulib-m4/stat.m4 \  	$(top_srcdir)/gnulib-m4/stdalign.m4 \ -	$(top_srcdir)/gnulib-m4/stdbool.m4 \  	$(top_srcdir)/gnulib-m4/stddef_h.m4 \  	$(top_srcdir)/gnulib-m4/stdint.m4 \  	$(top_srcdir)/gnulib-m4/stdint_h.m4 \ @@ -962,13 +1019,106 @@ am__v_AR_0 = @echo "  AR      " $@;  am__v_AR_1 =   libtests_a_AR = $(AR) $(ARFLAGS)  am__DEPENDENCIES_1 = +am__libtests_a_SOURCES_DIST = accept.c basename-lgpl.c binary-io.h \ +	binary-io.c bind.c btowc.c cloexec.c close.c connect.c dup2.c \ +	error.c exitfail.c fcntl.c fd-hook.c fdopen.c fstat.c \ +	ftruncate.c getcwd-lgpl.c getdtablesize.c getpagesize.c \ +	getprogname.h getprogname.c gettext.h gettimeofday.c ialloc.c \ +	inet_pton.c ioctl.c isblank.c listen.c lstat.c mbtowc.c \ +	msvc-inval.c msvc-nothrow.c nanosleep.c open.c perror.c pipe.c \ +	pselect.c pthread-thread.c pthread_sigmask.c putenv.c raise.c \ +	reallocarray.c sched_yield.c select.c setenv.c setlocale.c \ +	setsockopt.c sigprocmask.c sleep.c socket.c sockets.h \ +	sockets.c stat.c stat-time.c stdio-read.c stdio-write.c \ +	strerror.c strerror-override.c symlink.c sys_socket.c \ +	glthread/thread.h glthread/thread.c unsetenv.c usleep.c \ +	wcrtomb.c wctob.c wctomb.c windows-thread.c windows-tls.c \ +	xmalloc.c xalloc-die.c glthread/yield.h +@GL_COND_OBJ_ACCEPT_TRUE@am__objects_1 = accept.$(OBJEXT) +@GL_COND_OBJ_BIND_TRUE@am__objects_2 = bind.$(OBJEXT) +@GL_COND_OBJ_BTOWC_TRUE@am__objects_3 = btowc.$(OBJEXT) +@GL_COND_OBJ_CLOSE_TRUE@am__objects_4 = close.$(OBJEXT) +@GL_COND_OBJ_CONNECT_TRUE@am__objects_5 = connect.$(OBJEXT) +@GL_COND_OBJ_DUP2_TRUE@am__objects_6 = dup2.$(OBJEXT) +@GL_COND_OBJ_ERROR_TRUE@am__objects_7 = error.$(OBJEXT) +@GL_COND_OBJ_FCNTL_TRUE@am__objects_8 = fcntl.$(OBJEXT) +@GL_COND_OBJ_FDOPEN_TRUE@am__objects_9 = fdopen.$(OBJEXT) +@GL_COND_OBJ_FSTAT_TRUE@am__objects_10 = fstat.$(OBJEXT) +@GL_COND_OBJ_FTRUNCATE_TRUE@am__objects_11 = ftruncate.$(OBJEXT) +@GL_COND_OBJ_GETCWD_LGPL_TRUE@am__objects_12 = getcwd-lgpl.$(OBJEXT) +@GL_COND_OBJ_GETDTABLESIZE_TRUE@am__objects_13 =  \ +@GL_COND_OBJ_GETDTABLESIZE_TRUE@	getdtablesize.$(OBJEXT) +@GL_COND_OBJ_GETPAGESIZE_TRUE@am__objects_14 = getpagesize.$(OBJEXT) +@GL_COND_OBJ_GETTIMEOFDAY_TRUE@am__objects_15 =  \ +@GL_COND_OBJ_GETTIMEOFDAY_TRUE@	gettimeofday.$(OBJEXT) +@GL_COND_OBJ_INET_PTON_TRUE@am__objects_16 = inet_pton.$(OBJEXT) +@GL_COND_OBJ_IOCTL_TRUE@am__objects_17 = ioctl.$(OBJEXT) +@GL_COND_OBJ_ISBLANK_TRUE@am__objects_18 = isblank.$(OBJEXT) +@GL_COND_OBJ_LISTEN_TRUE@am__objects_19 = listen.$(OBJEXT) +@GL_COND_OBJ_LSTAT_TRUE@am__objects_20 = lstat.$(OBJEXT) +@GL_COND_OBJ_MBTOWC_TRUE@am__objects_21 = mbtowc.$(OBJEXT) +@GL_COND_OBJ_MSVC_INVAL_TRUE@am__objects_22 = msvc-inval.$(OBJEXT) +@GL_COND_OBJ_MSVC_NOTHROW_TRUE@am__objects_23 =  \ +@GL_COND_OBJ_MSVC_NOTHROW_TRUE@	msvc-nothrow.$(OBJEXT) +@GL_COND_OBJ_NANOSLEEP_TRUE@am__objects_24 = nanosleep.$(OBJEXT) +@GL_COND_OBJ_OPEN_TRUE@am__objects_25 = open.$(OBJEXT) +@GL_COND_OBJ_PERROR_TRUE@am__objects_26 = perror.$(OBJEXT) +@GL_COND_OBJ_PIPE_TRUE@am__objects_27 = pipe.$(OBJEXT) +@GL_COND_OBJ_PSELECT_TRUE@am__objects_28 = pselect.$(OBJEXT) +@GL_COND_OBJ_PTHREAD_THREAD_TRUE@am__objects_29 =  \ +@GL_COND_OBJ_PTHREAD_THREAD_TRUE@	pthread-thread.$(OBJEXT) +@GL_COND_OBJ_PTHREAD_SIGMASK_TRUE@am__objects_30 =  \ +@GL_COND_OBJ_PTHREAD_SIGMASK_TRUE@	pthread_sigmask.$(OBJEXT) +@GL_COND_OBJ_PUTENV_TRUE@am__objects_31 = putenv.$(OBJEXT) +@GL_COND_OBJ_RAISE_TRUE@am__objects_32 = raise.$(OBJEXT) +@GL_COND_OBJ_REALLOCARRAY_TRUE@am__objects_33 =  \ +@GL_COND_OBJ_REALLOCARRAY_TRUE@	reallocarray.$(OBJEXT) +@GL_COND_OBJ_SCHED_YIELD_TRUE@am__objects_34 = sched_yield.$(OBJEXT) +@GL_COND_OBJ_SELECT_TRUE@am__objects_35 = select.$(OBJEXT) +@GL_COND_OBJ_SETENV_TRUE@am__objects_36 = setenv.$(OBJEXT) +@GL_COND_OBJ_SETLOCALE_TRUE@am__objects_37 = setlocale.$(OBJEXT) +@GL_COND_OBJ_SETSOCKOPT_TRUE@am__objects_38 = setsockopt.$(OBJEXT) +@GL_COND_OBJ_SIGPROCMASK_TRUE@am__objects_39 = sigprocmask.$(OBJEXT) +@GL_COND_OBJ_SLEEP_TRUE@am__objects_40 = sleep.$(OBJEXT) +@GL_COND_OBJ_SOCKET_TRUE@am__objects_41 = socket.$(OBJEXT) +@GL_COND_OBJ_STAT_TRUE@am__objects_42 = stat.$(OBJEXT) +@GL_COND_OBJ_STDIO_READ_TRUE@am__objects_43 = stdio-read.$(OBJEXT) +@GL_COND_OBJ_STDIO_WRITE_TRUE@am__objects_44 = stdio-write.$(OBJEXT) +@GL_COND_OBJ_STRERROR_TRUE@am__objects_45 = strerror.$(OBJEXT) +@GL_COND_OBJ_STRERROR_OVERRIDE_TRUE@am__objects_46 = strerror-override.$(OBJEXT) +@GL_COND_OBJ_SYMLINK_TRUE@am__objects_47 = symlink.$(OBJEXT)  am__dirstamp = $(am__leading_dot)dirstamp -am_libtests_a_OBJECTS = basename-lgpl.$(OBJEXT) binary-io.$(OBJEXT) \ -	cloexec.$(OBJEXT) exitfail.$(OBJEXT) fd-hook.$(OBJEXT) \ -	getprogname.$(OBJEXT) ialloc.$(OBJEXT) sig-handler.$(OBJEXT) \ -	sockets.$(OBJEXT) stat-time.$(OBJEXT) sys_socket.$(OBJEXT) \ -	glthread/thread.$(OBJEXT) xmalloc.$(OBJEXT) \ -	xalloc-die.$(OBJEXT) +@GL_COND_OBJ_UNSETENV_TRUE@am__objects_48 = unsetenv.$(OBJEXT) +@GL_COND_OBJ_USLEEP_TRUE@am__objects_49 = usleep.$(OBJEXT) +@GL_COND_OBJ_WCRTOMB_TRUE@am__objects_50 = wcrtomb.$(OBJEXT) +@GL_COND_OBJ_WCTOB_TRUE@am__objects_51 = wctob.$(OBJEXT) +@GL_COND_OBJ_WCTOMB_TRUE@am__objects_52 = wctomb.$(OBJEXT) +@GL_COND_OBJ_WINDOWS_THREAD_TRUE@am__objects_53 =  \ +@GL_COND_OBJ_WINDOWS_THREAD_TRUE@	windows-thread.$(OBJEXT) +@GL_COND_OBJ_WINDOWS_TLS_TRUE@am__objects_54 = windows-tls.$(OBJEXT) +am_libtests_a_OBJECTS = $(am__objects_1) basename-lgpl.$(OBJEXT) \ +	binary-io.$(OBJEXT) $(am__objects_2) $(am__objects_3) \ +	cloexec.$(OBJEXT) $(am__objects_4) $(am__objects_5) \ +	$(am__objects_6) $(am__objects_7) exitfail.$(OBJEXT) \ +	$(am__objects_8) fd-hook.$(OBJEXT) $(am__objects_9) \ +	$(am__objects_10) $(am__objects_11) $(am__objects_12) \ +	$(am__objects_13) $(am__objects_14) getprogname.$(OBJEXT) \ +	$(am__objects_15) ialloc.$(OBJEXT) $(am__objects_16) \ +	$(am__objects_17) $(am__objects_18) $(am__objects_19) \ +	$(am__objects_20) $(am__objects_21) $(am__objects_22) \ +	$(am__objects_23) $(am__objects_24) $(am__objects_25) \ +	$(am__objects_26) $(am__objects_27) $(am__objects_28) \ +	$(am__objects_29) $(am__objects_30) $(am__objects_31) \ +	$(am__objects_32) $(am__objects_33) $(am__objects_34) \ +	$(am__objects_35) $(am__objects_36) $(am__objects_37) \ +	$(am__objects_38) $(am__objects_39) $(am__objects_40) \ +	$(am__objects_41) sockets.$(OBJEXT) $(am__objects_42) \ +	stat-time.$(OBJEXT) $(am__objects_43) $(am__objects_44) \ +	$(am__objects_45) $(am__objects_46) $(am__objects_47) \ +	sys_socket.$(OBJEXT) glthread/thread.$(OBJEXT) \ +	$(am__objects_48) $(am__objects_49) $(am__objects_50) \ +	$(am__objects_51) $(am__objects_52) $(am__objects_53) \ +	$(am__objects_54) xmalloc.$(OBJEXT) xalloc-die.$(OBJEXT)  libtests_a_OBJECTS = $(am_libtests_a_OBJECTS)  am_current_locale_OBJECTS = locale.$(OBJEXT)  current_locale_OBJECTS = $(am_current_locale_OBJECTS) @@ -1003,6 +1153,12 @@ test_array_mergesort_LDADD = $(LDADD)  test_array_mergesort_DEPENDENCIES = libtests.a ../lib/libunistring.la \  	libtests.a ../lib/libunistring.la libtests.a \  	$(am__DEPENDENCIES_1) +test_assert_SOURCES = test-assert.c +test_assert_OBJECTS = test-assert.$(OBJEXT) +test_assert_LDADD = $(LDADD) +test_assert_DEPENDENCIES = libtests.a ../lib/libunistring.la \ +	libtests.a ../lib/libunistring.la libtests.a \ +	$(am__DEPENDENCIES_1)  am_test_bidi_byname_OBJECTS = unictype/test-bidi_byname.$(OBJEXT)  test_bidi_byname_OBJECTS = $(am_test_bidi_byname_OBJECTS)  test_bidi_byname_DEPENDENCIES = $(am__DEPENDENCIES_2) @@ -2099,6 +2255,10 @@ test_printf_frexpl_LDADD = $(LDADD)  test_printf_frexpl_DEPENDENCIES = libtests.a ../lib/libunistring.la \  	libtests.a ../lib/libunistring.la libtests.a \  	$(am__DEPENDENCIES_1) +test_pselect_SOURCES = test-pselect.c +test_pselect_OBJECTS = test-pselect.$(OBJEXT) +test_pselect_DEPENDENCIES = $(am__DEPENDENCIES_2) \ +	$(am__DEPENDENCIES_1)  test_pthread_SOURCES = test-pthread.c  test_pthread_OBJECTS = test-pthread.$(OBJEXT)  test_pthread_LDADD = $(LDADD) @@ -2179,12 +2339,6 @@ test_setlocale_null_mt_one_DEPENDENCIES = $(am__DEPENDENCIES_2) \  test_setsockopt_SOURCES = test-setsockopt.c  test_setsockopt_OBJECTS = test-setsockopt.$(OBJEXT)  test_setsockopt_DEPENDENCIES = $(am__DEPENDENCIES_2) -test_sigaction_SOURCES = test-sigaction.c -test_sigaction_OBJECTS = test-sigaction.$(OBJEXT) -test_sigaction_LDADD = $(LDADD) -test_sigaction_DEPENDENCIES = libtests.a ../lib/libunistring.la \ -	libtests.a ../lib/libunistring.la libtests.a \ -	$(am__DEPENDENCIES_1)  test_signal_h_SOURCES = test-signal-h.c  test_signal_h_OBJECTS = test-signal-h.$(OBJEXT)  test_signal_h_LDADD = $(LDADD) @@ -2230,6 +2384,12 @@ test_stdbool_LDADD = $(LDADD)  test_stdbool_DEPENDENCIES = libtests.a ../lib/libunistring.la \  	libtests.a ../lib/libunistring.la libtests.a \  	$(am__DEPENDENCIES_1) +test_stdckdint_SOURCES = test-stdckdint.c +test_stdckdint_OBJECTS = test-stdckdint.$(OBJEXT) +test_stdckdint_LDADD = $(LDADD) +test_stdckdint_DEPENDENCIES = libtests.a ../lib/libunistring.la \ +	libtests.a ../lib/libunistring.la libtests.a \ +	$(am__DEPENDENCIES_1)  test_stddef_SOURCES = test-stddef.c  test_stddef_OBJECTS = test-stddef.$(OBJEXT)  test_stddef_LDADD = $(LDADD) @@ -3261,22 +3421,23 @@ am__depfiles_remade = ./$(DEPDIR)/accept.Po ./$(DEPDIR)/alloca.Po \  	./$(DEPDIR)/msvc-inval.Po ./$(DEPDIR)/msvc-nothrow.Po \  	./$(DEPDIR)/nanosleep.Po ./$(DEPDIR)/open.Po \  	./$(DEPDIR)/perror.Po ./$(DEPDIR)/pipe.Po \ -	./$(DEPDIR)/pthread-thread.Po ./$(DEPDIR)/pthread_sigmask.Po \ -	./$(DEPDIR)/putenv.Po ./$(DEPDIR)/raise.Po \ -	./$(DEPDIR)/randomd.Po ./$(DEPDIR)/randoml.Po \ -	./$(DEPDIR)/realloc.Po ./$(DEPDIR)/reallocarray.Po \ -	./$(DEPDIR)/sched_yield.Po ./$(DEPDIR)/select.Po \ -	./$(DEPDIR)/setenv.Po ./$(DEPDIR)/setlocale.Po \ -	./$(DEPDIR)/setsockopt.Po ./$(DEPDIR)/sig-handler.Po \ -	./$(DEPDIR)/sigaction.Po ./$(DEPDIR)/sigprocmask.Po \ -	./$(DEPDIR)/sleep.Po ./$(DEPDIR)/socket.Po \ -	./$(DEPDIR)/sockets.Po ./$(DEPDIR)/stat-time.Po \ -	./$(DEPDIR)/stat-w32.Po ./$(DEPDIR)/stat.Po \ -	./$(DEPDIR)/strerror-override.Po ./$(DEPDIR)/strerror.Po \ -	./$(DEPDIR)/strerror_r.Po ./$(DEPDIR)/symlink.Po \ -	./$(DEPDIR)/sys_socket.Po ./$(DEPDIR)/test-accept.Po \ -	./$(DEPDIR)/test-alloca-opt.Po ./$(DEPDIR)/test-arpa_inet.Po \ -	./$(DEPDIR)/test-array-mergesort.Po \ +	./$(DEPDIR)/pselect.Po ./$(DEPDIR)/pthread-thread.Po \ +	./$(DEPDIR)/pthread_sigmask.Po ./$(DEPDIR)/putenv.Po \ +	./$(DEPDIR)/raise.Po ./$(DEPDIR)/randomd.Po \ +	./$(DEPDIR)/randoml.Po ./$(DEPDIR)/realloc.Po \ +	./$(DEPDIR)/reallocarray.Po ./$(DEPDIR)/sched_yield.Po \ +	./$(DEPDIR)/select.Po ./$(DEPDIR)/setenv.Po \ +	./$(DEPDIR)/setlocale.Po ./$(DEPDIR)/setsockopt.Po \ +	./$(DEPDIR)/sigprocmask.Po ./$(DEPDIR)/sleep.Po \ +	./$(DEPDIR)/socket.Po ./$(DEPDIR)/sockets.Po \ +	./$(DEPDIR)/stat-time.Po ./$(DEPDIR)/stat-w32.Po \ +	./$(DEPDIR)/stat.Po ./$(DEPDIR)/stdio-read.Po \ +	./$(DEPDIR)/stdio-write.Po ./$(DEPDIR)/strerror-override.Po \ +	./$(DEPDIR)/strerror.Po ./$(DEPDIR)/strerror_r.Po \ +	./$(DEPDIR)/symlink.Po ./$(DEPDIR)/sys_socket.Po \ +	./$(DEPDIR)/test-accept.Po ./$(DEPDIR)/test-alloca-opt.Po \ +	./$(DEPDIR)/test-arpa_inet.Po \ +	./$(DEPDIR)/test-array-mergesort.Po ./$(DEPDIR)/test-assert.Po \  	./$(DEPDIR)/test-binary-io.Po ./$(DEPDIR)/test-bind.Po \  	./$(DEPDIR)/test-btowc.Po ./$(DEPDIR)/test-c-ctype.Po \  	./$(DEPDIR)/test-c-strcasecmp.Po \ @@ -3316,7 +3477,7 @@ am__depfiles_remade = ./$(DEPDIR)/accept.Po ./$(DEPDIR)/alloca.Po \  	./$(DEPDIR)/test-open.Po ./$(DEPDIR)/test-pathmax.Po \  	./$(DEPDIR)/test-perror.Po ./$(DEPDIR)/test-perror2.Po \  	./$(DEPDIR)/test-pipe.Po ./$(DEPDIR)/test-printf-frexp.Po \ -	./$(DEPDIR)/test-printf-frexpl.Po \ +	./$(DEPDIR)/test-printf-frexpl.Po ./$(DEPDIR)/test-pselect.Po \  	./$(DEPDIR)/test-pthread-thread.Po ./$(DEPDIR)/test-pthread.Po \  	./$(DEPDIR)/test-pthread_sigmask1.Po \  	./$(DEPDIR)/test-pthread_sigmask2.Po ./$(DEPDIR)/test-raise.Po \ @@ -3329,12 +3490,12 @@ am__depfiles_remade = ./$(DEPDIR)/accept.Po ./$(DEPDIR)/alloca.Po \  	./$(DEPDIR)/test-setlocale_null-mt-all.Po \  	./$(DEPDIR)/test-setlocale_null-mt-one.Po \  	./$(DEPDIR)/test-setlocale_null.Po \ -	./$(DEPDIR)/test-setsockopt.Po ./$(DEPDIR)/test-sigaction.Po \ -	./$(DEPDIR)/test-signal-h.Po ./$(DEPDIR)/test-signbit.Po \ -	./$(DEPDIR)/test-sigprocmask.Po ./$(DEPDIR)/test-sleep.Po \ -	./$(DEPDIR)/test-sockets.Po ./$(DEPDIR)/test-stat-time.Po \ -	./$(DEPDIR)/test-stat.Po ./$(DEPDIR)/test-stdalign.Po \ -	./$(DEPDIR)/test-stdbool.Po ./$(DEPDIR)/test-stddef.Po \ +	./$(DEPDIR)/test-setsockopt.Po ./$(DEPDIR)/test-signal-h.Po \ +	./$(DEPDIR)/test-signbit.Po ./$(DEPDIR)/test-sigprocmask.Po \ +	./$(DEPDIR)/test-sleep.Po ./$(DEPDIR)/test-sockets.Po \ +	./$(DEPDIR)/test-stat-time.Po ./$(DEPDIR)/test-stat.Po \ +	./$(DEPDIR)/test-stdalign.Po ./$(DEPDIR)/test-stdbool.Po \ +	./$(DEPDIR)/test-stdckdint.Po ./$(DEPDIR)/test-stddef.Po \  	./$(DEPDIR)/test-stdint.Po ./$(DEPDIR)/test-stdio.Po \  	./$(DEPDIR)/test-stdlib.Po ./$(DEPDIR)/test-strerror.Po \  	./$(DEPDIR)/test-strerror_r.Po ./$(DEPDIR)/test-striconveh.Po \ @@ -3811,7 +3972,7 @@ am__v_CCLD_0 = @echo "  CCLD    " $@;  am__v_CCLD_1 =   SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \  	$(current_locale_SOURCES) test-accept.c test-alloca-opt.c \ -	test-arpa_inet.c test-array-mergesort.c \ +	test-arpa_inet.c test-array-mergesort.c test-assert.c \  	$(test_bidi_byname_SOURCES) $(test_bidi_longname_SOURCES) \  	$(test_bidi_name_SOURCES) $(test_bidi_of_SOURCES) \  	$(test_bidi_test_SOURCES) test-binary-io.c test-bind.c \ @@ -3960,21 +4121,21 @@ SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \  	$(test_pr_variation_selector_SOURCES) \  	$(test_pr_white_space_SOURCES) $(test_pr_xid_continue_SOURCES) \  	$(test_pr_xid_start_SOURCES) $(test_pr_zero_width_SOURCES) \ -	test-printf-frexp.c test-printf-frexpl.c test-pthread.c \ -	test-pthread-thread.c test-pthread_sigmask1.c \ +	test-printf-frexp.c test-printf-frexpl.c test-pselect.c \ +	test-pthread.c test-pthread-thread.c test-pthread_sigmask1.c \  	test-pthread_sigmask2.c test-raise.c test-realloc-gnu.c \  	test-reallocarray.c test-rwlock1.c test-sched.c \  	$(test_scripts_SOURCES) test-select.c test-select-fd.c \  	test-select-stdin.c test-setenv.c test-setlocale1.c \  	test-setlocale2.c test-setlocale_null.c \  	test-setlocale_null-mt-all.c test-setlocale_null-mt-one.c \ -	test-setsockopt.c test-sigaction.c test-signal-h.c \ -	test-signbit.c test-sigprocmask.c test-sleep.c test-sockets.c \ -	test-stat.c test-stat-time.c test-stdalign.c test-stdbool.c \ -	test-stddef.c test-stdint.c test-stdio.c test-stdlib.c \ -	test-strerror.c test-strerror_r.c test-striconveh.c \ -	$(test_striconveha_SOURCES) test-string.c test-strncat.c \ -	test-strstr.c $(test_sy_c_ident_SOURCES) \ +	test-setsockopt.c test-signal-h.c test-signbit.c \ +	test-sigprocmask.c test-sleep.c test-sockets.c test-stat.c \ +	test-stat-time.c test-stdalign.c test-stdbool.c \ +	test-stdckdint.c test-stddef.c test-stdint.c test-stdio.c \ +	test-stdlib.c test-strerror.c test-strerror_r.c \ +	test-striconveh.c $(test_striconveha_SOURCES) test-string.c \ +	test-strncat.c test-strstr.c $(test_sy_c_ident_SOURCES) \  	$(test_sy_c_whitespace_SOURCES) $(test_sy_java_ident_SOURCES) \  	$(test_sy_java_whitespace_SOURCES) test-symlink.c \  	test-sys_ioctl.c test-sys_select.c test-sys_socket.c \ @@ -4115,9 +4276,10 @@ SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \  	test-unsetenv.c test-usleep.c test-verify.c test-verify-try.c \  	test-wchar.c test-wcrtomb.c test-wcrtomb-w32.c test-wctype-h.c \  	test-wcwidth.c test-xalloc-die.c -DIST_SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \ -	$(current_locale_SOURCES) test-accept.c test-alloca-opt.c \ -	test-arpa_inet.c test-array-mergesort.c \ +DIST_SOURCES = $(am__libtests_a_SOURCES_DIST) \ +	$(EXTRA_libtests_a_SOURCES) $(current_locale_SOURCES) \ +	test-accept.c test-alloca-opt.c test-arpa_inet.c \ +	test-array-mergesort.c test-assert.c \  	$(test_bidi_byname_SOURCES) $(test_bidi_longname_SOURCES) \  	$(test_bidi_name_SOURCES) $(test_bidi_of_SOURCES) \  	$(test_bidi_test_SOURCES) test-binary-io.c test-bind.c \ @@ -4266,21 +4428,21 @@ DIST_SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \  	$(test_pr_variation_selector_SOURCES) \  	$(test_pr_white_space_SOURCES) $(test_pr_xid_continue_SOURCES) \  	$(test_pr_xid_start_SOURCES) $(test_pr_zero_width_SOURCES) \ -	test-printf-frexp.c test-printf-frexpl.c test-pthread.c \ -	test-pthread-thread.c test-pthread_sigmask1.c \ +	test-printf-frexp.c test-printf-frexpl.c test-pselect.c \ +	test-pthread.c test-pthread-thread.c test-pthread_sigmask1.c \  	test-pthread_sigmask2.c test-raise.c test-realloc-gnu.c \  	test-reallocarray.c test-rwlock1.c test-sched.c \  	$(test_scripts_SOURCES) test-select.c test-select-fd.c \  	test-select-stdin.c test-setenv.c test-setlocale1.c \  	test-setlocale2.c test-setlocale_null.c \  	test-setlocale_null-mt-all.c test-setlocale_null-mt-one.c \ -	test-setsockopt.c test-sigaction.c test-signal-h.c \ -	test-signbit.c test-sigprocmask.c test-sleep.c test-sockets.c \ -	test-stat.c test-stat-time.c test-stdalign.c test-stdbool.c \ -	test-stddef.c test-stdint.c test-stdio.c test-stdlib.c \ -	test-strerror.c test-strerror_r.c test-striconveh.c \ -	$(test_striconveha_SOURCES) test-string.c test-strncat.c \ -	test-strstr.c $(test_sy_c_ident_SOURCES) \ +	test-setsockopt.c test-signal-h.c test-signbit.c \ +	test-sigprocmask.c test-sleep.c test-sockets.c test-stat.c \ +	test-stat-time.c test-stdalign.c test-stdbool.c \ +	test-stdckdint.c test-stddef.c test-stdint.c test-stdio.c \ +	test-stdlib.c test-strerror.c test-strerror_r.c \ +	test-striconveh.c $(test_striconveha_SOURCES) test-string.c \ +	test-strncat.c test-strstr.c $(test_sy_c_ident_SOURCES) \  	$(test_sy_c_whitespace_SOURCES) $(test_sy_java_ident_SOURCES) \  	$(test_sy_java_whitespace_SOURCES) test-symlink.c \  	test-sys_ioctl.c test-sys_select.c test-sys_socket.c \ @@ -4704,6 +4866,7 @@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@  AR = @AR@  ARFLAGS = @ARFLAGS@  AS = @AS@ +ASSERT_H = @ASSERT_H@  AUTOCONF = @AUTOCONF@  AUTOHEADER = @AUTOHEADER@  AUTOMAKE = @AUTOMAKE@ @@ -4715,7 +4878,7 @@ BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@  BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@  CC = @CC@  CCDEPMODE = @CCDEPMODE@ -CFLAGS = @GL_CFLAG_ALLOW_WARNINGS@ @CFLAGS@ +CFLAGS = @GL_CFLAG_ALLOW_WARNINGS@ $(GL_CFLAG_GNULIB_WARNINGS) @CFLAGS@  CFLAG_VISIBILITY = @CFLAG_VISIBILITY@  CPP = @CPP@  CPPFLAGS = @CPPFLAGS@ @@ -4743,9 +4906,11 @@ ERRNO_H = @ERRNO_H@  ETAGS = @ETAGS@  EXEEXT = @EXEEXT@  FGREP = @FGREP@ +FILECMD = @FILECMD@  FLOAT_H = @FLOAT_H@  GLOBAL_SYMBOL_PIPE = @GLOBAL_SYMBOL_PIPE@  GL_CFLAG_ALLOW_WARNINGS = @GL_CFLAG_ALLOW_WARNINGS@ +GL_CFLAG_GNULIB_WARNINGS = @GL_CFLAG_GNULIB_WARNINGS@  GL_CXXFLAG_ALLOW_WARNINGS = @GL_CXXFLAG_ALLOW_WARNINGS@  GL_GNULIB_ACCEPT = @GL_GNULIB_ACCEPT@  GL_GNULIB_ACCEPT4 = @GL_GNULIB_ACCEPT4@ @@ -4771,6 +4936,7 @@ GL_GNULIB_CEIL = @GL_GNULIB_CEIL@  GL_GNULIB_CEILF = @GL_GNULIB_CEILF@  GL_GNULIB_CEILL = @GL_GNULIB_CEILL@  GL_GNULIB_CHDIR = @GL_GNULIB_CHDIR@ +GL_GNULIB_CHMOD = @GL_GNULIB_CHMOD@  GL_GNULIB_CHOWN = @GL_GNULIB_CHOWN@  GL_GNULIB_CLOSE = @GL_GNULIB_CLOSE@  GL_GNULIB_CONNECT = @GL_GNULIB_CONNECT@ @@ -5644,7 +5810,6 @@ HAVE_WMEMPCPY = @HAVE_WMEMPCPY@  HAVE_WMEMSET = @HAVE_WMEMSET@  HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@  HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@  HAVE__EXIT = @HAVE__EXIT@  HEXVERSION = @HEXVERSION@  ICONV_CONST = @ICONV_CONST@ @@ -5719,7 +5884,9 @@ MKDIR_P = @MKDIR_P@  NAMESPACING = @NAMESPACING@  NETINET_IN_H = @NETINET_IN_H@  NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@ +NEXT_ASSERT_H = @NEXT_ASSERT_H@  NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@ +NEXT_AS_FIRST_DIRECTIVE_ASSERT_H = @NEXT_AS_FIRST_DIRECTIVE_ASSERT_H@  NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@  NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@  NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ @@ -5818,8 +5985,10 @@ REPLACE_CBRTL = @REPLACE_CBRTL@  REPLACE_CEIL = @REPLACE_CEIL@  REPLACE_CEILF = @REPLACE_CEILF@  REPLACE_CEILL = @REPLACE_CEILL@ +REPLACE_CHMOD = @REPLACE_CHMOD@  REPLACE_CHOWN = @REPLACE_CHOWN@  REPLACE_CLOSE = @REPLACE_CLOSE@ +REPLACE_COPY_FILE_RANGE = @REPLACE_COPY_FILE_RANGE@  REPLACE_COSF = @REPLACE_COSF@  REPLACE_COSHF = @REPLACE_COSHF@  REPLACE_CREAT = @REPLACE_CREAT@ @@ -6131,7 +6300,7 @@ SHELL = @SHELL@  SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@  SIZE_T_SUFFIX = @SIZE_T_SUFFIX@  STDALIGN_H = @STDALIGN_H@ -STDBOOL_H = @STDBOOL_H@ +STDCKDINT_H = @STDCKDINT_H@  STDDEF_H = @STDDEF_H@  STDINT_H = @STDINT_H@  STRIP = @STRIP@ @@ -6180,8 +6349,10 @@ datarootdir = @datarootdir@  docdir = @docdir@  dvidir = @dvidir@  exec_prefix = @exec_prefix@ +gl_LIBOBJDEPS = @gl_LIBOBJDEPS@  gl_LIBOBJS = @gl_LIBOBJS@  gl_LTLIBOBJS = @gl_LTLIBOBJS@ +gltests_LIBOBJDEPS = @gltests_LIBOBJDEPS@  gltests_LIBOBJS = @gltests_LIBOBJS@  gltests_LTLIBOBJS = @gltests_LTLIBOBJS@  gltests_WITNESS = @gltests_WITNESS@ @@ -6216,7 +6387,7 @@ top_builddir = @top_builddir@  top_srcdir = @top_srcdir@  # Rules generated and collected by gnulib-tool. -AUTOMAKE_OPTIONS = 1.11 foreign subdir-objects 1.11 subdir-objects \ +AUTOMAKE_OPTIONS = 1.14 foreign subdir-objects 1.11 subdir-objects \  	color-tests  SUBDIRS = . @@ -6251,104 +6422,97 @@ TESTS_ENVIRONMENT = EXEEXT='@EXEEXT@' srcdir='$(srcdir)' \  noinst_HEADERS =   noinst_LIBRARIES =   check_LIBRARIES = libtests.a -EXTRA_DIST = accept.c w32sock.h test-accept.c signature.h macros.h \ -	alloca.c test-alloca-opt.c arpa_inet.in.h test-arpa_inet.c \ -	test-array-mergesort.c macros.h basename-lgpl.h \ -	test-binary-io.sh test-binary-io.c macros.h bind.c w32sock.h \ -	test-bind.c signature.h macros.h btowc.c test-btowc1.sh \ -	test-btowc2.sh test-btowc.c signature.h macros.h \ -	test-c-ctype.c macros.h test-c-strcase.sh test-c-strcasecmp.c \ -	test-c-strncasecmp.c macros.h calloc.c test-calloc-gnu.c \ -	macros.h calloc.c cloexec.h test-cloexec.c macros.h close.c \ -	test-close.c signature.h macros.h connect.c w32sock.h \ -	test-connect.c signature.h macros.h ctype.in.h test-ctype.c \ -	dup2.c test-dup2.c signature.h macros.h test-environ.c \ -	test-errno.c error.c error.h exitfail.h fcntl.c fcntl.in.h \ +EXTRA_DIST = w32sock.h test-accept.c signature.h macros.h alloca.c \ +	test-alloca-opt.c arpa_inet.in.h test-arpa_inet.c \ +	test-array-mergesort.c macros.h test-assert.c basename-lgpl.h \ +	test-binary-io.sh test-binary-io.c macros.h w32sock.h \ +	test-bind.c signature.h macros.h test-btowc1.sh test-btowc2.sh \ +	test-btowc.c signature.h macros.h test-c-ctype.c macros.h \ +	test-c-strcase.sh test-c-strcasecmp.c test-c-strncasecmp.c \ +	macros.h calloc.c test-calloc-gnu.c macros.h calloc.c \ +	cloexec.h test-cloexec.c macros.h test-close.c signature.h \ +	macros.h w32sock.h test-connect.c signature.h macros.h \ +	ctype.in.h test-ctype.c test-dup2.c signature.h macros.h \ +	test-environ.c test-errno.c error.h exitfail.h fcntl.in.h \  	test-fcntl-h.c test-fcntl.c signature.h macros.h fd-hook.h \ -	fdopen.c test-fdopen.c signature.h macros.h test-fgetc.c \ -	signature.h macros.h filename.h test-float.c macros.h \ -	test-fputc.c signature.h macros.h test-fread.c signature.h \ -	macros.h test-free.c macros.h test-frexp.c test-frexp.h \ -	minus-zero.h infinity.h nan.h signature.h macros.h randomd.c \ -	test-frexpl.c test-frexp.h minus-zero.h infinity.h nan.h \ -	signature.h macros.h randoml.c test-fseterr.c fstat.c \ -	stat-w32.c stat-w32.h test-fstat.c signature.h macros.h \ -	ftruncate.c test-ftruncate.c test-ftruncate.sh signature.h \ -	macros.h test-fwrite.c signature.h macros.h getcwd-lgpl.c \ -	test-getcwd-lgpl.c signature.h macros.h getdtablesize.c \ -	test-getdtablesize.c signature.h macros.h getpagesize.c \ -	test-getprogname.c gettimeofday.c signature.h \ -	test-gettimeofday.c test-hard-locale.c locale.c ialloc.h \ -	test-iconv-h.c test-iconv.c signature.h macros.h \ -	ignore-value.h test-ignore-value.c inet_pton.c \ -	test-inet_pton.c signature.h macros.h test-intprops.c macros.h \ -	test-inttypes.c ioctl.c w32sock.h test-ioctl.c signature.h \ -	macros.h isblank.c test-isblank.c signature.h macros.h \ -	test-isnand-nolibm.c test-isnand.h minus-zero.h infinity.h \ -	nan.h macros.h test-isnanf-nolibm.c test-isnanf.h minus-zero.h \ -	infinity.h nan.h macros.h test-isnanl-nolibm.c test-isnanl.h \ -	minus-zero.h infinity.h nan.h macros.h test-iswblank.c \ -	macros.h test-iswdigit.sh test-iswdigit.c signature.h macros.h \ -	test-iswxdigit.sh test-iswxdigit.c signature.h macros.h \ -	test-langinfo.c test-limits-h.c listen.c w32sock.h \ +	test-fdopen.c signature.h macros.h test-fgetc.c signature.h \ +	macros.h filename.h test-float.c macros.h test-fputc.c \ +	signature.h macros.h test-fread.c signature.h macros.h \ +	test-free.c macros.h test-frexp.c test-frexp.h minus-zero.h \ +	infinity.h nan.h signature.h macros.h randomd.c test-frexpl.c \ +	test-frexp.h minus-zero.h infinity.h nan.h signature.h \ +	macros.h randoml.c test-fseterr.c stat-w32.c stat-w32.h \ +	test-fstat.c signature.h macros.h test-ftruncate.c \ +	test-ftruncate.sh signature.h macros.h test-fwrite.c \ +	signature.h macros.h test-getcwd-lgpl.c signature.h macros.h \ +	test-getdtablesize.c signature.h macros.h test-getprogname.c \ +	signature.h test-gettimeofday.c test-hard-locale.c locale.c \ +	ialloc.h test-iconv-h.c test-iconv.c signature.h macros.h \ +	ignore-value.h test-ignore-value.c test-inet_pton.c \ +	signature.h macros.h intprops-internal.h intprops.h \ +	test-intprops.c macros.h test-inttypes.c w32sock.h \ +	test-ioctl.c signature.h macros.h test-isblank.c signature.h \ +	macros.h test-isnand-nolibm.c test-isnand.h minus-zero.h \ +	infinity.h nan.h macros.h test-isnanf-nolibm.c test-isnanf.h \ +	minus-zero.h infinity.h nan.h macros.h test-isnanl-nolibm.c \ +	test-isnanl.h minus-zero.h infinity.h nan.h macros.h \ +	test-iswblank.c macros.h test-iswdigit.sh test-iswdigit.c \ +	signature.h macros.h test-iswxdigit.sh test-iswxdigit.c \ +	signature.h macros.h test-langinfo.c test-limits-h.c w32sock.h \  	test-listen.c signature.h macros.h test-localcharset.c \  	test-locale.c test-localename.c macros.h test-rwlock1.c \ -	test-lock.c test-once.c atomic-int-gnulib.h lstat.c \ -	test-lstat.h test-lstat.c signature.h macros.h malloc.c \ -	test-malloc-gnu.c macros.h test-malloca.c test-math.c macros.h \ -	test-mbrtowc1.sh test-mbrtowc2.sh test-mbrtowc3.sh \ -	test-mbrtowc4.sh test-mbrtowc5.sh test-mbrtowc.c \ -	test-mbrtowc-w32-1.sh test-mbrtowc-w32-2.sh \ -	test-mbrtowc-w32-3.sh test-mbrtowc-w32-4.sh \ -	test-mbrtowc-w32-5.sh test-mbrtowc-w32-6.sh \ -	test-mbrtowc-w32-7.sh test-mbrtowc-w32.c signature.h macros.h \ -	test-mbsinit.sh test-mbsinit.c signature.h macros.h \ -	mbtowc-impl.h mbtowc.c test-memchr.c zerosize-ptr.h \ -	signature.h macros.h msvc-inval.c msvc-inval.h msvc-nothrow.c \ -	msvc-nothrow.h nanosleep.c test-nanosleep.c signature.h \ -	macros.h netinet_in.in.h test-netinet_in.c open.c test-open.h \ -	test-open.c signature.h macros.h pathmax.h test-pathmax.c \ -	perror.c macros.h signature.h test-perror.c test-perror2.c \ -	test-perror.sh pipe.c test-pipe.c signature.h macros.h \ -	test-printf-frexp.c macros.h test-printf-frexpl.c macros.h \ -	pthread.in.h test-pthread.c pthread-thread.c \ -	test-pthread-thread.c macros.h pthread_sigmask.c \ -	test-pthread_sigmask1.c test-pthread_sigmask2.c signature.h \ -	macros.h putenv.c raise.c test-raise.c signature.h macros.h \ -	realloc.c test-realloc-gnu.c macros.h realloc.c reallocarray.c \ -	test-reallocarray.c signature.h macros.h same-inode.h \ -	sched.in.h test-sched.c sched_yield.c select.c macros.h \ -	signature.h test-select.c test-select.h test-select-fd.c \ -	test-select-in.sh test-select-out.sh test-select-stdin.c \ -	setenv.c test-setenv.c signature.h macros.h setlocale.c \ -	test-setlocale_null.c test-setlocale_null-mt-one.c \ -	test-setlocale_null-mt-all.c test-setlocale1.sh \ -	test-setlocale1.c test-setlocale2.sh test-setlocale2.c \ -	signature.h macros.h setsockopt.c w32sock.h test-setsockopt.c \ -	signature.h macros.h sig-handler.h sigaction.c \ -	test-sigaction.c signature.h macros.h signal.in.h \ +	test-lock.c test-once.c atomic-int-gnulib.h test-lstat.h \ +	test-lstat.c signature.h macros.h malloc.c test-malloc-gnu.c \ +	macros.h test-malloca.c test-math.c macros.h test-mbrtowc1.sh \ +	test-mbrtowc2.sh test-mbrtowc3.sh test-mbrtowc4.sh \ +	test-mbrtowc5.sh test-mbrtowc.c test-mbrtowc-w32-1.sh \ +	test-mbrtowc-w32-2.sh test-mbrtowc-w32-3.sh \ +	test-mbrtowc-w32-4.sh test-mbrtowc-w32-5.sh \ +	test-mbrtowc-w32-6.sh test-mbrtowc-w32-7.sh test-mbrtowc-w32.c \ +	signature.h macros.h test-mbsinit.sh test-mbsinit.c \ +	signature.h macros.h mbtowc-impl.h test-memchr.c \ +	zerosize-ptr.h signature.h macros.h msvc-inval.h \ +	msvc-nothrow.h test-nanosleep.c signature.h macros.h \ +	netinet_in.in.h test-netinet_in.c test-open.h test-open.c \ +	signature.h macros.h pathmax.h test-pathmax.c macros.h \ +	signature.h test-perror.c test-perror2.c test-perror.sh \ +	test-pipe.c signature.h macros.h test-printf-frexp.c macros.h \ +	test-printf-frexpl.c macros.h test-pselect.c test-select.h \ +	macros.h signature.h pthread.in.h test-pthread.c \ +	test-pthread-thread.c macros.h test-pthread_sigmask1.c \ +	test-pthread_sigmask2.c signature.h macros.h test-raise.c \ +	signature.h macros.h realloc.c test-realloc-gnu.c macros.h \ +	realloc.c test-reallocarray.c signature.h macros.h \ +	same-inode.h sched.in.h test-sched.c macros.h signature.h \ +	test-select.c test-select.h test-select-fd.c test-select-in.sh \ +	test-select-out.sh test-select-stdin.c test-setenv.c \ +	signature.h macros.h test-setlocale_null.c \ +	test-setlocale_null-mt-one.c test-setlocale_null-mt-all.c \ +	test-setlocale1.sh test-setlocale1.c test-setlocale2.sh \ +	test-setlocale2.c signature.h macros.h w32sock.h \ +	test-setsockopt.c signature.h macros.h signal.in.h \  	test-signal-h.c test-signbit.c minus-zero.h infinity.h \ -	macros.h sigprocmask.c test-sigprocmask.c signature.h macros.h \ -	sleep.c test-sleep.c signature.h macros.h _Noreturn.h \ -	arg-nonnull.h c++defs.h warn-on-use.h socket.c w32sock.h \ -	w32sock.h test-sockets.c stat-w32.c stat-w32.h stat.c \ -	test-stat.h test-stat.c signature.h macros.h stat-time.h \ -	test-stat-time.c macros.h nap.h stdalign.in.h test-stdalign.c \ -	macros.h test-stdbool.c test-stddef.c test-stdint.c stdio.in.h \ -	test-stdio.c test-stdlib.c test-sys_wait.h strerror.c \ -	strerror-override.c strerror-override.h test-strerror.c \ -	signature.h macros.h strerror_r.c test-strerror_r.c \ -	signature.h macros.h test-striconveh.c macros.h \ -	test-striconveha.c iconvsupport.c macros.h test-string.c \ -	test-strncat.c unistr/test-strncat.h zerosize-ptr.h \ -	signature.h macros.h test-strstr.c zerosize-ptr.h signature.h \ -	macros.h symlink.c test-symlink.h test-symlink.c signature.h \ -	macros.h sys_ioctl.in.h test-sys_ioctl.c sys_select.in.h \ -	test-sys_select.c signature.h sys_socket.in.h \ -	test-sys_socket.c sys_stat.in.h test-sys_stat.c sys_time.in.h \ -	test-sys_time.c test-sys_types.c sys_uio.in.h test-sys_uio.c \ -	init.sh test-init.sh test-thread_self.c test-thread_create.c \ -	macros.h time.in.h test-time.c unicase/test-cased.c \ +	macros.h test-sigprocmask.c signature.h macros.h test-sleep.c \ +	signature.h macros.h _Noreturn.h arg-nonnull.h c++defs.h \ +	warn-on-use.h w32sock.h w32sock.h test-sockets.c stat-w32.c \ +	stat-w32.h test-stat.h test-stat.c signature.h macros.h \ +	stat-time.h test-stat-time.c macros.h nap.h stdalign.in.h \ +	test-stdalign.c macros.h test-stdbool.c macros.h \ +	test-intprops.c test-stdckdint.c test-stddef.c test-stdint.c \ +	stdio.in.h test-stdio.c test-stdlib.c test-sys_wait.h \ +	strerror-override.h test-strerror.c signature.h macros.h \ +	strerror_r.c test-strerror_r.c signature.h macros.h \ +	test-striconveh.c macros.h test-striconveha.c iconvsupport.c \ +	macros.h test-string.c test-strncat.c unistr/test-strncat.h \ +	zerosize-ptr.h signature.h macros.h test-strstr.c \ +	zerosize-ptr.h signature.h macros.h test-symlink.h \ +	test-symlink.c signature.h macros.h sys_ioctl.in.h \ +	test-sys_ioctl.c sys_select.in.h test-sys_select.c signature.h \ +	sys_socket.in.h test-sys_socket.c sys_stat.in.h \ +	test-sys_stat.c sys_time.in.h test-sys_time.c test-sys_types.c \ +	sys_uio.in.h test-sys_uio.c init.sh test-init.sh \ +	test-thread_self.c test-thread_create.c macros.h time.in.h \ +	test-time.c unicase/test-cased.c \  	unicase/test-predicate-part1.h unicase/test-predicate-part2.h \  	macros.h unicase/test-ignorable.c \  	unicase/test-predicate-part1.h unicase/test-predicate-part2.h \ @@ -7018,18 +7182,17 @@ EXTRA_DIST = accept.c w32sock.h test-accept.c signature.h macros.h \  	uniwidth/test-u32-width.c macros.h uniwidth/test-u8-strwidth.c \  	macros.h uniwidth/test-u8-width.c macros.h \  	uniwidth/test-uc_width.c uniwidth/test-uc_width2.c \ -	uniwidth/test-uc_width2.sh macros.h unsetenv.c test-unsetenv.c \ -	signature.h macros.h usleep.c test-usleep.c signature.h \ -	macros.h test-verify.c test-verify-try.c test-verify.sh \ -	test-wchar.c wcrtomb.c test-wcrtomb.sh test-wcrtomb.c \ +	uniwidth/test-uc_width2.sh macros.h test-unsetenv.c \ +	signature.h macros.h test-usleep.c signature.h macros.h \ +	verify.h test-verify.c test-verify-try.c test-verify.sh \ +	test-wchar.c test-wcrtomb.sh test-wcrtomb.c \  	test-wcrtomb-w32-1.sh test-wcrtomb-w32-2.sh \  	test-wcrtomb-w32-3.sh test-wcrtomb-w32-4.sh \  	test-wcrtomb-w32-5.sh test-wcrtomb-w32-6.sh \  	test-wcrtomb-w32-7.sh test-wcrtomb-w32.c signature.h macros.h \ -	wctob.c wctomb-impl.h wctomb.c test-wctype-h.c macros.h \ -	test-wcwidth.c signature.h macros.h windows-thread.c \ -	windows-thread.h windows-tls.c windows-tls.h xalloc.h xalloc.h \ -	test-xalloc-die.c test-xalloc-die.sh +	wctomb-impl.h test-wctype-h.c macros.h test-wcwidth.c \ +	signature.h macros.h windows-thread.h windows-tls.h xalloc.h \ +	xalloc.h test-xalloc-die.c test-xalloc-die.sh  BUILT_SOURCES = arpa/inet.h ctype.h fcntl.h $(NETINET_IN_H) pthread.h \  	sched.h signal.h $(STDALIGN_H) stdio.h sys/ioctl.h \  	sys/select.h sys/socket.h sys/stat.h sys/time.h sys/uio.h \ @@ -7059,25 +7222,32 @@ AM_CPPFLAGS = \    -I../lib -I$(srcdir)/../lib  LDADD = libtests.a ../lib/libunistring.la libtests.a ../lib/libunistring.la libtests.a $(LIBTESTS_LIBDEPS) -libtests_a_SOURCES = basename-lgpl.c binary-io.h binary-io.c cloexec.c \ -	exitfail.c fd-hook.c getprogname.h getprogname.c gettext.h \ -	ialloc.c sig-handler.c sockets.h sockets.c stat-time.c \ -	sys_socket.c glthread/thread.h glthread/thread.c xmalloc.c \ -	xalloc-die.c glthread/yield.h +libtests_a_SOURCES = $(am__append_1) basename-lgpl.c binary-io.h \ +	binary-io.c $(am__append_2) $(am__append_3) cloexec.c \ +	$(am__append_4) $(am__append_5) $(am__append_6) \ +	$(am__append_7) exitfail.c $(am__append_8) fd-hook.c \ +	$(am__append_9) $(am__append_10) $(am__append_11) \ +	$(am__append_12) $(am__append_13) $(am__append_14) \ +	getprogname.h getprogname.c gettext.h $(am__append_15) \ +	ialloc.c $(am__append_16) $(am__append_17) $(am__append_18) \ +	$(am__append_19) $(am__append_20) $(am__append_21) \ +	$(am__append_22) $(am__append_23) $(am__append_24) \ +	$(am__append_25) $(am__append_26) $(am__append_27) \ +	$(am__append_28) $(am__append_29) $(am__append_30) \ +	$(am__append_31) $(am__append_32) $(am__append_33) \ +	$(am__append_34) $(am__append_35) $(am__append_36) \ +	$(am__append_37) $(am__append_38) $(am__append_39) \ +	$(am__append_40) $(am__append_41) sockets.h sockets.c \ +	$(am__append_42) stat-time.c $(am__append_43) $(am__append_44) \ +	$(am__append_45) $(am__append_46) $(am__append_47) \ +	sys_socket.c glthread/thread.h glthread/thread.c \ +	$(am__append_52) $(am__append_53) $(am__append_54) \ +	$(am__append_55) $(am__append_56) $(am__append_57) \ +	$(am__append_58) xmalloc.c xalloc-die.c glthread/yield.h  libtests_a_LIBADD = $(gltests_LIBOBJS) @ALLOCA@  libtests_a_DEPENDENCIES = $(gltests_LIBOBJS) @ALLOCA@ -EXTRA_libtests_a_SOURCES = accept.c alloca.c bind.c btowc.c calloc.c \ -	calloc.c close.c connect.c dup2.c error.c fcntl.c fdopen.c \ -	fstat.c stat-w32.c ftruncate.c getcwd-lgpl.c getdtablesize.c \ -	getpagesize.c gettimeofday.c inet_pton.c ioctl.c isblank.c \ -	listen.c lstat.c malloc.c mbtowc.c msvc-inval.c msvc-nothrow.c \ -	nanosleep.c open.c perror.c pipe.c pthread-thread.c \ -	pthread_sigmask.c putenv.c raise.c realloc.c realloc.c \ -	reallocarray.c sched_yield.c select.c setenv.c setlocale.c \ -	setsockopt.c sigaction.c sigprocmask.c sleep.c socket.c \ -	stat-w32.c stat.c strerror.c strerror-override.c strerror_r.c \ -	symlink.c unsetenv.c usleep.c wcrtomb.c wctob.c wctomb.c \ -	windows-thread.c windows-tls.c +EXTRA_libtests_a_SOURCES = alloca.c calloc.c calloc.c stat-w32.c \ +	malloc.c realloc.c realloc.c stat-w32.c strerror_r.c  AM_LIBTOOLFLAGS = --preserve-dup-deps  test_accept_LDADD = $(LDADD) @LIBSOCKET@  test_bind_LDADD = $(LDADD) @LIBSOCKET@ $(INET_PTON_LIB) @@ -7127,6 +7297,7 @@ test_once2_LDADD = $(LDADD) @LIBMULTITHREAD@  test_mbrtowc_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC)  test_mbsinit_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC)  test_nanosleep_LDADD = $(LDADD) $(LIB_NANOSLEEP) +test_pselect_LDADD = $(LDADD) @LIB_SELECT@ @LIBSOCKET@ @LIB_PTHREAD_SIGMASK@ $(INET_PTON_LIB)  test_pthread_thread_LDADD = $(LDADD) @LIBPMULTITHREAD@  test_pthread_sigmask1_LDADD = $(LDADD) @LIB_PTHREAD_SIGMASK@  test_pthread_sigmask2_LDADD = $(LDADD) @LIB_PTHREAD_SIGMASK@ @LIBMULTITHREAD@ @@ -8150,6 +8321,10 @@ test-arpa_inet$(EXEEXT): $(test_arpa_inet_OBJECTS) $(test_arpa_inet_DEPENDENCIES  test-array-mergesort$(EXEEXT): $(test_array_mergesort_OBJECTS) $(test_array_mergesort_DEPENDENCIES) $(EXTRA_test_array_mergesort_DEPENDENCIES)   	@rm -f test-array-mergesort$(EXEEXT)  	$(AM_V_CCLD)$(LINK) $(test_array_mergesort_OBJECTS) $(test_array_mergesort_LDADD) $(LIBS) + +test-assert$(EXEEXT): $(test_assert_OBJECTS) $(test_assert_DEPENDENCIES) $(EXTRA_test_assert_DEPENDENCIES)  +	@rm -f test-assert$(EXEEXT) +	$(AM_V_CCLD)$(LINK) $(test_assert_OBJECTS) $(test_assert_LDADD) $(LIBS)  unictype/$(am__dirstamp):  	@$(MKDIR_P) unictype  	@: > unictype/$(am__dirstamp) @@ -9619,6 +9794,10 @@ test-printf-frexpl$(EXEEXT): $(test_printf_frexpl_OBJECTS) $(test_printf_frexpl_  	@rm -f test-printf-frexpl$(EXEEXT)  	$(AM_V_CCLD)$(LINK) $(test_printf_frexpl_OBJECTS) $(test_printf_frexpl_LDADD) $(LIBS) +test-pselect$(EXEEXT): $(test_pselect_OBJECTS) $(test_pselect_DEPENDENCIES) $(EXTRA_test_pselect_DEPENDENCIES)  +	@rm -f test-pselect$(EXEEXT) +	$(AM_V_CCLD)$(LINK) $(test_pselect_OBJECTS) $(test_pselect_LDADD) $(LIBS) +  test-pthread$(EXEEXT): $(test_pthread_OBJECTS) $(test_pthread_DEPENDENCIES) $(EXTRA_test_pthread_DEPENDENCIES)   	@rm -f test-pthread$(EXEEXT)  	$(AM_V_CCLD)$(LINK) $(test_pthread_OBJECTS) $(test_pthread_LDADD) $(LIBS) @@ -9701,10 +9880,6 @@ test-setsockopt$(EXEEXT): $(test_setsockopt_OBJECTS) $(test_setsockopt_DEPENDENC  	@rm -f test-setsockopt$(EXEEXT)  	$(AM_V_CCLD)$(LINK) $(test_setsockopt_OBJECTS) $(test_setsockopt_LDADD) $(LIBS) -test-sigaction$(EXEEXT): $(test_sigaction_OBJECTS) $(test_sigaction_DEPENDENCIES) $(EXTRA_test_sigaction_DEPENDENCIES)  -	@rm -f test-sigaction$(EXEEXT) -	$(AM_V_CCLD)$(LINK) $(test_sigaction_OBJECTS) $(test_sigaction_LDADD) $(LIBS) -  test-signal-h$(EXEEXT): $(test_signal_h_OBJECTS) $(test_signal_h_DEPENDENCIES) $(EXTRA_test_signal_h_DEPENDENCIES)   	@rm -f test-signal-h$(EXEEXT)  	$(AM_V_CCLD)$(LINK) $(test_signal_h_OBJECTS) $(test_signal_h_LDADD) $(LIBS) @@ -9741,6 +9916,10 @@ test-stdbool$(EXEEXT): $(test_stdbool_OBJECTS) $(test_stdbool_DEPENDENCIES) $(EX  	@rm -f test-stdbool$(EXEEXT)  	$(AM_V_CCLD)$(LINK) $(test_stdbool_OBJECTS) $(test_stdbool_LDADD) $(LIBS) +test-stdckdint$(EXEEXT): $(test_stdckdint_OBJECTS) $(test_stdckdint_DEPENDENCIES) $(EXTRA_test_stdckdint_DEPENDENCIES)  +	@rm -f test-stdckdint$(EXEEXT) +	$(AM_V_CCLD)$(LINK) $(test_stdckdint_OBJECTS) $(test_stdckdint_LDADD) $(LIBS) +  test-stddef$(EXEEXT): $(test_stddef_OBJECTS) $(test_stddef_DEPENDENCIES) $(EXTRA_test_stddef_DEPENDENCIES)   	@rm -f test-stddef$(EXEEXT)  	$(AM_V_CCLD)$(LINK) $(test_stddef_OBJECTS) $(test_stddef_LDADD) $(LIBS) @@ -11378,6 +11557,7 @@ distclean-compile:  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/open.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/perror.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pipe.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pselect.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pthread-thread.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pthread_sigmask.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/putenv.Po@am__quote@ # am--include-marker @@ -11391,8 +11571,6 @@ distclean-compile:  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setenv.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setlocale.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setsockopt.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sig-handler.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sigaction.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sigprocmask.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sleep.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/socket.Po@am__quote@ # am--include-marker @@ -11400,6 +11578,8 @@ distclean-compile:  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat-time.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat-w32.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stdio-read.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stdio-write.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror-override.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror_r.Po@am__quote@ # am--include-marker @@ -11409,6 +11589,7 @@ distclean-compile:  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-alloca-opt.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-arpa_inet.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-array-mergesort.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-assert.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-binary-io.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-bind.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-btowc.Po@am__quote@ # am--include-marker @@ -11481,6 +11662,7 @@ distclean-compile:  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pipe.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-printf-frexp.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-printf-frexpl.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pselect.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pthread-thread.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pthread.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pthread_sigmask1.Po@am__quote@ # am--include-marker @@ -11500,7 +11682,6 @@ distclean-compile:  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setlocale_null-mt-one.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setlocale_null.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setsockopt.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sigaction.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-signal-h.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-signbit.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sigprocmask.Po@am__quote@ # am--include-marker @@ -11510,6 +11691,7 @@ distclean-compile:  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stat.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdalign.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdbool.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdckdint.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stddef.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdint.Po@am__quote@ # am--include-marker  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdio.Po@am__quote@ # am--include-marker @@ -12294,6 +12476,13 @@ test-array-mergesort.log: test-array-mergesort$(EXEEXT)  	--log-file $$b.log --trs-file $$b.trs \  	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \  	"$$tst" $(AM_TESTS_FD_REDIRECT) +test-assert.log: test-assert$(EXEEXT) +	@p='test-assert$(EXEEXT)'; \ +	b='test-assert'; \ +	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ +	--log-file $$b.log --trs-file $$b.trs \ +	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ +	"$$tst" $(AM_TESTS_FD_REDIRECT)  test-binary-io.sh.log: test-binary-io.sh  	@p='test-binary-io.sh'; \  	b='test-binary-io.sh'; \ @@ -12875,6 +13064,13 @@ test-printf-frexpl.log: test-printf-frexpl$(EXEEXT)  	--log-file $$b.log --trs-file $$b.trs \  	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \  	"$$tst" $(AM_TESTS_FD_REDIRECT) +test-pselect.log: test-pselect$(EXEEXT) +	@p='test-pselect$(EXEEXT)'; \ +	b='test-pselect'; \ +	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ +	--log-file $$b.log --trs-file $$b.trs \ +	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ +	"$$tst" $(AM_TESTS_FD_REDIRECT)  test-pthread.log: test-pthread$(EXEEXT)  	@p='test-pthread$(EXEEXT)'; \  	b='test-pthread'; \ @@ -13001,13 +13197,6 @@ test-setsockopt.log: test-setsockopt$(EXEEXT)  	--log-file $$b.log --trs-file $$b.trs \  	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \  	"$$tst" $(AM_TESTS_FD_REDIRECT) -test-sigaction.log: test-sigaction$(EXEEXT) -	@p='test-sigaction$(EXEEXT)'; \ -	b='test-sigaction'; \ -	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ -	--log-file $$b.log --trs-file $$b.trs \ -	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ -	"$$tst" $(AM_TESTS_FD_REDIRECT)  test-signal-h.log: test-signal-h$(EXEEXT)  	@p='test-signal-h$(EXEEXT)'; \  	b='test-signal-h'; \ @@ -13071,6 +13260,13 @@ test-stdbool.log: test-stdbool$(EXEEXT)  	--log-file $$b.log --trs-file $$b.trs \  	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \  	"$$tst" $(AM_TESTS_FD_REDIRECT) +test-stdckdint.log: test-stdckdint$(EXEEXT) +	@p='test-stdckdint$(EXEEXT)'; \ +	b='test-stdckdint'; \ +	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ +	--log-file $$b.log --trs-file $$b.trs \ +	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ +	"$$tst" $(AM_TESTS_FD_REDIRECT)  test-stddef.log: test-stddef$(EXEEXT)  	@p='test-stddef$(EXEEXT)'; \  	b='test-stddef'; \ @@ -16516,6 +16712,7 @@ distclean: distclean-recursive  	-rm -f ./$(DEPDIR)/open.Po  	-rm -f ./$(DEPDIR)/perror.Po  	-rm -f ./$(DEPDIR)/pipe.Po +	-rm -f ./$(DEPDIR)/pselect.Po  	-rm -f ./$(DEPDIR)/pthread-thread.Po  	-rm -f ./$(DEPDIR)/pthread_sigmask.Po  	-rm -f ./$(DEPDIR)/putenv.Po @@ -16529,8 +16726,6 @@ distclean: distclean-recursive  	-rm -f ./$(DEPDIR)/setenv.Po  	-rm -f ./$(DEPDIR)/setlocale.Po  	-rm -f ./$(DEPDIR)/setsockopt.Po -	-rm -f ./$(DEPDIR)/sig-handler.Po -	-rm -f ./$(DEPDIR)/sigaction.Po  	-rm -f ./$(DEPDIR)/sigprocmask.Po  	-rm -f ./$(DEPDIR)/sleep.Po  	-rm -f ./$(DEPDIR)/socket.Po @@ -16538,6 +16733,8 @@ distclean: distclean-recursive  	-rm -f ./$(DEPDIR)/stat-time.Po  	-rm -f ./$(DEPDIR)/stat-w32.Po  	-rm -f ./$(DEPDIR)/stat.Po +	-rm -f ./$(DEPDIR)/stdio-read.Po +	-rm -f ./$(DEPDIR)/stdio-write.Po  	-rm -f ./$(DEPDIR)/strerror-override.Po  	-rm -f ./$(DEPDIR)/strerror.Po  	-rm -f ./$(DEPDIR)/strerror_r.Po @@ -16547,6 +16744,7 @@ distclean: distclean-recursive  	-rm -f ./$(DEPDIR)/test-alloca-opt.Po  	-rm -f ./$(DEPDIR)/test-arpa_inet.Po  	-rm -f ./$(DEPDIR)/test-array-mergesort.Po +	-rm -f ./$(DEPDIR)/test-assert.Po  	-rm -f ./$(DEPDIR)/test-binary-io.Po  	-rm -f ./$(DEPDIR)/test-bind.Po  	-rm -f ./$(DEPDIR)/test-btowc.Po @@ -16619,6 +16817,7 @@ distclean: distclean-recursive  	-rm -f ./$(DEPDIR)/test-pipe.Po  	-rm -f ./$(DEPDIR)/test-printf-frexp.Po  	-rm -f ./$(DEPDIR)/test-printf-frexpl.Po +	-rm -f ./$(DEPDIR)/test-pselect.Po  	-rm -f ./$(DEPDIR)/test-pthread-thread.Po  	-rm -f ./$(DEPDIR)/test-pthread.Po  	-rm -f ./$(DEPDIR)/test-pthread_sigmask1.Po @@ -16638,7 +16837,6 @@ distclean: distclean-recursive  	-rm -f ./$(DEPDIR)/test-setlocale_null-mt-one.Po  	-rm -f ./$(DEPDIR)/test-setlocale_null.Po  	-rm -f ./$(DEPDIR)/test-setsockopt.Po -	-rm -f ./$(DEPDIR)/test-sigaction.Po  	-rm -f ./$(DEPDIR)/test-signal-h.Po  	-rm -f ./$(DEPDIR)/test-signbit.Po  	-rm -f ./$(DEPDIR)/test-sigprocmask.Po @@ -16648,6 +16846,7 @@ distclean: distclean-recursive  	-rm -f ./$(DEPDIR)/test-stat.Po  	-rm -f ./$(DEPDIR)/test-stdalign.Po  	-rm -f ./$(DEPDIR)/test-stdbool.Po +	-rm -f ./$(DEPDIR)/test-stdckdint.Po  	-rm -f ./$(DEPDIR)/test-stddef.Po  	-rm -f ./$(DEPDIR)/test-stdint.Po  	-rm -f ./$(DEPDIR)/test-stdio.Po @@ -17211,6 +17410,7 @@ maintainer-clean: maintainer-clean-recursive  	-rm -f ./$(DEPDIR)/open.Po  	-rm -f ./$(DEPDIR)/perror.Po  	-rm -f ./$(DEPDIR)/pipe.Po +	-rm -f ./$(DEPDIR)/pselect.Po  	-rm -f ./$(DEPDIR)/pthread-thread.Po  	-rm -f ./$(DEPDIR)/pthread_sigmask.Po  	-rm -f ./$(DEPDIR)/putenv.Po @@ -17224,8 +17424,6 @@ maintainer-clean: maintainer-clean-recursive  	-rm -f ./$(DEPDIR)/setenv.Po  	-rm -f ./$(DEPDIR)/setlocale.Po  	-rm -f ./$(DEPDIR)/setsockopt.Po -	-rm -f ./$(DEPDIR)/sig-handler.Po -	-rm -f ./$(DEPDIR)/sigaction.Po  	-rm -f ./$(DEPDIR)/sigprocmask.Po  	-rm -f ./$(DEPDIR)/sleep.Po  	-rm -f ./$(DEPDIR)/socket.Po @@ -17233,6 +17431,8 @@ maintainer-clean: maintainer-clean-recursive  	-rm -f ./$(DEPDIR)/stat-time.Po  	-rm -f ./$(DEPDIR)/stat-w32.Po  	-rm -f ./$(DEPDIR)/stat.Po +	-rm -f ./$(DEPDIR)/stdio-read.Po +	-rm -f ./$(DEPDIR)/stdio-write.Po  	-rm -f ./$(DEPDIR)/strerror-override.Po  	-rm -f ./$(DEPDIR)/strerror.Po  	-rm -f ./$(DEPDIR)/strerror_r.Po @@ -17242,6 +17442,7 @@ maintainer-clean: maintainer-clean-recursive  	-rm -f ./$(DEPDIR)/test-alloca-opt.Po  	-rm -f ./$(DEPDIR)/test-arpa_inet.Po  	-rm -f ./$(DEPDIR)/test-array-mergesort.Po +	-rm -f ./$(DEPDIR)/test-assert.Po  	-rm -f ./$(DEPDIR)/test-binary-io.Po  	-rm -f ./$(DEPDIR)/test-bind.Po  	-rm -f ./$(DEPDIR)/test-btowc.Po @@ -17314,6 +17515,7 @@ maintainer-clean: maintainer-clean-recursive  	-rm -f ./$(DEPDIR)/test-pipe.Po  	-rm -f ./$(DEPDIR)/test-printf-frexp.Po  	-rm -f ./$(DEPDIR)/test-printf-frexpl.Po +	-rm -f ./$(DEPDIR)/test-pselect.Po  	-rm -f ./$(DEPDIR)/test-pthread-thread.Po  	-rm -f ./$(DEPDIR)/test-pthread.Po  	-rm -f ./$(DEPDIR)/test-pthread_sigmask1.Po @@ -17333,7 +17535,6 @@ maintainer-clean: maintainer-clean-recursive  	-rm -f ./$(DEPDIR)/test-setlocale_null-mt-one.Po  	-rm -f ./$(DEPDIR)/test-setlocale_null.Po  	-rm -f ./$(DEPDIR)/test-setsockopt.Po -	-rm -f ./$(DEPDIR)/test-sigaction.Po  	-rm -f ./$(DEPDIR)/test-signal-h.Po  	-rm -f ./$(DEPDIR)/test-signbit.Po  	-rm -f ./$(DEPDIR)/test-sigprocmask.Po @@ -17343,6 +17544,7 @@ maintainer-clean: maintainer-clean-recursive  	-rm -f ./$(DEPDIR)/test-stat.Po  	-rm -f ./$(DEPDIR)/test-stdalign.Po  	-rm -f ./$(DEPDIR)/test-stdbool.Po +	-rm -f ./$(DEPDIR)/test-stdckdint.Po  	-rm -f ./$(DEPDIR)/test-stddef.Po  	-rm -f ./$(DEPDIR)/test-stdint.Po  	-rm -f ./$(DEPDIR)/test-stdio.Po @@ -18361,6 +18563,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU  	      -e 's|@''NEXT_SYS_STAT_H''@|$(NEXT_SYS_STAT_H)|g' \  	      -e 's|@''WINDOWS_64_BIT_ST_SIZE''@|$(WINDOWS_64_BIT_ST_SIZE)|g' \  	      -e 's|@''WINDOWS_STAT_TIMESPEC''@|$(WINDOWS_STAT_TIMESPEC)|g' \ +	      -e 's/@''GNULIB_CHMOD''@/$(GL_GNULIB_CHMOD)/g' \  	      -e 's/@''GNULIB_FCHMODAT''@/$(GL_GNULIB_FCHMODAT)/g' \  	      -e 's/@''GNULIB_FSTAT''@/$(GL_GNULIB_FSTAT)/g' \  	      -e 's/@''GNULIB_FSTATAT''@/$(GL_GNULIB_FSTATAT)/g' \ @@ -18392,6 +18595,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU  	      -e 's|@''HAVE_MKNOD''@|$(HAVE_MKNOD)|g' \  	      -e 's|@''HAVE_MKNODAT''@|$(HAVE_MKNODAT)|g' \  	      -e 's|@''HAVE_UTIMENSAT''@|$(HAVE_UTIMENSAT)|g' \ +	      -e 's|@''REPLACE_CHMOD''@|$(REPLACE_CHMOD)|g' \  	      -e 's|@''REPLACE_FCHMODAT''@|$(REPLACE_FCHMODAT)|g' \  	      -e 's|@''REPLACE_FSTAT''@|$(REPLACE_FSTAT)|g' \  	      -e 's|@''REPLACE_FSTATAT''@|$(REPLACE_FSTATAT)|g' \ diff --git a/tests/alloca.c b/tests/alloca.c index 48802832..5eb16a9f 100644 --- a/tests/alloca.c +++ b/tests/alloca.c @@ -30,17 +30,6 @@  #include <string.h>  #include <stdlib.h> -#ifdef emacs -# include "lisp.h" -# include "blockinput.h" -# ifdef EMACS_FREE -#  undef free -#  define free EMACS_FREE -# endif -#else -# define memory_full() abort () -#endif -  /* If compiling with GCC or clang, this file is not needed.  */  #if !(defined __GNUC__ || defined __clang__) @@ -48,22 +37,6 @@     there must be some other way alloca is supposed to work.  */  # ifndef alloca -#  ifdef emacs -#   ifdef static -/* actually, only want this if static is defined as "" -   -- this is for usg, in which emacs must undefine static -   in order to make unexec workable -   */ -#    ifndef STACK_DIRECTION -you -lose --- must know STACK_DIRECTION at compile-time -/* Using #error here is not wise since this file should work for -   old and obscure compilers.  */ -#    endif /* STACK_DIRECTION undefined */ -#   endif /* static */ -#  endif /* emacs */ -  /* Define STACK_DIRECTION if you know the direction of stack     growth for your system; otherwise it will be automatically     deduced at run-time. @@ -145,10 +118,6 @@ alloca (size_t size)    {      register header *hp;        /* Traverses linked list.  */ -#  ifdef emacs -    BLOCK_INPUT; -#  endif -      for (hp = last_alloca_header; hp != NULL;)        if ((STACK_DIR > 0 && hp->h.deep > depth)            || (STACK_DIR < 0 && hp->h.deep < depth)) @@ -163,10 +132,6 @@ alloca (size_t size)          break;                  /* Rest are not deeper.  */      last_alloca_header = hp;    /* -> last valid storage.  */ - -#  ifdef emacs -    UNBLOCK_INPUT; -#  endif    }    if (size == 0) diff --git a/tests/atomic-int-gnulib.h b/tests/atomic-int-gnulib.h index b91cf0ea..d1c68a2b 100644 --- a/tests/atomic-int-gnulib.h +++ b/tests/atomic-int-gnulib.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/basename-lgpl.c b/tests/basename-lgpl.c index eb07e254..f8da1484 100644 --- a/tests/basename-lgpl.c +++ b/tests/basename-lgpl.c @@ -21,7 +21,6 @@  /* Specification.  */  #include "basename-lgpl.h" -#include <stdbool.h>  #include <string.h>  #include "filename.h" diff --git a/tests/cloexec.h b/tests/cloexec.h index 7a22d775..15d2d5ef 100644 --- a/tests/cloexec.h +++ b/tests/cloexec.h @@ -15,8 +15,6 @@     You should have received a copy of the GNU Lesser General Public License     along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ -#include <stdbool.h> -  /* Set the 'FD_CLOEXEC' flag of DESC if VALUE is true,     or clear the flag if VALUE is false.     Return 0 on success, or -1 on error with 'errno' set. diff --git a/tests/fcntl.in.h b/tests/fcntl.in.h index 3e0c302a..9270ced8 100644 --- a/tests/fcntl.in.h +++ b/tests/fcntl.in.h @@ -435,6 +435,10 @@ _GL_WARN_ON_USE (openat, "openat is not portable - "  # define AT_EACCESS 4  #endif +/* Ignore this flag if not supported.  */ +#ifndef AT_NO_AUTOMOUNT +# define AT_NO_AUTOMOUNT 0 +#endif  #endif /* _@GUARD_PREFIX@_FCNTL_H */  #endif /* _@GUARD_PREFIX@_FCNTL_H */ diff --git a/tests/ftruncate.c b/tests/ftruncate.c index f9c4ebad..4a9279b7 100644 --- a/tests/ftruncate.c +++ b/tests/ftruncate.c @@ -3,7 +3,7 @@     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, or (at your option) +   the Free Software Foundation, either version 3, or (at your option)     any later version.     This program is distributed in the hope that it will be useful, diff --git a/tests/iconvsupport.c b/tests/iconvsupport.c index da8d8c16..ee2af0dd 100644 --- a/tests/iconvsupport.c +++ b/tests/iconvsupport.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/infinity.h b/tests/infinity.h index fc011b21..6f68f368 100644 --- a/tests/infinity.h +++ b/tests/infinity.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/init.sh b/tests/init.sh index 933fdd40..d5d37c98 100644 --- a/tests/init.sh +++ b/tests/init.sh @@ -271,12 +271,10 @@ test -n "$EXEEXT" && test -n "$BASH_VERSION" && shopt -s expand_aliases  #  # First, try to use the mktemp program.  # Failing that, we'll roll our own mktemp-like function: -#  - try to get random bytes from /dev/urandom +#  - try to get random bytes from /dev/urandom, mapping them to file-name bytes  #  - failing that, generate output from a combination of quickly-varying -#      sources and gzip.  Ignore non-varying gzip header, and extract -#      "random" bits from there. -#  - given those bits, map to file-name bytes using tr, and try to create -#      the desired directory. +#      sources and awk. +#  - try to create the desired directory.  #  - make only $MAX_TRIES_ attempts  # Helper function.  Print $N pseudo-random bytes from a-zA-Z0-9. @@ -296,20 +294,27 @@ rand_bytes_ ()      return    fi -  n_plus_50_=`expr $n_ + 50` -  cmds_='date; date +%N; free; who -a; w; ps auxww; ps -ef' -  data_=` (eval "$cmds_") 2>&1 | gzip ` - -  # Ensure that $data_ has length at least 50+$n_ -  while :; do -    len_=`echo "$data_"|wc -c` -    test $n_plus_50_ -le $len_ && break; -    data_=` (echo "$data_"; eval "$cmds_") 2>&1 | gzip ` -  done - -  echo "$data_" \ -    | dd bs=1 skip=50 count=$n_ 2>/dev/null \ -    | LC_ALL=C tr -c $chars_ 01234567$chars_$chars_$chars_ +  # Fall back on quickly-varying sources + awk. +  # Limit awk program to 7th Edition Unix so that it works even on Solaris 10. + +  (date; date +%N; free; who -a; w; ps auxww; ps -ef) 2>&1 | awk ' +     BEGIN { +       n = '"$n_"' +       for (i = 0; i < 256; i++) +         ordinal[sprintf ("%c", i)] = i +     } +     { +       for (i = 1; i <= length; i++) +         a[ai++ % n] += ordinal[substr ($0, i, 1)] +     } +     END { +       chars = "'"$chars_"'" +       charslen = length (chars) +       for (i = 0; i < n; i++) +         printf "%s", substr (chars, a[i] % charslen + 1, 1) +       printf "\n" +     } +  '  }  mktempd_ () diff --git a/tests/intprops-internal.h b/tests/intprops-internal.h new file mode 100644 index 00000000..f6455f78 --- /dev/null +++ b/tests/intprops-internal.h @@ -0,0 +1,392 @@ +/* intprops-internal.h -- properties of integer types not visible to users + +   Copyright (C) 2001-2022 Free Software Foundation, Inc. + +   This program is free software: you can redistribute it and/or modify it +   under the terms of the GNU Lesser General Public License as published +   by the Free Software Foundation; either version 2.1 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 Lesser General Public License for more details. + +   You should have received a copy of the GNU Lesser General Public License +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ + +#ifndef _GL_INTPROPS_INTERNAL_H +#define _GL_INTPROPS_INTERNAL_H + +#include <limits.h> + +/* Return a value with the common real type of E and V and the value of V. +   Do not evaluate E.  */ +#define _GL_INT_CONVERT(e, v) ((1 ? 0 : (e)) + (v)) + +/* Act like _GL_INT_CONVERT (E, -V) but work around a bug in IRIX 6.5 cc; see +   <https://lists.gnu.org/r/bug-gnulib/2011-05/msg00406.html>.  */ +#define _GL_INT_NEGATE_CONVERT(e, v) ((1 ? 0 : (e)) - (v)) + +/* The extra casts in the following macros work around compiler bugs, +   e.g., in Cray C 5.0.3.0.  */ + +/* True if the real type T is signed.  */ +#define _GL_TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) + +/* Return 1 if the real expression E, after promotion, has a +   signed or floating type.  Do not evaluate E.  */ +#define _GL_EXPR_SIGNED(e) (_GL_INT_NEGATE_CONVERT (e, 1) < 0) + + +/* Minimum and maximum values for integer types and expressions.  */ + +/* The width in bits of the integer type or expression T. +   Do not evaluate T.  T must not be a bit-field expression. +   Padding bits are not supported; this is checked at compile-time below.  */ +#define _GL_TYPE_WIDTH(t) (sizeof (t) * CHAR_BIT) + +/* The maximum and minimum values for the type of the expression E, +   after integer promotion.  E is not evaluated.  */ +#define _GL_INT_MINIMUM(e)                                              \ +  (_GL_EXPR_SIGNED (e)                                                  \ +   ? ~ _GL_SIGNED_INT_MAXIMUM (e)                                       \ +   : _GL_INT_CONVERT (e, 0)) +#define _GL_INT_MAXIMUM(e)                                              \ +  (_GL_EXPR_SIGNED (e)                                                  \ +   ? _GL_SIGNED_INT_MAXIMUM (e)                                         \ +   : _GL_INT_NEGATE_CONVERT (e, 1)) +#define _GL_SIGNED_INT_MAXIMUM(e)                                       \ +  (((_GL_INT_CONVERT (e, 1) << (_GL_TYPE_WIDTH (+ (e)) - 2)) - 1) * 2 + 1) + +/* Work around OpenVMS incompatibility with C99.  */ +#if !defined LLONG_MAX && defined __INT64_MAX +# define LLONG_MAX __INT64_MAX +# define LLONG_MIN __INT64_MIN +#endif + +/* This include file assumes that signed types are two's complement without +   padding bits; the above macros have undefined behavior otherwise. +   If this is a problem for you, please let us know how to fix it for your host. +   This assumption is tested by the intprops-tests module.  */ + +/* Does the __typeof__ keyword work?  This could be done by +   'configure', but for now it's easier to do it by hand.  */ +#if (2 <= __GNUC__ \ +     || (4 <= __clang_major__) \ +     || (1210 <= __IBMC__ && defined __IBM__TYPEOF__) \ +     || (0x5110 <= __SUNPRO_C && !__STDC__)) +# define _GL_HAVE___TYPEOF__ 1 +#else +# define _GL_HAVE___TYPEOF__ 0 +#endif + +/* Return 1 if the integer type or expression T might be signed.  Return 0 +   if it is definitely unsigned.  T must not be a bit-field expression. +   This macro does not evaluate its argument, and expands to an +   integer constant expression.  */ +#if _GL_HAVE___TYPEOF__ +# define _GL_SIGNED_TYPE_OR_EXPR(t) _GL_TYPE_SIGNED (__typeof__ (t)) +#else +# define _GL_SIGNED_TYPE_OR_EXPR(t) 1 +#endif + +/* Return 1 if - A would overflow in [MIN,MAX] arithmetic. +   A should not have side effects, and A's type should be an +   integer with minimum value MIN and maximum MAX.  */ +#define _GL_INT_NEGATE_RANGE_OVERFLOW(a, min, max) \ +  ((min) < 0 ? (a) < - (max) : 0 < (a)) + +/* True if __builtin_add_overflow (A, B, P) and __builtin_sub_overflow +   (A, B, P) work when P is non-null.  */ +#ifdef __EDG__ +/* EDG-based compilers like nvc 22.1 cannot add 64-bit signed to unsigned +   <https://bugs.gnu.org/53256>.  */ +# define _GL_HAS_BUILTIN_ADD_OVERFLOW 0 +#elif defined __has_builtin +# define _GL_HAS_BUILTIN_ADD_OVERFLOW __has_builtin (__builtin_add_overflow) +/* __builtin_{add,sub}_overflow exists but is not reliable in GCC 5.x and 6.x, +   see <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98269>.  */ +#elif 7 <= __GNUC__ +# define _GL_HAS_BUILTIN_ADD_OVERFLOW 1 +#else +# define _GL_HAS_BUILTIN_ADD_OVERFLOW 0 +#endif + +/* True if __builtin_mul_overflow (A, B, P) works when P is non-null.  */ +#if defined __clang_major__ && __clang_major__ < 14 +/* Work around Clang bug <https://bugs.llvm.org/show_bug.cgi?id=16404>.  */ +# define _GL_HAS_BUILTIN_MUL_OVERFLOW 0 +#else +# define _GL_HAS_BUILTIN_MUL_OVERFLOW _GL_HAS_BUILTIN_ADD_OVERFLOW +#endif + +/* True if __builtin_add_overflow_p (A, B, C) works, and similarly for +   __builtin_sub_overflow_p and __builtin_mul_overflow_p.  */ +#ifdef __EDG__ +/* In EDG-based compilers like ICC 2021.3 and earlier, +   __builtin_add_overflow_p etc. are not treated as integral constant +   expressions even when all arguments are.  */ +# define _GL_HAS_BUILTIN_OVERFLOW_P 0 +#elif defined __has_builtin +# define _GL_HAS_BUILTIN_OVERFLOW_P __has_builtin (__builtin_mul_overflow_p) +#else +# define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__) +#endif + +#if (!defined _GL_STDCKDINT_H && 202311 <= __STDC_VERSION__ \ +     && ! (_GL_HAS_BUILTIN_ADD_OVERFLOW && _GL_HAS_BUILTIN_MUL_OVERFLOW)) +# include <stdckdint.h> +#endif + +/* Store the low-order bits of A + B, A - B, A * B, respectively, into *R. +   Return 1 if the result overflows.  Arguments should not have side +   effects and A, B and *R can be of any integer type other than char, +   bool, a bit-precise integer type, or an enumeration type.  */ +#if _GL_HAS_BUILTIN_ADD_OVERFLOW +# define _GL_INT_ADD_WRAPV(a, b, r) __builtin_add_overflow (a, b, r) +# define _GL_INT_SUBTRACT_WRAPV(a, b, r) __builtin_sub_overflow (a, b, r) +#elif defined ckd_add && defined ckd_sub && !defined _GL_STDCKDINT_H +# define _GL_INT_ADD_WRAPV(a, b, r) ckd_add (r, + (a), + (b)) +# define _GL_INT_SUBTRACT_WRAPV(a, b, r) ckd_sub (r, + (a), + (b)) +#else +# define _GL_INT_ADD_WRAPV(a, b, r) \ +   _GL_INT_OP_WRAPV (a, b, r, +, _GL_INT_ADD_RANGE_OVERFLOW) +# define _GL_INT_SUBTRACT_WRAPV(a, b, r) \ +   _GL_INT_OP_WRAPV (a, b, r, -, _GL_INT_SUBTRACT_RANGE_OVERFLOW) +#endif +#if _GL_HAS_BUILTIN_MUL_OVERFLOW +# if ((9 < __GNUC__ + (3 <= __GNUC_MINOR__) \ +       || (__GNUC__ == 8 && 4 <= __GNUC_MINOR__)) \ +      && !defined __EDG__) +#  define _GL_INT_MULTIPLY_WRAPV(a, b, r) __builtin_mul_overflow (a, b, r) +# else +   /* Work around GCC bug 91450.  */ +#  define _GL_INT_MULTIPLY_WRAPV(a, b, r) \ +    ((!_GL_SIGNED_TYPE_OR_EXPR (*(r)) && _GL_EXPR_SIGNED (a) && _GL_EXPR_SIGNED (b) \ +      && _GL_INT_MULTIPLY_RANGE_OVERFLOW (a, b, 0, (__typeof__ (*(r))) -1)) \ +     ? ((void) __builtin_mul_overflow (a, b, r), 1) \ +     : __builtin_mul_overflow (a, b, r)) +# endif +#elif defined ckd_mul && !defined _GL_STDCKDINT_H +# define _GL_INT_MULTIPLY_WRAPV(a, b, r) ckd_mul (r, + (a), + (b)) +#else +# define _GL_INT_MULTIPLY_WRAPV(a, b, r) \ +   _GL_INT_OP_WRAPV (a, b, r, *, _GL_INT_MULTIPLY_RANGE_OVERFLOW) +#endif + +/* Nonzero if this compiler has GCC bug 68193 or Clang bug 25390.  See: +   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68193 +   https://llvm.org/bugs/show_bug.cgi?id=25390 +   For now, assume all versions of GCC-like compilers generate bogus +   warnings for _Generic.  This matters only for compilers that +   lack relevant builtins.  */ +#if __GNUC__ || defined __clang__ +# define _GL__GENERIC_BOGUS 1 +#else +# define _GL__GENERIC_BOGUS 0 +#endif + +/* Store the low-order bits of A <op> B into *R, where OP specifies +   the operation and OVERFLOW the overflow predicate.  Return 1 if the +   result overflows.  Arguments should not have side effects, +   and A, B and *R can be of any integer type other than char, bool, a +   bit-precise integer type, or an enumeration type.  */ +#if 201112 <= __STDC_VERSION__ && !_GL__GENERIC_BOGUS +# define _GL_INT_OP_WRAPV(a, b, r, op, overflow) \ +   (_Generic \ +    (*(r), \ +     signed char: \ +       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ +                        signed char, SCHAR_MIN, SCHAR_MAX), \ +     unsigned char: \ +       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ +                        unsigned char, 0, UCHAR_MAX), \ +     short int: \ +       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ +                        short int, SHRT_MIN, SHRT_MAX), \ +     unsigned short int: \ +       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ +                        unsigned short int, 0, USHRT_MAX), \ +     int: \ +       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ +                        int, INT_MIN, INT_MAX), \ +     unsigned int: \ +       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ +                        unsigned int, 0, UINT_MAX), \ +     long int: \ +       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ +                        long int, LONG_MIN, LONG_MAX), \ +     unsigned long int: \ +       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ +                        unsigned long int, 0, ULONG_MAX), \ +     long long int: \ +       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ +                        long long int, LLONG_MIN, LLONG_MAX), \ +     unsigned long long int: \ +       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ +                        unsigned long long int, 0, ULLONG_MAX))) +#else +/* Store the low-order bits of A <op> B into *R, where OP specifies +   the operation and OVERFLOW the overflow predicate.  If *R is +   signed, its type is ST with bounds SMIN..SMAX; otherwise its type +   is UT with bounds U..UMAX.  ST and UT are narrower than int. +   Return 1 if the result overflows.  Arguments should not have side +   effects, and A, B and *R can be of any integer type other than +   char, bool, a bit-precise integer type, or an enumeration type.  */ +# if _GL_HAVE___TYPEOF__ +#  define _GL_INT_OP_WRAPV_SMALLISH(a,b,r,op,overflow,st,smin,smax,ut,umax) \ +    (_GL_TYPE_SIGNED (__typeof__ (*(r))) \ +     ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, st, smin, smax) \ +     : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, ut, 0, umax)) +# else +#  define _GL_INT_OP_WRAPV_SMALLISH(a,b,r,op,overflow,st,smin,smax,ut,umax) \ +    (overflow (a, b, smin, smax) \ +     ? (overflow (a, b, 0, umax) \ +        ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st), 1) \ +        : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st)) < 0) \ +     : (overflow (a, b, 0, umax) \ +        ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st)) >= 0 \ +        : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st), 0))) +# endif + +# define _GL_INT_OP_WRAPV(a, b, r, op, overflow) \ +   (sizeof *(r) == sizeof (signed char) \ +    ? _GL_INT_OP_WRAPV_SMALLISH (a, b, r, op, overflow, \ +                                 signed char, SCHAR_MIN, SCHAR_MAX, \ +                                 unsigned char, UCHAR_MAX) \ +    : sizeof *(r) == sizeof (short int) \ +    ? _GL_INT_OP_WRAPV_SMALLISH (a, b, r, op, overflow, \ +                                 short int, SHRT_MIN, SHRT_MAX, \ +                                 unsigned short int, USHRT_MAX) \ +    : sizeof *(r) == sizeof (int) \ +    ? (_GL_EXPR_SIGNED (*(r)) \ +       ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ +                          int, INT_MIN, INT_MAX) \ +       : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ +                          unsigned int, 0, UINT_MAX)) \ +    : _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow)) +# ifdef LLONG_MAX +#  define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \ +    (sizeof *(r) == sizeof (long int) \ +     ? (_GL_EXPR_SIGNED (*(r)) \ +        ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ +                           long int, LONG_MIN, LONG_MAX) \ +        : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ +                           unsigned long int, 0, ULONG_MAX)) \ +     : (_GL_EXPR_SIGNED (*(r)) \ +        ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ +                           long long int, LLONG_MIN, LLONG_MAX) \ +        : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ +                           unsigned long long int, 0, ULLONG_MAX))) +# else +#  define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \ +    (_GL_EXPR_SIGNED (*(r)) \ +     ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ +                        long int, LONG_MIN, LONG_MAX) \ +     : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ +                        unsigned long int, 0, ULONG_MAX)) +# endif +#endif + +/* Store the low-order bits of A <op> B into *R, where the operation +   is given by OP.  Use the unsigned type UT for calculation to avoid +   overflow problems.  *R's type is T, with extrema TMIN and TMAX. +   T can be any signed integer type other than char, bool, a +   bit-precise integer type, or an enumeration type. +   Return 1 if the result overflows.  */ +#define _GL_INT_OP_CALC(a, b, r, op, overflow, ut, t, tmin, tmax) \ +  (overflow (a, b, tmin, tmax) \ +   ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 1) \ +   : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 0)) + +/* Return 1 if the integer expressions A - B and -A would overflow, +   respectively.  Arguments should not have side effects, +   and can be any signed integer type other than char, bool, a +   bit-precise integer type, or an enumeration type. +   These macros are tuned for their last input argument being a constant.  */ + +#if _GL_HAS_BUILTIN_OVERFLOW_P +# define _GL_INT_NEGATE_OVERFLOW(a) \ +   __builtin_sub_overflow_p (0, a, (__typeof__ (- (a))) 0) +#else +# define _GL_INT_NEGATE_OVERFLOW(a) \ +   _GL_INT_NEGATE_RANGE_OVERFLOW (a, _GL_INT_MINIMUM (a), _GL_INT_MAXIMUM (a)) +#endif + +/* Return the low-order bits of A <op> B, where the operation is given +   by OP.  Use the unsigned type UT for calculation to avoid undefined +   behavior on signed integer overflow, and convert the result to type T. +   UT is at least as wide as T and is no narrower than unsigned int, +   T is two's complement, and there is no padding or trap representations. +   Assume that converting UT to T yields the low-order bits, as is +   done in all known two's-complement C compilers.  E.g., see: +   https://gcc.gnu.org/onlinedocs/gcc/Integers-implementation.html + +   According to the C standard, converting UT to T yields an +   implementation-defined result or signal for values outside T's +   range.  However, code that works around this theoretical problem +   runs afoul of a compiler bug in Oracle Studio 12.3 x86.  See: +   https://lists.gnu.org/r/bug-gnulib/2017-04/msg00049.html +   As the compiler bug is real, don't try to work around the +   theoretical problem.  */ + +#define _GL_INT_OP_WRAPV_VIA_UNSIGNED(a, b, op, ut, t) \ +  ((t) ((ut) (a) op (ut) (b))) + +/* Return true if the numeric values A + B, A - B, A * B fall outside +   the range TMIN..TMAX.  Arguments should not have side effects +   and can be any integer type other than char, bool, +   a bit-precise integer type, or an enumeration type. +   TMIN should be signed and nonpositive. +   TMAX should be positive, and should be signed unless TMIN is zero.  */ +#define _GL_INT_ADD_RANGE_OVERFLOW(a, b, tmin, tmax) \ +  ((b) < 0 \ +   ? (((tmin) \ +       ? ((_GL_EXPR_SIGNED (_GL_INT_CONVERT (a, (tmin) - (b))) || (b) < (tmin)) \ +          && (a) < (tmin) - (b)) \ +       : (a) <= -1 - (b)) \ +      || ((_GL_EXPR_SIGNED (a) ? 0 <= (a) : (tmax) < (a)) && (tmax) < (a) + (b))) \ +   : (a) < 0 \ +   ? (((tmin) \ +       ? ((_GL_EXPR_SIGNED (_GL_INT_CONVERT (b, (tmin) - (a))) || (a) < (tmin)) \ +          && (b) < (tmin) - (a)) \ +       : (b) <= -1 - (a)) \ +      || ((_GL_EXPR_SIGNED (_GL_INT_CONVERT (a, b)) || (tmax) < (b)) \ +          && (tmax) < (a) + (b))) \ +   : (tmax) < (b) || (tmax) - (b) < (a)) +#define _GL_INT_SUBTRACT_RANGE_OVERFLOW(a, b, tmin, tmax) \ +  (((a) < 0) == ((b) < 0) \ +   ? ((a) < (b) \ +      ? !(tmin) || -1 - (tmin) < (b) - (a) - 1 \ +      : (tmax) < (a) - (b)) \ +   : (a) < 0 \ +   ? ((!_GL_EXPR_SIGNED (_GL_INT_CONVERT ((a) - (tmin), b)) && (a) - (tmin) < 0) \ +      || (a) - (tmin) < (b)) \ +   : ((! (_GL_EXPR_SIGNED (_GL_INT_CONVERT (tmax, b)) \ +          && _GL_EXPR_SIGNED (_GL_INT_CONVERT ((tmax) + (b), a))) \ +       && (tmax) <= -1 - (b)) \ +      || (tmax) + (b) < (a))) +#define _GL_INT_MULTIPLY_RANGE_OVERFLOW(a, b, tmin, tmax) \ +  ((b) < 0 \ +   ? ((a) < 0 \ +      ? (_GL_EXPR_SIGNED (_GL_INT_CONVERT (tmax, b)) \ +         ? (a) < (tmax) / (b) \ +         : ((_GL_INT_NEGATE_OVERFLOW (b) \ +             ? _GL_INT_CONVERT (b, tmax) >> (_GL_TYPE_WIDTH (+ (b)) - 1) \ +             : (tmax) / -(b)) \ +            <= -1 - (a))) \ +      : _GL_INT_NEGATE_OVERFLOW (_GL_INT_CONVERT (b, tmin)) && (b) == -1 \ +      ? (_GL_EXPR_SIGNED (a) \ +         ? 0 < (a) + (tmin) \ +         : 0 < (a) && -1 - (tmin) < (a) - 1) \ +      : (tmin) / (b) < (a)) \ +   : (b) == 0 \ +   ? 0 \ +   : ((a) < 0 \ +      ? (_GL_INT_NEGATE_OVERFLOW (_GL_INT_CONVERT (a, tmin)) && (a) == -1 \ +         ? (_GL_EXPR_SIGNED (b) ? 0 < (b) + (tmin) : -1 - (tmin) < (b) - 1) \ +         : (tmin) / (a) < (b)) \ +      : (tmax) / (b) < (a))) + +#endif /* _GL_INTPROPS_INTERNAL_H */ diff --git a/tests/intprops.h b/tests/intprops.h new file mode 100644 index 00000000..f182ddc1 --- /dev/null +++ b/tests/intprops.h @@ -0,0 +1,335 @@ +/* intprops.h -- properties of integer types + +   Copyright (C) 2001-2022 Free Software Foundation, Inc. + +   This program is free software: you can redistribute it and/or modify it +   under the terms of the GNU Lesser General Public License as published +   by the Free Software Foundation; either version 2.1 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 Lesser General Public License for more details. + +   You should have received a copy of the GNU Lesser General Public License +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ + +#ifndef _GL_INTPROPS_H +#define _GL_INTPROPS_H + +#include "intprops-internal.h" + +/* The extra casts in the following macros work around compiler bugs, +   e.g., in Cray C 5.0.3.0.  */ + +/* True if the arithmetic type T is an integer type.  bool counts as +   an integer.  */ +#define TYPE_IS_INTEGER(t) ((t) 1.5 == 1) + +/* True if the real type T is signed.  */ +#define TYPE_SIGNED(t) _GL_TYPE_SIGNED (t) + +/* Return 1 if the real expression E, after promotion, has a +   signed or floating type.  Do not evaluate E.  */ +#define EXPR_SIGNED(e) _GL_EXPR_SIGNED (e) + + +/* Minimum and maximum values for integer types and expressions.  */ + +/* The width in bits of the integer type or expression T. +   Do not evaluate T.  T must not be a bit-field expression. +   Padding bits are not supported; this is checked at compile-time below.  */ +#define TYPE_WIDTH(t) _GL_TYPE_WIDTH (t) + +/* The maximum and minimum values for the integer type T.  */ +#define TYPE_MINIMUM(t) ((t) ~ TYPE_MAXIMUM (t)) +#define TYPE_MAXIMUM(t)                                                 \ +  ((t) (! TYPE_SIGNED (t)                                               \ +        ? (t) -1                                                        \ +        : ((((t) 1 << (TYPE_WIDTH (t) - 2)) - 1) * 2 + 1))) + +/* Bound on length of the string representing an unsigned integer +   value representable in B bits.  log10 (2.0) < 146/485.  The +   smallest value of B where this bound is not tight is 2621.  */ +#define INT_BITS_STRLEN_BOUND(b) (((b) * 146 + 484) / 485) + +/* Bound on length of the string representing an integer type or expression T. +   T must not be a bit-field expression. + +   Subtract 1 for the sign bit if T is signed, and then add 1 more for +   a minus sign if needed. + +   Because _GL_SIGNED_TYPE_OR_EXPR sometimes returns 1 when its argument is +   unsigned, this macro may overestimate the true bound by one byte when +   applied to unsigned types of size 2, 4, 16, ... bytes.  */ +#define INT_STRLEN_BOUND(t)                                     \ +  (INT_BITS_STRLEN_BOUND (TYPE_WIDTH (t) - _GL_SIGNED_TYPE_OR_EXPR (t)) \ +   + _GL_SIGNED_TYPE_OR_EXPR (t)) + +/* Bound on buffer size needed to represent an integer type or expression T, +   including the terminating null.  T must not be a bit-field expression.  */ +#define INT_BUFSIZE_BOUND(t) (INT_STRLEN_BOUND (t) + 1) + + +/* Range overflow checks. + +   The INT_<op>_RANGE_OVERFLOW macros return 1 if the corresponding C +   operators overflow arithmetically when given the same arguments. +   These macros do not rely on undefined or implementation-defined behavior. +   Although their implementations are simple and straightforward, +   they are harder to use and may be less efficient than the +   INT_<op>_WRAPV, INT_<op>_OK, and INT_<op>_OVERFLOW macros described below. + +   Example usage: + +     long int i = ...; +     long int j = ...; +     if (INT_MULTIPLY_RANGE_OVERFLOW (i, j, LONG_MIN, LONG_MAX)) +       printf ("multiply would overflow"); +     else +       printf ("product is %ld", i * j); + +   Restrictions on *_RANGE_OVERFLOW macros: + +   These macros do not check for all possible numerical problems or +   undefined or unspecified behavior: they do not check for division +   by zero, for bad shift counts, or for shifting negative numbers. + +   These macros may evaluate their arguments zero or multiple times, +   so the arguments should not have side effects.  The arithmetic +   arguments (including the MIN and MAX arguments) must be of the same +   integer type after the usual arithmetic conversions, and the type +   must have minimum value MIN and maximum MAX.  Unsigned types should +   use a zero MIN of the proper type. + +   Because all arguments are subject to integer promotions, these +   macros typically do not work on types narrower than 'int'. + +   These macros are tuned for constant MIN and MAX.  For commutative +   operations such as A + B, they are also tuned for constant B.  */ + +/* Return 1 if A + B would overflow in [MIN,MAX] arithmetic. +   See above for restrictions.  */ +#define INT_ADD_RANGE_OVERFLOW(a, b, min, max)          \ +  ((b) < 0                                              \ +   ? (a) < (min) - (b)                                  \ +   : (max) - (b) < (a)) + +/* Return 1 if A - B would overflow in [MIN,MAX] arithmetic. +   See above for restrictions.  */ +#define INT_SUBTRACT_RANGE_OVERFLOW(a, b, min, max)     \ +  ((b) < 0                                              \ +   ? (max) + (b) < (a)                                  \ +   : (a) < (min) + (b)) + +/* Return 1 if - A would overflow in [MIN,MAX] arithmetic. +   See above for restrictions.  */ +#define INT_NEGATE_RANGE_OVERFLOW(a, min, max)          \ +  _GL_INT_NEGATE_RANGE_OVERFLOW (a, min, max) + +/* Return 1 if A * B would overflow in [MIN,MAX] arithmetic. +   See above for restrictions.  Avoid && and || as they tickle +   bugs in Sun C 5.11 2010/08/13 and other compilers; see +   <https://lists.gnu.org/r/bug-gnulib/2011-05/msg00401.html>.  */ +#define INT_MULTIPLY_RANGE_OVERFLOW(a, b, min, max)     \ +  ((b) < 0                                              \ +   ? ((a) < 0                                           \ +      ? (a) < (max) / (b)                               \ +      : (b) == -1                                       \ +      ? 0                                               \ +      : (min) / (b) < (a))                              \ +   : (b) == 0                                           \ +   ? 0                                                  \ +   : ((a) < 0                                           \ +      ? (a) < (min) / (b)                               \ +      : (max) / (b) < (a))) + +/* Return 1 if A / B would overflow in [MIN,MAX] arithmetic. +   See above for restrictions.  Do not check for division by zero.  */ +#define INT_DIVIDE_RANGE_OVERFLOW(a, b, min, max)       \ +  ((min) < 0 && (b) == -1 && (a) < - (max)) + +/* Return 1 if A % B would overflow in [MIN,MAX] arithmetic. +   See above for restrictions.  Do not check for division by zero. +   Mathematically, % should never overflow, but on x86-like hosts +   INT_MIN % -1 traps, and the C standard permits this, so treat this +   as an overflow too.  */ +#define INT_REMAINDER_RANGE_OVERFLOW(a, b, min, max)    \ +  INT_DIVIDE_RANGE_OVERFLOW (a, b, min, max) + +/* Return 1 if A << B would overflow in [MIN,MAX] arithmetic. +   See above for restrictions.  Here, MIN and MAX are for A only, and B need +   not be of the same type as the other arguments.  The C standard says that +   behavior is undefined for shifts unless 0 <= B < wordwidth, and that when +   A is negative then A << B has undefined behavior and A >> B has +   implementation-defined behavior, but do not check these other +   restrictions.  */ +#define INT_LEFT_SHIFT_RANGE_OVERFLOW(a, b, min, max)   \ +  ((a) < 0                                              \ +   ? (a) < (min) >> (b)                                 \ +   : (max) >> (b) < (a)) + +/* The _GL*_OVERFLOW macros have the same restrictions as the +   *_RANGE_OVERFLOW macros, except that they do not assume that operands +   (e.g., A and B) have the same type as MIN and MAX.  Instead, they assume +   that the result (e.g., A + B) has that type.  */ +#if _GL_HAS_BUILTIN_OVERFLOW_P +# define _GL_ADD_OVERFLOW(a, b, min, max)                               \ +   __builtin_add_overflow_p (a, b, (__typeof__ ((a) + (b))) 0) +# define _GL_SUBTRACT_OVERFLOW(a, b, min, max)                          \ +   __builtin_sub_overflow_p (a, b, (__typeof__ ((a) - (b))) 0) +# define _GL_MULTIPLY_OVERFLOW(a, b, min, max)                          \ +   __builtin_mul_overflow_p (a, b, (__typeof__ ((a) * (b))) 0) +#else +# define _GL_ADD_OVERFLOW(a, b, min, max)                                \ +   ((min) < 0 ? INT_ADD_RANGE_OVERFLOW (a, b, min, max)                  \ +    : (a) < 0 ? (b) <= (a) + (b)                                         \ +    : (b) < 0 ? (a) <= (a) + (b)                                         \ +    : (a) + (b) < (b)) +# define _GL_SUBTRACT_OVERFLOW(a, b, min, max)                           \ +   ((min) < 0 ? INT_SUBTRACT_RANGE_OVERFLOW (a, b, min, max)             \ +    : (a) < 0 ? 1                                                        \ +    : (b) < 0 ? (a) - (b) <= (a)                                         \ +    : (a) < (b)) +# define _GL_MULTIPLY_OVERFLOW(a, b, min, max)                           \ +   (((min) == 0 && (((a) < 0 && 0 < (b)) || ((b) < 0 && 0 < (a))))       \ +    || INT_MULTIPLY_RANGE_OVERFLOW (a, b, min, max)) +#endif +#define _GL_DIVIDE_OVERFLOW(a, b, min, max)                             \ +  ((min) < 0 ? (b) == _GL_INT_NEGATE_CONVERT (min, 1) && (a) < - (max)  \ +   : (a) < 0 ? (b) <= (a) + (b) - 1                                     \ +   : (b) < 0 && (a) + (b) <= (a)) +#define _GL_REMAINDER_OVERFLOW(a, b, min, max)                          \ +  ((min) < 0 ? (b) == _GL_INT_NEGATE_CONVERT (min, 1) && (a) < - (max)  \ +   : (a) < 0 ? (a) % (b) != ((max) - (b) + 1) % (b)                     \ +   : (b) < 0 && ! _GL_UNSIGNED_NEG_MULTIPLE (a, b, max)) + +/* Return a nonzero value if A is a mathematical multiple of B, where +   A is unsigned, B is negative, and MAX is the maximum value of A's +   type.  A's type must be the same as (A % B)'s type.  Normally (A % +   -B == 0) suffices, but things get tricky if -B would overflow.  */ +#define _GL_UNSIGNED_NEG_MULTIPLE(a, b, max)                            \ +  (((b) < -_GL_SIGNED_INT_MAXIMUM (b)                                   \ +    ? (_GL_SIGNED_INT_MAXIMUM (b) == (max)                              \ +       ? (a)                                                            \ +       : (a) % (_GL_INT_CONVERT (a, _GL_SIGNED_INT_MAXIMUM (b)) + 1))   \ +    : (a) % - (b))                                                      \ +   == 0) + +/* Check for integer overflow, and report low order bits of answer. + +   The INT_<op>_OVERFLOW macros return 1 if the corresponding C operators +   might not yield numerically correct answers due to arithmetic overflow. +   The INT_<op>_WRAPV macros compute the low-order bits of the sum, +   difference, and product of two C integers, and return 1 if these +   low-order bits are not numerically correct. +   These macros work correctly on all known practical hosts, and do not rely +   on undefined behavior due to signed arithmetic overflow. + +   Example usage, assuming A and B are long int: + +     if (INT_MULTIPLY_OVERFLOW (a, b)) +       printf ("result would overflow\n"); +     else +       printf ("result is %ld (no overflow)\n", a * b); + +   Example usage with WRAPV flavor: + +     long int result; +     bool overflow = INT_MULTIPLY_WRAPV (a, b, &result); +     printf ("result is %ld (%s)\n", result, +             overflow ? "after overflow" : "no overflow"); + +   Restrictions on these macros: + +   These macros do not check for all possible numerical problems or +   undefined or unspecified behavior: they do not check for division +   by zero, for bad shift counts, or for shifting negative numbers. + +   These macros may evaluate their arguments zero or multiple times, so the +   arguments should not have side effects. + +   The WRAPV macros are not constant expressions.  They support only +   +, binary -, and *. + +   Because the WRAPV macros convert the result, they report overflow +   in different circumstances than the OVERFLOW macros do.  For +   example, in the typical case with 16-bit 'short' and 32-bit 'int', +   if A, B and *R are all of type 'short' then INT_ADD_OVERFLOW (A, B) +   returns false because the addition cannot overflow after A and B +   are converted to 'int', whereas INT_ADD_WRAPV (A, B, R) returns +   true or false depending on whether the sum fits into 'short'. + +   These macros are tuned for their last input argument being a constant. + +   A, B, and *R should be integers; they need not be the same type, +   and they need not be all signed or all unsigned. +   However, none of the integer types should be bit-precise, +   and *R's type should not be char, bool, or an enumeration type. + +   Return 1 if the integer expressions A * B, A - B, -A, A * B, A / B, +   A % B, and A << B would overflow, respectively.  */ + +#define INT_ADD_OVERFLOW(a, b) \ +  _GL_BINARY_OP_OVERFLOW (a, b, _GL_ADD_OVERFLOW) +#define INT_SUBTRACT_OVERFLOW(a, b) \ +  _GL_BINARY_OP_OVERFLOW (a, b, _GL_SUBTRACT_OVERFLOW) +#define INT_NEGATE_OVERFLOW(a) _GL_INT_NEGATE_OVERFLOW (a) +#define INT_MULTIPLY_OVERFLOW(a, b) \ +  _GL_BINARY_OP_OVERFLOW (a, b, _GL_MULTIPLY_OVERFLOW) +#define INT_DIVIDE_OVERFLOW(a, b) \ +  _GL_BINARY_OP_OVERFLOW (a, b, _GL_DIVIDE_OVERFLOW) +#define INT_REMAINDER_OVERFLOW(a, b) \ +  _GL_BINARY_OP_OVERFLOW (a, b, _GL_REMAINDER_OVERFLOW) +#define INT_LEFT_SHIFT_OVERFLOW(a, b) \ +  INT_LEFT_SHIFT_RANGE_OVERFLOW (a, b, \ +                                 _GL_INT_MINIMUM (a), _GL_INT_MAXIMUM (a)) + +/* Return 1 if the expression A <op> B would overflow, +   where OP_RESULT_OVERFLOW (A, B, MIN, MAX) does the actual test, +   assuming MIN and MAX are the minimum and maximum for the result type. +   Arguments should be free of side effects.  */ +#define _GL_BINARY_OP_OVERFLOW(a, b, op_result_overflow)        \ +  op_result_overflow (a, b,                                     \ +                      _GL_INT_MINIMUM (_GL_INT_CONVERT (a, b)), \ +                      _GL_INT_MAXIMUM (_GL_INT_CONVERT (a, b))) + +/* Store the low-order bits of A + B, A - B, A * B, respectively, into *R. +   Return 1 if the result overflows.  See above for restrictions.  */ +#define INT_ADD_WRAPV(a, b, r) _GL_INT_ADD_WRAPV (a, b, r) +#define INT_SUBTRACT_WRAPV(a, b, r) _GL_INT_SUBTRACT_WRAPV (a, b, r) +#define INT_MULTIPLY_WRAPV(a, b, r) _GL_INT_MULTIPLY_WRAPV (a, b, r) + +/* The following macros compute A + B, A - B, and A * B, respectively. +   If no overflow occurs, they set *R to the result and return 1; +   otherwise, they return 0 and may modify *R. + +   Example usage: + +     long int result; +     if (INT_ADD_OK (a, b, &result)) +       printf ("result is %ld\n", result); +     else +       printf ("overflow\n"); + +   A, B, and *R should be integers; they need not be the same type, +   and they need not be all signed or all unsigned. +   However, none of the integer types should be bit-precise, +   and *R's type should not be char, bool, or an enumeration type. + +   These macros work correctly on all known practical hosts, and do not rely +   on undefined behavior due to signed arithmetic overflow. + +   These macros are not constant expressions. + +   These macros may evaluate their arguments zero or multiple times, so the +   arguments should not have side effects. + +   These macros are tuned for B being a constant.  */ + +#define INT_ADD_OK(a, b, r) (! INT_ADD_WRAPV (a, b, r)) +#define INT_SUBTRACT_OK(a, b, r) (! INT_SUBTRACT_WRAPV (a, b, r)) +#define INT_MULTIPLY_OK(a, b, r) (! INT_MULTIPLY_WRAPV (a, b, r)) + +#endif /* _GL_INTPROPS_H */ diff --git a/tests/locale.c b/tests/locale.c index 67578d28..d7ae6103 100644 --- a/tests/locale.c +++ b/tests/locale.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/macros.h b/tests/macros.h index 392d58fb..7f5eb2de 100644 --- a/tests/macros.h +++ b/tests/macros.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/minus-zero.h b/tests/minus-zero.h index bd50450a..d43d8e32 100644 --- a/tests/minus-zero.h +++ b/tests/minus-zero.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/nan.h b/tests/nan.h index a0c80746..6a3a239a 100644 --- a/tests/nan.h +++ b/tests/nan.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/nanosleep.c b/tests/nanosleep.c index 5294c646..55d6fa65 100644 --- a/tests/nanosleep.c +++ b/tests/nanosleep.c @@ -23,16 +23,12 @@  #include <time.h>  #include "intprops.h" -#include "sig-handler.h" -#include "verify.h" -#include <stdbool.h>  #include <stdio.h>  #include <sys/types.h>  #include <sys/select.h>  #include <signal.h> -#include <sys/time.h>  #include <errno.h>  #include <unistd.h> @@ -61,7 +57,7 @@ nanosleep (const struct timespec *requested_delay,    {      /* Verify that time_t is large enough.  */ -    verify (TYPE_MAXIMUM (time_t) / 24 / 24 / 60 / 60); +    static_assert (TYPE_MAXIMUM (time_t) / 24 / 24 / 60 / 60);      const time_t limit = 24 * 24 * 60 * 60;      time_t seconds = requested_delay->tv_sec;      struct timespec intermediate; @@ -181,45 +177,9 @@ nanosleep (const struct timespec *requested_delay,  }  #else -/* Unix platforms lacking nanosleep. */ - -/* Some systems (MSDOS) don't have SIGCONT. -   Using SIGTERM here turns the signal-handling code below -   into a no-op on such systems. */ -# ifndef SIGCONT -#  define SIGCONT SIGTERM -# endif - -static sig_atomic_t volatile suspended; - -/* Handle SIGCONT. */ - -static _GL_ASYNC_SAFE void -sighandler (int sig) -{ -  suspended = 1; -} - -/* Suspend execution for at least *TS_DELAY seconds.  */ - -static int -my_usleep (const struct timespec *ts_delay) -{ -  struct timeval tv_delay; -  tv_delay.tv_sec = ts_delay->tv_sec; -  tv_delay.tv_usec = (ts_delay->tv_nsec + 999) / 1000; -  if (tv_delay.tv_usec == 1000000) -    { -      if (tv_delay.tv_sec == TYPE_MAXIMUM (time_t)) -        tv_delay.tv_usec = 1000000 - 1; /* close enough */ -      else -        { -          tv_delay.tv_sec++; -          tv_delay.tv_usec = 0; -        } -    } -  return select (0, NULL, NULL, NULL, &tv_delay); -} +/* Other platforms lacking nanosleep. +   It's not clear whether these are still practical porting targets. +   For now, just fall back on pselect.  */  /* Suspend execution for at least *REQUESTED_DELAY seconds.  The     *REMAINING_DELAY part isn't implemented yet.  */ @@ -228,49 +188,6 @@ int  nanosleep (const struct timespec *requested_delay,             struct timespec *remaining_delay)  { -  static bool initialized; - -  if (requested_delay->tv_nsec < 0 || BILLION <= requested_delay->tv_nsec) -    { -      errno = EINVAL; -      return -1; -    } - -  /* set up sig handler */ -  if (! initialized) -    { -      struct sigaction oldact; - -      sigaction (SIGCONT, NULL, &oldact); -      if (get_handler (&oldact) != SIG_IGN) -        { -          struct sigaction newact; - -          newact.sa_handler = sighandler; -          sigemptyset (&newact.sa_mask); -          newact.sa_flags = 0; -          sigaction (SIGCONT, &newact, NULL); -        } -      initialized = true; -    } - -  suspended = 0; - -  if (my_usleep (requested_delay) == -1) -    { -      if (suspended) -        { -          /* Calculate time remaining.  */ -          /* FIXME: the code in sleep doesn't use this, so there's no -             rush to implement it.  */ - -          errno = EINTR; -        } -      return -1; -    } - -  /* FIXME: Restore sig handler?  */ - -  return 0; +  return pselect (0, NULL, NULL, NULL, requested_delay, NULL);  }  #endif diff --git a/tests/nap.h b/tests/nap.h index 2b3c1d2f..37f8009c 100644 --- a/tests/nap.h +++ b/tests/nap.h @@ -3,7 +3,7 @@     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 +   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, @@ -20,9 +20,8 @@  # define GLTEST_NAP_H  # include <limits.h> -# include <stdbool.h> -# include <intprops.h> +# include <stdckdint.h>  /* Avoid a conflict with a function called nap() on UnixWare.  */  # if defined _SCO_DS || (defined __SCO_VERSION__ || defined __sysv5__)  /* OpenServer, UnixWare */ @@ -55,9 +54,9 @@ diff_timespec (struct timespec a, struct timespec b)    if (! (bs < as || (bs == as && bns < ans)))      return 0; -  if (INT_SUBTRACT_WRAPV (as, bs, &sdiff) -      || INT_MULTIPLY_WRAPV (sdiff, 1000000000, &sdiff) -      || INT_ADD_WRAPV (sdiff, ans - bns, &sdiff)) +  if (ckd_sub (&sdiff, as, bs) +      || ckd_mul (&sdiff, sdiff, 1000000000) +      || ckd_add (&sdiff, sdiff, ans - bns))      return INT_MAX;    return sdiff; diff --git a/tests/pselect.c b/tests/pselect.c new file mode 100644 index 00000000..a1eca0c6 --- /dev/null +++ b/tests/pselect.c @@ -0,0 +1,110 @@ +/* pselect - synchronous I/O multiplexing + +   Copyright 2011-2022 Free Software Foundation, Inc. + +   This file is part of gnulib. + +   This file is free software: you can redistribute it and/or modify +   it under the terms of the GNU Lesser General Public License as +   published by the Free Software Foundation; either version 2.1 of the +   License, or (at your option) any later version. + +   This file 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 Lesser General Public License for more details. + +   You should have received a copy of the GNU Lesser General Public License +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ + +/* written by Paul Eggert */ + +#include <config.h> + +#include <sys/select.h> + +#include <errno.h> +#include <signal.h> + +/* Examine the size-NFDS file descriptor sets in RFDS, WFDS, and XFDS +   to see whether some of their descriptors are ready for reading, +   ready for writing, or have exceptions pending.  Wait for at most +   TIMEOUT seconds, and use signal mask SIGMASK while waiting.  A null +   pointer parameter stands for no descriptors, an infinite timeout, +   or an unaffected signal mask.  */ + +#if !HAVE_PSELECT + +int +pselect (int nfds, fd_set *restrict rfds, +         fd_set *restrict wfds, fd_set *restrict xfds, +         struct timespec const *restrict timeout, +         sigset_t const *restrict sigmask) +{ +  int select_result; +  sigset_t origmask; +  struct timeval tv, *tvp; + +  if (timeout) +    { +      if (! (0 <= timeout->tv_nsec && timeout->tv_nsec < 1000000000)) +        { +          errno = EINVAL; +          return -1; +        } + +      tv.tv_sec = timeout->tv_sec; +      tv.tv_usec = (timeout->tv_nsec + 999) / 1000; +      tvp = &tv; +    } +  else +    tvp = NULL; + +  /* Signal mask munging should be atomic, but this is the best we can +     do in this emulation.  */ +  if (sigmask) +    pthread_sigmask (SIG_SETMASK, sigmask, &origmask); + +  select_result = select (nfds, rfds, wfds, xfds, tvp); + +  if (sigmask) +    { +      int select_errno = errno; +      pthread_sigmask (SIG_SETMASK, &origmask, NULL); +      errno = select_errno; +    } + +  return select_result; +} + +#else /* HAVE_PSELECT */ +# include <unistd.h> +# undef pselect + +int +rpl_pselect (int nfds, fd_set *restrict rfds, +             fd_set *restrict wfds, fd_set *restrict xfds, +             struct timespec const *restrict timeout, +             sigset_t const *restrict sigmask) +{ +  int i; + +  /* FreeBSD 8.2 has a bug: it does not always detect invalid fds.  */ +  if (nfds < 0 || nfds > FD_SETSIZE) +    { +      errno = EINVAL; +      return -1; +    } +  for (i = 0; i < nfds; i++) +    { +      if (((rfds && FD_ISSET (i, rfds)) +           || (wfds && FD_ISSET (i, wfds)) +           || (xfds && FD_ISSET (i, xfds))) +          && dup2 (i, i) != i) +        return -1; +    } + +  return pselect (nfds, rfds, wfds, xfds, timeout, sigmask); +} + +#endif diff --git a/tests/pthread.in.h b/tests/pthread.in.h index 5a658db9..cf9ca3a4 100644 --- a/tests/pthread.in.h +++ b/tests/pthread.in.h @@ -1968,6 +1968,35 @@ _GL_WARN_ON_USE (pthread_spin_destroy, "pthread_spin_destroy is not portable - "  #endif +#if defined __cplusplus && defined GNULIB_NAMESPACE && !@HAVE_PTHREAD_H@ && defined __MINGW32__ +/* Provide the symbols required by mingw's <bits/gthr-default.h>.  */ +using GNULIB_NAMESPACE::pthread_create; +using GNULIB_NAMESPACE::pthread_self; +using GNULIB_NAMESPACE::pthread_equal; +using GNULIB_NAMESPACE::pthread_detach; +using GNULIB_NAMESPACE::pthread_join; +using GNULIB_NAMESPACE::pthread_once; +using GNULIB_NAMESPACE::pthread_mutex_init; +using GNULIB_NAMESPACE::pthread_mutexattr_init; +using GNULIB_NAMESPACE::pthread_mutexattr_settype; +using GNULIB_NAMESPACE::pthread_mutexattr_destroy; +using GNULIB_NAMESPACE::pthread_mutex_lock; +using GNULIB_NAMESPACE::pthread_mutex_trylock; +using GNULIB_NAMESPACE::pthread_mutex_timedlock; +using GNULIB_NAMESPACE::pthread_mutex_unlock; +using GNULIB_NAMESPACE::pthread_mutex_destroy; +using GNULIB_NAMESPACE::pthread_cond_wait; +using GNULIB_NAMESPACE::pthread_cond_timedwait; +using GNULIB_NAMESPACE::pthread_cond_signal; +using GNULIB_NAMESPACE::pthread_cond_broadcast; +using GNULIB_NAMESPACE::pthread_cond_destroy; +using GNULIB_NAMESPACE::pthread_key_create; +using GNULIB_NAMESPACE::pthread_setspecific; +using GNULIB_NAMESPACE::pthread_getspecific; +using GNULIB_NAMESPACE::pthread_key_delete; +#endif + +  #endif /* _@GUARD_PREFIX@_PTHREAD_H_ */  #endif /* _@GUARD_PREFIX@_PTHREAD_H_ */  #endif diff --git a/tests/putenv.c b/tests/putenv.c index 484506ac..b0d27e2f 100644 --- a/tests/putenv.c +++ b/tests/putenv.c @@ -6,7 +6,7 @@     This file is free software: you can redistribute it and/or modify     it under the terms of the GNU Lesser General Public License as -   published by the Free Software Foundation; either version 3 of the +   published by the Free Software Foundation, either version 3 of the     License, or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/randomd.c b/tests/randomd.c index 4455275b..87e8faef 100644 --- a/tests/randomd.c +++ b/tests/randomd.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/randoml.c b/tests/randoml.c index 99f8645e..8feab2a9 100644 --- a/tests/randoml.c +++ b/tests/randoml.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/reallocarray.c b/tests/reallocarray.c index bc4cba4b..70c1b478 100644 --- a/tests/reallocarray.c +++ b/tests/reallocarray.c @@ -19,16 +19,15 @@  #include <config.h> +#include <stdckdint.h>  #include <stdlib.h>  #include <errno.h> -#include "intprops.h" -  void *  reallocarray (void *ptr, size_t nmemb, size_t size)  {    size_t nbytes; -  if (INT_MULTIPLY_WRAPV (nmemb, size, &nbytes)) +  if (ckd_mul (&nbytes, nmemb, size))      {        errno = ENOMEM;        return NULL; diff --git a/tests/setlocale.c b/tests/setlocale.c index 3ea35598..b9a29ee6 100644 --- a/tests/setlocale.c +++ b/tests/setlocale.c @@ -3,7 +3,7 @@     This file is free software: you can redistribute it and/or modify     it under the terms of the GNU Lesser General Public License as -   published by the Free Software Foundation; either version 3 of the +   published by the Free Software Foundation, either version 3 of the     License, or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -1084,7 +1084,7 @@ static char const locales_with_principal_territory[][6 + 1] =      "tl_PH",    /* Tagalog      Philippines */      "to_TO",    /* Tonga        Tonga */      "tpi_PG",   /* Tok Pisin    Papua New Guinea */ -    "tr_TR",    /* Turkish      Turkey */ +    "tr_TR",    /* Turkish      Türkiye */      "tum_MW",   /* Tumbuka      Malawi */      "ug_CN",    /* Uighur       China */      "uk_UA",    /* Ukrainian    Ukraine */ @@ -1339,7 +1339,7 @@ static char const locales_with_principal_language[][6 + 1] =      "tk_TM",    /* Turkmen      Turkmenistan */      "ar_TN",    /* Arabic       Tunisia */      "to_TO",    /* Tonga        Tonga */ -    "tr_TR",    /* Turkish      Turkey */ +    "tr_TR",    /* Turkish      Türkiye */      "zh_TW",    /* Chinese      Taiwan */      "sw_TZ",    /* Swahili      Tanzania */      "uk_UA",    /* Ukrainian    Ukraine */ diff --git a/tests/sig-handler.c b/tests/sig-handler.c deleted file mode 100644 index 0ab63ec1..00000000 --- a/tests/sig-handler.c +++ /dev/null @@ -1,21 +0,0 @@ -/* Convenience declarations when working with <signal.h>. - -   Copyright (C) 2012-2022 Free Software Foundation, Inc. - -   This file is free software: you can redistribute it and/or modify -   it under the terms of the GNU Lesser General Public License as -   published by the Free Software Foundation; either version 2.1 of the -   License, or (at your option) any later version. - -   This file 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 Lesser General Public License for more details. - -   You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ - -#include <config.h> - -#define SIG_HANDLER_INLINE _GL_EXTERN_INLINE -#include "sig-handler.h" diff --git a/tests/sig-handler.h b/tests/sig-handler.h deleted file mode 100644 index 1ca8d542..00000000 --- a/tests/sig-handler.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Convenience declarations when working with <signal.h>. - -   Copyright (C) 2008-2022 Free Software Foundation, Inc. - -   This file is free software: you can redistribute it and/or modify -   it under the terms of the GNU Lesser General Public License as -   published by the Free Software Foundation; either version 2.1 of the -   License, or (at your option) any later version. - -   This file 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 Lesser General Public License for more details. - -   You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ - -#ifndef _GL_SIG_HANDLER_H -#define _GL_SIG_HANDLER_H - -#include <signal.h> - -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif -_GL_INLINE_HEADER_BEGIN -#ifndef SIG_HANDLER_INLINE -# define SIG_HANDLER_INLINE _GL_INLINE -#endif - -/* Convenience type when working with signal handlers.  */ -typedef void (*sa_handler_t) (int); - -/* Return the handler of a signal, as a sa_handler_t value regardless -   of its true type.  The resulting function can be compared to -   special values like SIG_IGN but it is not portable to call it.  */ -SIG_HANDLER_INLINE sa_handler_t _GL_ATTRIBUTE_PURE -get_handler (struct sigaction const *a) -{ -  /* POSIX says that special values like SIG_IGN can only occur when -     action.sa_flags does not contain SA_SIGINFO.  But in Linux 2.4, -     for example, sa_sigaction and sa_handler are aliases and a signal -     is ignored if sa_sigaction (after casting) equals SIG_IGN.  In -     this case, this implementation relies on the fact that the two -     are aliases, and simply returns sa_handler.  */ -  return a->sa_handler; -} - -_GL_INLINE_HEADER_END - -#endif /* _GL_SIG_HANDLER_H */ diff --git a/tests/sigaction.c b/tests/sigaction.c deleted file mode 100644 index 953a6cae..00000000 --- a/tests/sigaction.c +++ /dev/null @@ -1,204 +0,0 @@ -/* POSIX compatible signal blocking. -   Copyright (C) 2008-2022 Free Software Foundation, Inc. -   Written by Eric Blake <ebb9@byu.net>, 2008. - -   This file is free software: you can redistribute it and/or modify -   it under the terms of the GNU Lesser General Public License as -   published by the Free Software Foundation; either version 2.1 of the -   License, or (at your option) any later version. - -   This file 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 Lesser General Public License for more details. - -   You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ - -#include <config.h> - -/* Specification.  */ -#include <signal.h> - -#include <errno.h> -#include <stdint.h> -#include <stdlib.h> - -/* This implementation of sigaction is tailored to native Windows behavior: -   signal() has SysV semantics (ie. the handler is uninstalled before -   it is invoked).  This is an inherent data race if an asynchronous -   signal is sent twice in a row before we can reinstall our handler, -   but there's nothing we can do about it.  Meanwhile, sigprocmask() -   is not present, and while we can use the gnulib replacement to -   provide critical sections, it too suffers from potential data races -   in the face of an ill-timed asynchronous signal.  And we compound -   the situation by reading static storage in a signal handler, which -   POSIX warns is not generically async-signal-safe.  Oh well. - -   Additionally: -     - We don't implement SA_NOCLDSTOP or SA_NOCLDWAIT, because SIGCHLD -       is not defined. -     - We don't implement SA_ONSTACK, because sigaltstack() is not present. -     - We ignore SA_RESTART, because blocking native Windows API calls are -       not interrupted anyway when an asynchronous signal occurs, and the -       MSVCRT runtime never sets errno to EINTR. -     - We don't implement SA_SIGINFO because it is impossible to do so -       portably. - -   POSIX states that an application should not mix signal() and -   sigaction().  We support the use of signal() within the gnulib -   sigprocmask() substitute, but all other application code linked -   with this module should stick with only sigaction().  */ - -/* Check some of our assumptions.  */ -#if defined SIGCHLD || defined HAVE_SIGALTSTACK || defined HAVE_SIGINTERRUPT -# error "Revisit the assumptions made in the sigaction module" -#endif - -/* Out-of-range substitutes make a good fallback for uncatchable -   signals.  */ -#ifndef SIGKILL -# define SIGKILL (-1) -#endif -#ifndef SIGSTOP -# define SIGSTOP (-1) -#endif - -/* On native Windows, as of 2008, the signal SIGABRT_COMPAT is an alias -   for the signal SIGABRT.  Only one signal handler is stored for both -   SIGABRT and SIGABRT_COMPAT.  SIGABRT_COMPAT is not a signal of its own.  */ -#if defined _WIN32 && ! defined __CYGWIN__ -# undef SIGABRT_COMPAT -# define SIGABRT_COMPAT 6 -#endif - -/* A signal handler.  */ -typedef void (*handler_t) (int signal); - -/* Set of current actions.  If sa_handler for an entry is NULL, then -   that signal is not currently handled by the sigaction handler.  */ -static struct sigaction volatile action_array[NSIG] /* = 0 */; - -/* Signal handler that is installed for signals.  */ -static void -sigaction_handler (int sig) -{ -  handler_t handler; -  sigset_t mask; -  sigset_t oldmask; -  int saved_errno = errno; -  if (sig < 0 || NSIG <= sig || !action_array[sig].sa_handler) -    { -      /* Unexpected situation; be careful to avoid recursive abort.  */ -      if (sig == SIGABRT) -        signal (SIGABRT, SIG_DFL); -      abort (); -    } - -  /* Reinstall the signal handler when required; otherwise update the -     bookkeeping so that the user's handler may call sigaction and get -     accurate results.  We know the signal isn't currently blocked, or -     we wouldn't be in its handler, therefore we know that we are not -     interrupting a sigaction() call.  There is a race where any -     asynchronous instance of the same signal occurring before we -     reinstall the handler will trigger the default handler; oh -     well.  */ -  handler = action_array[sig].sa_handler; -  if ((action_array[sig].sa_flags & SA_RESETHAND) == 0) -    signal (sig, sigaction_handler); -  else -    action_array[sig].sa_handler = NULL; - -  /* Block appropriate signals.  */ -  mask = action_array[sig].sa_mask; -  if ((action_array[sig].sa_flags & SA_NODEFER) == 0) -    sigaddset (&mask, sig); -  sigprocmask (SIG_BLOCK, &mask, &oldmask); - -  /* Invoke the user's handler, then restore prior mask.  */ -  errno = saved_errno; -  handler (sig); -  saved_errno = errno; -  sigprocmask (SIG_SETMASK, &oldmask, NULL); -  errno = saved_errno; -} - -/* Change and/or query the action that will be taken on delivery of -   signal SIG.  If not NULL, ACT describes the new behavior.  If not -   NULL, OACT is set to the prior behavior.  Return 0 on success, or -   set errno and return -1 on failure.  */ -int -sigaction (int sig, const struct sigaction *restrict act, -           struct sigaction *restrict oact) -{ -  sigset_t mask; -  sigset_t oldmask; -  int saved_errno; - -  if (sig < 0 || NSIG <= sig || sig == SIGKILL || sig == SIGSTOP -      || (act && act->sa_handler == SIG_ERR)) -    { -      errno = EINVAL; -      return -1; -    } - -#ifdef SIGABRT_COMPAT -  if (sig == SIGABRT_COMPAT) -    sig = SIGABRT; -#endif - -  /* POSIX requires sigaction() to be async-signal-safe.  In other -     words, if an asynchronous signal can occur while we are anywhere -     inside this function, the user's handler could then call -     sigaction() recursively and expect consistent results.  We meet -     this rule by using sigprocmask to block all signals before -     modifying any data structure that could be read from a signal -     handler; this works since we know that the gnulib sigprocmask -     replacement does not try to use sigaction() from its handler.  */ -  if (!act && !oact) -    return 0; -  sigfillset (&mask); -  sigprocmask (SIG_BLOCK, &mask, &oldmask); -  if (oact) -    { -      if (action_array[sig].sa_handler) -        *oact = action_array[sig]; -      else -        { -          /* Safe to change the handler at will here, since all -             signals are currently blocked.  */ -          oact->sa_handler = signal (sig, SIG_DFL); -          if (oact->sa_handler == SIG_ERR) -            goto failure; -          signal (sig, oact->sa_handler); -          oact->sa_flags = SA_RESETHAND | SA_NODEFER; -          sigemptyset (&oact->sa_mask); -        } -    } - -  if (act) -    { -      /* Safe to install the handler before updating action_array, -         since all signals are currently blocked.  */ -      if (act->sa_handler == SIG_DFL || act->sa_handler == SIG_IGN) -        { -          if (signal (sig, act->sa_handler) == SIG_ERR) -            goto failure; -          action_array[sig].sa_handler = NULL; -        } -      else -        { -          if (signal (sig, sigaction_handler) == SIG_ERR) -            goto failure; -          action_array[sig] = *act; -        } -    } -  sigprocmask (SIG_SETMASK, &oldmask, NULL); -  return 0; - - failure: -  saved_errno = errno; -  sigprocmask (SIG_SETMASK, &oldmask, NULL); -  errno = saved_errno; -  return -1; -} diff --git a/tests/signal.in.h b/tests/signal.in.h index 640b5022..c0d4848d 100644 --- a/tests/signal.in.h +++ b/tests/signal.in.h @@ -55,13 +55,21 @@  #ifndef _@GUARD_PREFIX@_SIGNAL_H  #define _@GUARD_PREFIX@_SIGNAL_H -/* Mac OS X 10.3, FreeBSD 6.4, OpenBSD 3.8, OSF/1 4.0, Solaris 2.6, Android, +/* For testing the OpenBSD version.  */ +#if (@GNULIB_PTHREAD_SIGMASK@ || defined GNULIB_POSIXCHECK) \ +    && defined __OpenBSD__ +# include <sys/param.h> +#endif + +/* Mac OS X 10.3, FreeBSD < 8.0, OpenBSD < 5.1, OSF/1 4.0, Solaris 2.6, Android,     OS/2 kLIBC declare pthread_sigmask in <pthread.h>, not in <signal.h>.     But avoid namespace pollution on glibc systems.*/  #if (@GNULIB_PTHREAD_SIGMASK@ || defined GNULIB_POSIXCHECK) \      && ((defined __APPLE__ && defined __MACH__) \ -        || defined __FreeBSD__ || defined __OpenBSD__ || defined __osf__ \ -        || defined __sun || defined __ANDROID__ || defined __KLIBC__) \ +        || (defined __FreeBSD__ && __FreeBSD__ < 8) \ +        || (defined __OpenBSD__ && OpenBSD < 201205) \ +        || defined __osf__ || defined __sun || defined __ANDROID__ \ +        || defined __KLIBC__) \      && ! defined __GLIBC__  # include <pthread.h>  #endif diff --git a/tests/signature.h b/tests/signature.h index 3e2ebcfe..7a8ef91a 100644 --- a/tests/signature.h +++ b/tests/signature.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/sleep.c b/tests/sleep.c index 7a6fb152..80431c10 100644 --- a/tests/sleep.c +++ b/tests/sleep.c @@ -22,8 +22,6 @@  #include <limits.h> -#include "verify.h" -  #if defined _WIN32 && ! defined __CYGWIN__  # define WIN32_LEAN_AND_MEAN  /* avoid including junk */ @@ -56,7 +54,7 @@ unsigned int  rpl_sleep (unsigned int seconds)  {    /* This requires int larger than 16 bits.  */ -  verify (UINT_MAX / 24 / 24 / 60 / 60); +  static_assert (UINT_MAX / 24 / 24 / 60 / 60);    const unsigned int limit = 24 * 24 * 60 * 60;    while (limit < seconds)      { diff --git a/tests/stat-time.h b/tests/stat-time.h index 6b0088e3..b661196e 100644 --- a/tests/stat-time.h +++ b/tests/stat-time.h @@ -20,9 +20,8 @@  #ifndef STAT_TIME_H  #define STAT_TIME_H 1 -#include "intprops.h" -  #include <errno.h> +#include <stdckdint.h>  #include <stddef.h>  #include <sys/stat.h>  #include <time.h> @@ -232,7 +231,7 @@ stat_time_normalize (int result, _GL_UNUSED struct stat *st)            /* Overflow is possible, as Solaris 11 stat can yield               tv_sec == TYPE_MINIMUM (time_t) && tv_nsec == -1000000000.               INT_ADD_WRAPV is OK, since time_t is signed on Solaris.  */ -          if (INT_ADD_WRAPV (q, ts->tv_sec, &ts->tv_sec)) +          if (ckd_add (&ts->tv_sec, q, ts->tv_sec))              {                errno = EOVERFLOW;                return -1; diff --git a/tests/stat-w32.c b/tests/stat-w32.c index c1a29239..e61b75c6 100644 --- a/tests/stat-w32.c +++ b/tests/stat-w32.c @@ -50,7 +50,6 @@  #include "stat-w32.h"  #include "pathmax.h" -#include "verify.h"  /* Don't assume that UNICODE is not defined.  */  #undef LoadLibrary @@ -228,7 +227,7 @@ _gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf)            if (GetFileInformationByHandleExFunc (h, FileIdInfo, &id, sizeof (id)))              {                buf->st_dev = id.VolumeSerialNumber; -              verify (sizeof (ino_t) == sizeof (id.FileId)); +              static_assert (sizeof (ino_t) == sizeof (id.FileId));                memcpy (&buf->st_ino, &id.FileId, sizeof (ino_t));                goto ino_done;              } diff --git a/tests/stat.c b/tests/stat.c index 574489ac..adb61233 100644 --- a/tests/stat.c +++ b/tests/stat.c @@ -55,11 +55,9 @@ orig_stat (const char *filename, struct stat *buf)  #include <errno.h>  #include <limits.h> -#include <stdbool.h>  #include <string.h>  #include "filename.h"  #include "malloca.h" -#include "verify.h"  #ifdef WINDOWS_NATIVE  # define WIN32_LEAN_AND_MEAN diff --git a/tests/stdalign.in.h b/tests/stdalign.in.h index 3b117df1..58fd245c 100644 --- a/tests/stdalign.in.h +++ b/tests/stdalign.in.h @@ -42,10 +42,7 @@     '-malign-double' is used.     The result cannot be used as a value for an 'enum' constant, if you -   want to be portable to HP-UX 10.20 cc and AIX 3.2.5 xlc. - -   Include <stddef.h> for offsetof.  */ -#include <stddef.h> +   want to be portable to HP-UX 10.20 cc and AIX 3.2.5 xlc.  */  /* FreeBSD 9.1 <sys/cdefs.h>, included by <stddef.h> and lots of other     standard headers, defines conflicting implementations of _Alignas @@ -61,17 +58,19 @@           && !defined __clang__) \       || (defined __clang__ && __clang_major__ < 8))  # ifdef __cplusplus -#  if 201103 <= __cplusplus +#  if (201103 <= __cplusplus || defined _MSC_VER)  #   define _Alignof(type) alignof (type)  #  else     template <class __t> struct __alignof_helper { char __a; __t __b; };  #   define _Alignof(type) offsetof (__alignof_helper<type>, __b) +#   define _GL_STDALIGN_NEEDS_STDDEF 1  #  endif  # else  #  define _Alignof(type) offsetof (struct { char __a; type __b; }, __b) +#  define _GL_STDALIGN_NEEDS_STDDEF 1  # endif  #endif -#if ! (defined __cplusplus && 201103 <= __cplusplus) +#if ! (defined __cplusplus && (201103 <= __cplusplus || defined _MSC_VER))  # define alignof _Alignof  #endif  #define __alignof_is_defined 1 @@ -102,7 +101,7 @@     */  #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 -# if defined __cplusplus && 201103 <= __cplusplus +# if defined __cplusplus && (201103 <= __cplusplus || defined _MSC_VER)  #  define _Alignas(a) alignas (a)  # elif (!defined __attribute__ \          && ((defined __APPLE__ && defined __MACH__ \ @@ -116,12 +115,19 @@  #  define _Alignas(a) __declspec (align (a))  # endif  #endif -#if ((defined _Alignas && ! (defined __cplusplus && 201103 <= __cplusplus)) \ +#if ((defined _Alignas \ +      && !(defined __cplusplus && (201103 <= __cplusplus || defined _MSC_VER))) \       || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__))  # define alignas _Alignas  #endif -#if defined alignas || (defined __cplusplus && 201103 <= __cplusplus) +#if (defined alignas \ +     || (defined __cplusplus && (201103 <= __cplusplus || defined _MSC_VER)))  # define __alignas_is_defined 1  #endif +/* Include <stddef.h> if needed for offsetof.  */ +#if _GL_STDALIGN_NEEDS_STDDEF +# include <stddef.h> +#endif +  #endif /* _GL_STDALIGN_H */ diff --git a/tests/stdio-read.c b/tests/stdio-read.c new file mode 100644 index 00000000..85efa0d4 --- /dev/null +++ b/tests/stdio-read.c @@ -0,0 +1,168 @@ +/* POSIX compatible FILE stream read function. +   Copyright (C) 2008-2022 Free Software Foundation, Inc. +   Written by Bruno Haible <bruno@clisp.org>, 2011. + +   This file is free software: you can redistribute it and/or modify +   it under the terms of the GNU Lesser General Public License as +   published by the Free Software Foundation; either version 2.1 of the +   License, or (at your option) any later version. + +   This file 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 Lesser General Public License for more details. + +   You should have received a copy of the GNU Lesser General Public License +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ + +#include <config.h> + +/* Specification.  */ +#include <stdio.h> + +/* Replace these functions only if module 'nonblocking' is requested.  */ +#if GNULIB_NONBLOCKING + +/* On native Windows platforms, when read() is called on a non-blocking pipe +   with an empty buffer, ReadFile() fails with error GetLastError() = +   ERROR_NO_DATA, and read() in consequence fails with error EINVAL.  This +   read() function is at the basis of the function which fills the buffer of +   a FILE stream.  */ + +# if defined _WIN32 && ! defined __CYGWIN__ + +#  include <errno.h> +#  include <io.h> + +#  define WIN32_LEAN_AND_MEAN  /* avoid including junk */ +#  include <windows.h> + +#  if GNULIB_MSVC_NOTHROW +#   include "msvc-nothrow.h" +#  else +#   include <io.h> +#  endif + +/* Don't assume that UNICODE is not defined.  */ +#  undef GetNamedPipeHandleState +#  define GetNamedPipeHandleState GetNamedPipeHandleStateA + +#  define CALL_WITH_ERRNO_FIX(RETTYPE, EXPRESSION, FAILED) \ +  if (ferror (stream))                                                        \ +    return (EXPRESSION);                                                      \ +  else                                                                        \ +    {                                                                         \ +      RETTYPE ret;                                                            \ +      SetLastError (0);                                                       \ +      ret = (EXPRESSION);                                                     \ +      if (FAILED)                                                             \ +        {                                                                     \ +          if (GetLastError () == ERROR_NO_DATA && ferror (stream))            \ +            {                                                                 \ +              int fd = fileno (stream);                                       \ +              if (fd >= 0)                                                    \ +                {                                                             \ +                  HANDLE h = (HANDLE) _get_osfhandle (fd);                    \ +                  if (GetFileType (h) == FILE_TYPE_PIPE)                      \ +                    {                                                         \ +                      /* h is a pipe or socket.  */                           \ +                      DWORD state;                                            \ +                      if (GetNamedPipeHandleState (h, &state, NULL, NULL,     \ +                                                   NULL, NULL, 0)             \ +                          && (state & PIPE_NOWAIT) != 0)                      \ +                        /* h is a pipe in non-blocking mode.                  \ +                           Change errno from EINVAL to EAGAIN.  */            \ +                        errno = EAGAIN;                                       \ +                    }                                                         \ +                }                                                             \ +            }                                                                 \ +        }                                                                     \ +      return ret;                                                             \ +    } + +/* Enable this function definition only if gnulib's <stdio.h> has prepared it. +   Otherwise we get a function definition conflict with mingw64's <stdio.h>.  */ +#  if GNULIB_SCANF +int +scanf (const char *format, ...) +{ +  int retval; +  va_list args; + +  va_start (args, format); +  retval = vfscanf (stdin, format, args); +  va_end (args); + +  return retval; +} +#  endif + +/* Enable this function definition only if gnulib's <stdio.h> has prepared it. +   Otherwise we get a function definition conflict with mingw64's <stdio.h>.  */ +#  if GNULIB_FSCANF +int +fscanf (FILE *stream, const char *format, ...) +{ +  int retval; +  va_list args; + +  va_start (args, format); +  retval = vfscanf (stream, format, args); +  va_end (args); + +  return retval; +} +#  endif + +/* Enable this function definition only if gnulib's <stdio.h> has prepared it. +   Otherwise we get a function definition conflict with mingw64's <stdio.h>.  */ +#  if GNULIB_VSCANF +int +vscanf (const char *format, va_list args) +{ +  return vfscanf (stdin, format, args); +} +#  endif + +/* Enable this function definition only if gnulib's <stdio.h> has prepared it. +   Otherwise we get a function definition conflict with mingw64's <stdio.h>.  */ +#  if GNULIB_VFSCANF +int +vfscanf (FILE *stream, const char *format, va_list args) +#undef vfscanf +{ +  CALL_WITH_ERRNO_FIX (int, vfscanf (stream, format, args), ret == EOF) +} +#  endif + +int +getchar (void) +{ +  return fgetc (stdin); +} + +int +fgetc (FILE *stream) +#undef fgetc +{ +  CALL_WITH_ERRNO_FIX (int, fgetc (stream), ret == EOF) +} + +char * +fgets (char *s, int n, FILE *stream) +#undef fgets +{ +  CALL_WITH_ERRNO_FIX (char *, fgets (s, n, stream), ret == NULL) +} + +/* We intentionally don't bother to fix gets.  */ + +size_t +fread (void *ptr, size_t s, size_t n, FILE *stream) +#undef fread +{ +  CALL_WITH_ERRNO_FIX (size_t, fread (ptr, s, n, stream), ret < n) +} + +# endif +#endif diff --git a/tests/stdio-write.c b/tests/stdio-write.c new file mode 100644 index 00000000..82facf54 --- /dev/null +++ b/tests/stdio-write.c @@ -0,0 +1,206 @@ +/* POSIX compatible FILE stream write function. +   Copyright (C) 2008-2022 Free Software Foundation, Inc. +   Written by Bruno Haible <bruno@clisp.org>, 2008. + +   This file is free software: you can redistribute it and/or modify +   it under the terms of the GNU Lesser General Public License as +   published by the Free Software Foundation; either version 2.1 of the +   License, or (at your option) any later version. + +   This file 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 Lesser General Public License for more details. + +   You should have received a copy of the GNU Lesser General Public License +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ + +#include <config.h> + +/* Specification.  */ +#include <stdio.h> + +/* Replace these functions only if module 'nonblocking' or module 'sigpipe' is +   requested.  */ +#if GNULIB_NONBLOCKING || GNULIB_SIGPIPE + +/* On native Windows platforms, SIGPIPE does not exist.  When write() is +   called on a pipe with no readers, WriteFile() fails with error +   GetLastError() = ERROR_NO_DATA, and write() in consequence fails with +   error EINVAL.  This write() function is at the basis of the function +   which flushes the buffer of a FILE stream.  */ + +# if defined _WIN32 && ! defined __CYGWIN__ + +#  include <errno.h> +#  include <signal.h> +#  include <io.h> + +#  define WIN32_LEAN_AND_MEAN  /* avoid including junk */ +#  include <windows.h> + +#  if GNULIB_MSVC_NOTHROW +#   include "msvc-nothrow.h" +#  else +#   include <io.h> +#  endif + +/* Don't assume that UNICODE is not defined.  */ +#  undef GetNamedPipeHandleState +#  define GetNamedPipeHandleState GetNamedPipeHandleStateA + +#  if GNULIB_NONBLOCKING +#   define CLEAR_ERRNO \ +      errno = 0; +#   define HANDLE_ENOSPC \ +          if (errno == ENOSPC && ferror (stream))                             \ +            {                                                                 \ +              int fd = fileno (stream);                                       \ +              if (fd >= 0)                                                    \ +                {                                                             \ +                  HANDLE h = (HANDLE) _get_osfhandle (fd);                    \ +                  if (GetFileType (h) == FILE_TYPE_PIPE)                      \ +                    {                                                         \ +                      /* h is a pipe or socket.  */                           \ +                      DWORD state;                                            \ +                      if (GetNamedPipeHandleState (h, &state, NULL, NULL,     \ +                                                   NULL, NULL, 0)             \ +                          && (state & PIPE_NOWAIT) != 0)                      \ +                        /* h is a pipe in non-blocking mode.                  \ +                           Change errno from ENOSPC to EAGAIN.  */            \ +                        errno = EAGAIN;                                       \ +                    }                                                         \ +                }                                                             \ +            }                                                                 \ +          else +#  else +#   define CLEAR_ERRNO +#   define HANDLE_ENOSPC +#  endif + +#  if GNULIB_SIGPIPE +#   define CLEAR_LastError \ +      SetLastError (0); +#   define HANDLE_ERROR_NO_DATA \ +          if (GetLastError () == ERROR_NO_DATA && ferror (stream))            \ +            {                                                                 \ +              int fd = fileno (stream);                                       \ +              if (fd >= 0                                                     \ +                  && GetFileType ((HANDLE) _get_osfhandle (fd))               \ +                     == FILE_TYPE_PIPE)                                       \ +                {                                                             \ +                  /* Try to raise signal SIGPIPE.  */                         \ +                  raise (SIGPIPE);                                            \ +                  /* If it is currently blocked or ignored, change errno from \ +                     EINVAL to EPIPE.  */                                     \ +                  errno = EPIPE;                                              \ +                }                                                             \ +            }                                                                 \ +          else +#  else +#   define CLEAR_LastError +#   define HANDLE_ERROR_NO_DATA +#  endif + +#  define CALL_WITH_SIGPIPE_EMULATION(RETTYPE, EXPRESSION, FAILED) \ +  if (ferror (stream))                                                        \ +    return (EXPRESSION);                                                      \ +  else                                                                        \ +    {                                                                         \ +      RETTYPE ret;                                                            \ +      CLEAR_ERRNO                                                             \ +      CLEAR_LastError                                                         \ +      ret = (EXPRESSION);                                                     \ +      if (FAILED)                                                             \ +        {                                                                     \ +          HANDLE_ENOSPC                                                       \ +          HANDLE_ERROR_NO_DATA                                                \ +          ;                                                                   \ +        }                                                                     \ +      return ret;                                                             \ +    } + +#  if !REPLACE_PRINTF_POSIX /* avoid collision with printf.c */ +int +printf (const char *format, ...) +{ +  int retval; +  va_list args; + +  va_start (args, format); +  retval = vfprintf (stdout, format, args); +  va_end (args); + +  return retval; +} +#  endif + +#  if !REPLACE_FPRINTF_POSIX /* avoid collision with fprintf.c */ +int +fprintf (FILE *stream, const char *format, ...) +{ +  int retval; +  va_list args; + +  va_start (args, format); +  retval = vfprintf (stream, format, args); +  va_end (args); + +  return retval; +} +#  endif + +#  if !REPLACE_VPRINTF_POSIX /* avoid collision with vprintf.c */ +int +vprintf (const char *format, va_list args) +{ +  return vfprintf (stdout, format, args); +} +#  endif + +#  if !REPLACE_VFPRINTF_POSIX /* avoid collision with vfprintf.c */ +int +vfprintf (FILE *stream, const char *format, va_list args) +#undef vfprintf +{ +  CALL_WITH_SIGPIPE_EMULATION (int, vfprintf (stream, format, args), ret == EOF) +} +#  endif + +int +putchar (int c) +{ +  return fputc (c, stdout); +} + +int +fputc (int c, FILE *stream) +#undef fputc +{ +  CALL_WITH_SIGPIPE_EMULATION (int, fputc (c, stream), ret == EOF) +} + +int +fputs (const char *string, FILE *stream) +#undef fputs +{ +  CALL_WITH_SIGPIPE_EMULATION (int, fputs (string, stream), ret == EOF) +} + +int +puts (const char *string) +#undef puts +{ +  FILE *stream = stdout; +  CALL_WITH_SIGPIPE_EMULATION (int, puts (string), ret == EOF) +} + +size_t +fwrite (const void *ptr, size_t s, size_t n, FILE *stream) +#undef fwrite +{ +  CALL_WITH_SIGPIPE_EMULATION (size_t, fwrite (ptr, s, n, stream), ret < n) +} + +# endif +#endif diff --git a/tests/strerror.c b/tests/strerror.c index 67c5216e..1019fe9e 100644 --- a/tests/strerror.c +++ b/tests/strerror.c @@ -27,7 +27,6 @@  #include "intprops.h"  #include "strerror-override.h" -#include "verify.h"  /* Use the system functions, not the gnulib overrides in this file.  */  #undef sprintf @@ -55,7 +54,7 @@ strerror (int n)    if (!msg || !*msg)      {        static char const fmt[] = "Unknown error %d"; -      verify (sizeof buf >= sizeof (fmt) + INT_STRLEN_BOUND (n)); +      static_assert (sizeof buf >= sizeof (fmt) + INT_STRLEN_BOUND (n));        sprintf (buf, fmt, n);        errno = EINVAL;        return buf; diff --git a/tests/strerror_r.c b/tests/strerror_r.c index 85a21893..b154c292 100644 --- a/tests/strerror_r.c +++ b/tests/strerror_r.c @@ -166,16 +166,19 @@ strerror_r (int errnum, char *buf, size_t buflen)  # if HAVE___XPG_STRERROR_R        ret = __xpg_strerror_r (errnum, buf, buflen); -      if (ret < 0) -        ret = errno; +      /* ret is 0 upon success, or EINVAL or ERANGE upon failure.  */  # endif        if (!*buf)          { -          /* glibc 2.13 would not touch buf on err, so we have to fall -             back to GNU strerror_r which always returns a thread-safe -             untruncated string to (partially) copy into our buf.  */ -          char *errstring = strerror_r (errnum, buf, buflen); +          /* glibc 2.13 ... 2.34 (at least) don't touch buf upon failure. +             Therefore we have to fall back to strerror_r which, for valid +             errnum, returns a thread-safe untruncated string.  For invalid +             errnum, though, it returns a truncated string, which does not +             allow us to determine whether to return ERANGE or 0.  Thus we +             need to pass a sufficiently large buffer.  */ +          char stackbuf[80]; +          char *errstring = strerror_r (errnum, stackbuf, sizeof stackbuf);            ret = errstring ? safe_copy (buf, buflen, errstring) : errno;          }      } diff --git a/tests/symlink.c b/tests/symlink.c index 51850b27..26310af7 100644 --- a/tests/symlink.c +++ b/tests/symlink.c @@ -3,7 +3,7 @@     This file is free software: you can redistribute it and/or modify     it under the terms of the GNU Lesser General Public License as -   published by the Free Software Foundation; either version 3 of the +   published by the Free Software Foundation, either version 3 of the     License, or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/sys_select.in.h b/tests/sys_select.in.h index 2bd0e0f7..860e957f 100644 --- a/tests/sys_select.in.h +++ b/tests/sys_select.in.h @@ -82,9 +82,10 @@     of 'struct timeval', and no definition of this type.     Also, Mac OS X, AIX, HP-UX, IRIX, Solaris, Interix declare select()     in <sys/time.h>. -   But avoid namespace pollution on glibc systems and "unknown type -   name" problems on Cygwin.  */ -# if !(defined __GLIBC__ || defined __CYGWIN__) +   But avoid namespace pollution on glibc systems, a circular include +   <sys/select.h> -> <sys/time.h> -> <sys/select.h> on FreeBSD 13.1, and +   "unknown type name" problems on Cygwin.  */ +# if !(defined __GLIBC__ || defined __FreeBSD__ || defined __CYGWIN__)  #  include <sys/time.h>  # endif @@ -287,7 +288,9 @@ _GL_CXXALIAS_SYS_CAST (pselect, int,                          struct timespec const *restrict,                          const sigset_t *restrict));  # endif +# if __GLIBC__ >= 2  _GL_CXXALIASWARN (pselect); +# endif  #elif defined GNULIB_POSIXCHECK  # undef pselect  # if HAVE_RAW_DECL_PSELECT diff --git a/tests/sys_socket.in.h b/tests/sys_socket.in.h index acdf7eee..637a248d 100644 --- a/tests/sys_socket.in.h +++ b/tests/sys_socket.in.h @@ -97,7 +97,6 @@ typedef unsigned char   sa_family_t;  #  endif  # endif  #else -# include <stdalign.h>  /* Code taken from glibc sysdeps/unix/sysv/linux/bits/socket.h on     2009-05-08, licensed under LGPLv2.1+, plus portability fixes. */  # define __ss_aligntype unsigned long int diff --git a/tests/sys_stat.in.h b/tests/sys_stat.in.h index 28ddd42f..0ec320f5 100644 --- a/tests/sys_stat.in.h +++ b/tests/sys_stat.in.h @@ -391,7 +391,33 @@ struct stat  #endif -#if @GNULIB_MDA_CHMOD@ +#if @GNULIB_CHMOD@ +# if @REPLACE_CHMOD@ +#  if !(defined __cplusplus && defined GNULIB_NAMESPACE) +#   undef chmod +#   define chmod rpl_chmod +#  endif +_GL_FUNCDECL_RPL (chmod, int, (const char *filename, mode_t mode) +                               _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (chmod, int, (const char *filename, mode_t mode)); +# elif defined _WIN32 && !defined __CYGWIN__ +#  if !(defined __cplusplus && defined GNULIB_NAMESPACE) +#   undef chmod +#   define chmod _chmod +#  endif +/* Need to cast, because in mingw the last argument is 'int mode'.  */ +_GL_CXXALIAS_MDA_CAST (chmod, int, (const char *filename, mode_t mode)); +# else +_GL_CXXALIAS_SYS (chmod, int, (const char *filename, mode_t mode)); +# endif +_GL_CXXALIASWARN (chmod); +#elif defined GNULIB_POSIXCHECK +# undef chmod +# if HAVE_RAW_DECL_CHMOD +_GL_WARN_ON_USE (chmod, "chmod has portability problems - " +                 "use gnulib module chmod for portability"); +# endif +#elif @GNULIB_MDA_CHMOD@  /* On native Windows, map 'chmod' to '_chmod', so that -loldnames is not     required.  In C++ with GNULIB_NAMESPACE, avoid differences between     platforms by defining GNULIB_NAMESPACE::chmod always.  */ @@ -570,44 +596,6 @@ _GL_WARN_ON_USE (lchmod, "lchmod is unportable - "  #endif -#if @GNULIB_LSTAT@ -# if ! @HAVE_LSTAT@ -/* mingw does not support symlinks, therefore it does not have lstat.  But -   without links, stat does just fine.  */ -#  if !(defined __cplusplus && defined GNULIB_NAMESPACE) -#   define lstat stat -#  endif -_GL_CXXALIAS_RPL_1 (lstat, stat, int, -                    (const char *restrict name, struct stat *restrict buf)); -# elif @REPLACE_LSTAT@ -#  if !(defined __cplusplus && defined GNULIB_NAMESPACE) -#   undef lstat -#   define lstat rpl_lstat -#  endif -_GL_FUNCDECL_RPL (lstat, int, -                  (const char *restrict name, struct stat *restrict buf) -                  _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (lstat, int, -                  (const char *restrict name, struct stat *restrict buf)); -# else -_GL_CXXALIAS_SYS (lstat, int, -                  (const char *restrict name, struct stat *restrict buf)); -# endif -# if @HAVE_LSTAT@ -_GL_CXXALIASWARN (lstat); -# endif -#elif @GNULIB_OVERRIDES_STRUCT_STAT@ -# undef lstat -# define lstat lstat_used_without_requesting_gnulib_module_lstat -#elif defined GNULIB_POSIXCHECK -# undef lstat -# if HAVE_RAW_DECL_LSTAT -_GL_WARN_ON_USE (lstat, "lstat is unportable - " -                 "use gnulib module lstat for portability"); -# endif -#endif - -  #if @GNULIB_MKDIR@  # if @REPLACE_MKDIR@  #  if !(defined __cplusplus && defined GNULIB_NAMESPACE) @@ -869,6 +857,44 @@ _GL_WARN_ON_USE (stat, "stat is unportable - "  #endif +#if @GNULIB_LSTAT@ +# if ! @HAVE_LSTAT@ +/* mingw does not support symlinks, therefore it does not have lstat.  But +   without links, stat does just fine.  */ +#  if !(defined __cplusplus && defined GNULIB_NAMESPACE) +#   define lstat stat +#  endif +_GL_CXXALIAS_RPL_1 (lstat, stat, int, +                    (const char *restrict name, struct stat *restrict buf)); +# elif @REPLACE_LSTAT@ +#  if !(defined __cplusplus && defined GNULIB_NAMESPACE) +#   undef lstat +#   define lstat rpl_lstat +#  endif +_GL_FUNCDECL_RPL (lstat, int, +                  (const char *restrict name, struct stat *restrict buf) +                  _GL_ARG_NONNULL ((1, 2))); +_GL_CXXALIAS_RPL (lstat, int, +                  (const char *restrict name, struct stat *restrict buf)); +# else +_GL_CXXALIAS_SYS (lstat, int, +                  (const char *restrict name, struct stat *restrict buf)); +# endif +# if @HAVE_LSTAT@ +_GL_CXXALIASWARN (lstat); +# endif +#elif @GNULIB_OVERRIDES_STRUCT_STAT@ +# undef lstat +# define lstat lstat_used_without_requesting_gnulib_module_lstat +#elif defined GNULIB_POSIXCHECK +# undef lstat +# if HAVE_RAW_DECL_LSTAT +_GL_WARN_ON_USE (lstat, "lstat is unportable - " +                 "use gnulib module lstat for portability"); +# endif +#endif + +  #if @GNULIB_MDA_UMASK@  /* On native Windows, map 'umask' to '_umask', so that -loldnames is not     required.  In C++ with GNULIB_NAMESPACE, avoid differences between diff --git a/tests/test-accept.c b/tests/test-accept.c index 89e6237c..234de641 100644 --- a/tests/test-accept.c +++ b/tests/test-accept.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-alloca-opt.c b/tests/test-alloca-opt.c index 21572bf0..a64ed82a 100644 --- a/tests/test-alloca-opt.c +++ b/tests/test-alloca-opt.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-arpa_inet.c b/tests/test-arpa_inet.c index 51d8b4a3..cfe4a7a2 100644 --- a/tests/test-arpa_inet.c +++ b/tests/test-arpa_inet.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-array-mergesort.c b/tests/test-array-mergesort.c index 0b55cacd..5996bc31 100644 --- a/tests/test-array-mergesort.c +++ b/tests/test-array-mergesort.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/test-assert.c b/tests/test-assert.c new file mode 100644 index 00000000..45b0c0f4 --- /dev/null +++ b/tests/test-assert.c @@ -0,0 +1,71 @@ +/* Test assert.h and static_assert. +   Copyright 2022 Free Software Foundation, Inc. + +   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/>.  */ + +/* Written by Paul Eggert.  */ + +#include <config.h> + +#define STATIC_ASSERT_TESTS \ +  static_assert (2 + 2 == 4, "arithmetic does not work"); \ +  static_assert (2 + 2 == 4); \ +  static_assert (sizeof (char) == 1, "sizeof does not work"); \ +  static_assert (sizeof (char) == 1) + +STATIC_ASSERT_TESTS; + +static char const * +assert (char const *p, int i) +{ +  return p + i; +} + +static char const * +f (char const *p) +{ +  return assert (p, 0); +} + +#include <assert.h> + +STATIC_ASSERT_TESTS; + +static int +g (void) +{ +  assert (f ("this should work")); +  return 0; +} + +#define NDEBUG 1 +#include <assert.h> + +STATIC_ASSERT_TESTS; + +static int +h (void) +{ +  assert (f ("this should work")); +  return 0; +} + +int +main (void) +{ +  STATIC_ASSERT_TESTS; +  g (); +  h (); +  return 0; +} diff --git a/tests/test-binary-io.c b/tests/test-binary-io.c index 6ad16fb7..2d71ae9c 100644 --- a/tests/test-binary-io.c +++ b/tests/test-binary-io.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-bind.c b/tests/test-bind.c index a7fc6156..17063bf7 100644 --- a/tests/test-bind.c +++ b/tests/test-bind.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-btowc.c b/tests/test-btowc.c index 5d2311c4..32806f07 100644 --- a/tests/test-btowc.c +++ b/tests/test-btowc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-btowc1.sh b/tests/test-btowc1.sh index ab4b2876..e51e1c5c 100755 --- a/tests/test-btowc1.sh +++ b/tests/test-btowc1.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no traditional french locale is installed" diff --git a/tests/test-btowc2.sh b/tests/test-btowc2.sh index d7d4d9cc..9f38f4e8 100755 --- a/tests/test-btowc2.sh +++ b/tests/test-btowc2.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no french Unicode locale is installed" diff --git a/tests/test-c-ctype.c b/tests/test-c-ctype.c index 5807502f..9870520d 100644 --- a/tests/test-c-ctype.c +++ b/tests/test-c-ctype.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-c-strcase.sh b/tests/test-c-strcase.sh index 14bdfb24..9f491e0f 100755 --- a/tests/test-c-strcase.sh +++ b/tests/test-c-strcase.sh @@ -5,14 +5,14 @@ ${CHECKER} ./test-c-strcasecmp${EXEEXT} || exit 1  ${CHECKER} ./test-c-strncasecmp${EXEEXT} || exit 1  # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR != none; then    LC_ALL=$LOCALE_FR ${CHECKER} ./test-c-strcasecmp${EXEEXT} locale || exit 1    LC_ALL=$LOCALE_FR ${CHECKER} ./test-c-strncasecmp${EXEEXT} locale || exit 1  fi  # Test in a Turkish UTF-8 locale. -: ${LOCALE_TR_UTF8=tr_TR.UTF-8} +: "${LOCALE_TR_UTF8=tr_TR.UTF-8}"  if test $LOCALE_TR_UTF8 != none; then    LC_ALL=$LOCALE_TR_UTF8 ${CHECKER} ./test-c-strcasecmp${EXEEXT} locale || exit 1    LC_ALL=$LOCALE_TR_UTF8 ${CHECKER} ./test-c-strncasecmp${EXEEXT} locale || exit 1 diff --git a/tests/test-c-strcasecmp.c b/tests/test-c-strcasecmp.c index 255d7fc4..1bb518da 100644 --- a/tests/test-c-strcasecmp.c +++ b/tests/test-c-strcasecmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-c-strncasecmp.c b/tests/test-c-strncasecmp.c index 281ced22..734eb87b 100644 --- a/tests/test-c-strncasecmp.c +++ b/tests/test-c-strncasecmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-calloc-gnu.c b/tests/test-calloc-gnu.c index ac4ddd33..4a7b7745 100644 --- a/tests/test-calloc-gnu.c +++ b/tests/test-calloc-gnu.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-cloexec.c b/tests/test-cloexec.c index 74928b4a..6069e537 100644 --- a/tests/test-cloexec.c +++ b/tests/test-cloexec.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-close.c b/tests/test-close.c index 69d7deb8..db25aab0 100644 --- a/tests/test-close.c +++ b/tests/test-close.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-connect.c b/tests/test-connect.c index 3e5b9fa0..2a93d01f 100644 --- a/tests/test-connect.c +++ b/tests/test-connect.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-ctype.c b/tests/test-ctype.c index 237d217e..93c4e32b 100644 --- a/tests/test-ctype.c +++ b/tests/test-ctype.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-dup2.c b/tests/test-dup2.c index 1041525b..e4ec1c25 100644 --- a/tests/test-dup2.c +++ b/tests/test-dup2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-environ.c b/tests/test-environ.c index ba16c20a..6242205f 100644 --- a/tests/test-environ.c +++ b/tests/test-environ.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-errno.c b/tests/test-errno.c index 8e3549ee..bbfd5da6 100644 --- a/tests/test-errno.c +++ b/tests/test-errno.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-fcntl-h.c b/tests/test-fcntl-h.c index 6fce7cc4..15019792 100644 --- a/tests/test-fcntl-h.c +++ b/tests/test-fcntl-h.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-fcntl.c b/tests/test-fcntl.c index d4889a01..77ca3479 100644 --- a/tests/test-fcntl.c +++ b/tests/test-fcntl.c @@ -3,7 +3,7 @@     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 +   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, @@ -27,7 +27,6 @@ SIGNATURE_CHECK (fcntl, int, (int, int, ...));  /* Helpers.  */  #include <errno.h>  #include <stdarg.h> -#include <stdbool.h>  #include <unistd.h>  #if defined _WIN32 && ! defined __CYGWIN__ diff --git a/tests/test-fdopen.c b/tests/test-fdopen.c index 7f52d97f..d67beedd 100644 --- a/tests/test-fdopen.c +++ b/tests/test-fdopen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-fgetc.c b/tests/test-fgetc.c index e46d57ca..2b289dc1 100644 --- a/tests/test-fgetc.c +++ b/tests/test-fgetc.c @@ -3,7 +3,7 @@     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, or (at your option) +   the Free Software Foundation, either version 3, or (at your option)     any later version.     This program is distributed in the hope that it will be useful, diff --git a/tests/test-float.c b/tests/test-float.c index 3ba6fc02..986f7da8 100644 --- a/tests/test-float.c +++ b/tests/test-float.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-fputc.c b/tests/test-fputc.c index bb20d2b7..34f4cf53 100644 --- a/tests/test-fputc.c +++ b/tests/test-fputc.c @@ -3,7 +3,7 @@     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, or (at your option) +   the Free Software Foundation, either version 3, or (at your option)     any later version.     This program is distributed in the hope that it will be useful, diff --git a/tests/test-fread.c b/tests/test-fread.c index 22c94501..e85ce052 100644 --- a/tests/test-fread.c +++ b/tests/test-fread.c @@ -3,7 +3,7 @@     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, or (at your option) +   the Free Software Foundation, either version 3, or (at your option)     any later version.     This program is distributed in the hope that it will be useful, diff --git a/tests/test-free.c b/tests/test-free.c index e88397c8..9248712b 100644 --- a/tests/test-free.c +++ b/tests/test-free.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-frexp.c b/tests/test-frexp.c index ff9df4be..db7d2079 100644 --- a/tests/test-frexp.c +++ b/tests/test-frexp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-frexp.h b/tests/test-frexp.h index 5ba53a46..cdc6ea3e 100644 --- a/tests/test-frexp.h +++ b/tests/test-frexp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-frexpl.c b/tests/test-frexpl.c index e786d0b5..d469234d 100644 --- a/tests/test-frexpl.c +++ b/tests/test-frexpl.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-fseterr.c b/tests/test-fseterr.c index a52ae461..de28326d 100644 --- a/tests/test-fseterr.c +++ b/tests/test-fseterr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-fstat.c b/tests/test-fstat.c index fbcc97d6..f2cb2137 100644 --- a/tests/test-fstat.c +++ b/tests/test-fstat.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-ftruncate.c b/tests/test-ftruncate.c index 2e93eea3..64e1152a 100644 --- a/tests/test-ftruncate.c +++ b/tests/test-ftruncate.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-fwrite.c b/tests/test-fwrite.c index af1a5bc5..d362c40b 100644 --- a/tests/test-fwrite.c +++ b/tests/test-fwrite.c @@ -3,7 +3,7 @@     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, or (at your option) +   the Free Software Foundation, either version 3, or (at your option)     any later version.     This program is distributed in the hope that it will be useful, diff --git a/tests/test-getcwd-lgpl.c b/tests/test-getcwd-lgpl.c index 20e72c67..73fad473 100644 --- a/tests/test-getcwd-lgpl.c +++ b/tests/test-getcwd-lgpl.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-getdtablesize.c b/tests/test-getdtablesize.c index 4019f15b..48164279 100644 --- a/tests/test-getdtablesize.c +++ b/tests/test-getdtablesize.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-getprogname.c b/tests/test-getprogname.c index 470046c7..8503f3c3 100644 --- a/tests/test-getprogname.c +++ b/tests/test-getprogname.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-gettimeofday.c b/tests/test-gettimeofday.c index b4bef611..47a5b58f 100644 --- a/tests/test-gettimeofday.c +++ b/tests/test-gettimeofday.c @@ -4,7 +4,7 @@   *   * 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 + * 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, diff --git a/tests/test-hard-locale.c b/tests/test-hard-locale.c index 813a6437..8570bc61 100644 --- a/tests/test-hard-locale.c +++ b/tests/test-hard-locale.c @@ -3,7 +3,7 @@     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 +   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, @@ -21,7 +21,6 @@  #include "hard-locale.h"  #include <locale.h> -#include <stdbool.h>  #include <stdio.h>  #include <string.h> diff --git a/tests/test-iconv-h.c b/tests/test-iconv-h.c index 64928e15..32bba5e8 100644 --- a/tests/test-iconv-h.c +++ b/tests/test-iconv-h.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-iconv.c b/tests/test-iconv.c index d38dfc83..c92ac8aa 100644 --- a/tests/test-iconv.c +++ b/tests/test-iconv.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-ignore-value.c b/tests/test-ignore-value.c index 70b3bcce..d35314b3 100644 --- a/tests/test-ignore-value.c +++ b/tests/test-ignore-value.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/test-inet_pton.c b/tests/test-inet_pton.c index 1b94c1f7..9ea0218f 100644 --- a/tests/test-inet_pton.c +++ b/tests/test-inet_pton.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-init.sh b/tests/test-init.sh index cf30b1b4..cac46f71 100755 --- a/tests/test-init.sh +++ b/tests/test-init.sh @@ -5,7 +5,7 @@  #  # 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 +# 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, @@ -16,7 +16,7 @@  # You should have received a copy of the GNU General Public License  # along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ -: ${srcdir=.} +: "${srcdir=.}"  . "$srcdir/init.sh"; path_prepend_ .  fail=0 diff --git a/tests/test-intprops.c b/tests/test-intprops.c index dd7e7d3f..a54d5812 100644 --- a/tests/test-intprops.c +++ b/tests/test-intprops.c @@ -3,7 +3,7 @@     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 +   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, @@ -30,10 +30,12 @@  #include <config.h> -#include "intprops.h" -#include "verify.h" +#ifdef TEST_STDCKDINT +# include <stdckdint.h> +#else +# include "intprops.h" +#endif -#include <stdbool.h>  #include <inttypes.h>  #include <limits.h> @@ -41,14 +43,17 @@  /* Compile-time verification of expression X.     In this file, we need it as a statement, rather than as a declaration.  */ -#define verify_stmt(x) do { verify (x); } while (0) +#define verify_stmt(x) do { static_assert (x); } while (0)  /* VERIFY (X) uses a static assertion for compilers that are known to work,     and falls back on a dynamic assertion for other compilers. +   But it ignores X if testing stdckdint.h.     These tests should be checkable via 'verify' rather than 'ASSERT', but     using 'verify' would run into a bug with HP-UX 11.23 cc; see     <https://lists.gnu.org/r/bug-gnulib/2011-05/msg00401.html>.  */ -#if __GNUC__ || __clang__ || __SUNPRO_C +#ifdef TEST_STDCKDINT +# define VERIFY(x) ((void) 0) +#elif __GNUC__ || __clang__ || __SUNPRO_C  # define VERIFY(x) verify_stmt (x)  #else  # define VERIFY(x) ASSERT (x) @@ -65,6 +70,7 @@ main (void)    /* Use VERIFY for tests that must be integer constant expressions,       ASSERT otherwise.  */ +#ifndef TEST_STDCKDINT    /* TYPE_IS_INTEGER.  */    ASSERT (TYPE_IS_INTEGER (bool));    ASSERT (TYPE_IS_INTEGER (char)); @@ -161,6 +167,7 @@ main (void)    VERIFY (INT_STRLEN_BOUND (int64_t) == sizeof ("-9223372036854775808") - 1);    VERIFY (INT_BUFSIZE_BOUND (int64_t) == sizeof ("-9223372036854775808"));    #endif +#endif    /* All the INT_<op>_RANGE_OVERFLOW tests are equally valid as       INT_<op>_OVERFLOW tests, so define macros to do both.  OP is the diff --git a/tests/test-inttypes.c b/tests/test-inttypes.c index 1a1a69c3..161b19c8 100644 --- a/tests/test-inttypes.c +++ b/tests/test-inttypes.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-ioctl.c b/tests/test-ioctl.c index 0779a0a1..0db59c74 100644 --- a/tests/test-ioctl.c +++ b/tests/test-ioctl.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-isblank.c b/tests/test-isblank.c index 12c8c01a..2af87f42 100644 --- a/tests/test-isblank.c +++ b/tests/test-isblank.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-isnand-nolibm.c b/tests/test-isnand-nolibm.c index 5aa9f100..6c3831c7 100644 --- a/tests/test-isnand-nolibm.c +++ b/tests/test-isnand-nolibm.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-isnand.h b/tests/test-isnand.h index 6a2c014f..ef758608 100644 --- a/tests/test-isnand.h +++ b/tests/test-isnand.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-isnanf-nolibm.c b/tests/test-isnanf-nolibm.c index b56334a5..c651a413 100644 --- a/tests/test-isnanf-nolibm.c +++ b/tests/test-isnanf-nolibm.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-isnanf.h b/tests/test-isnanf.h index 9441bb89..0855a031 100644 --- a/tests/test-isnanf.h +++ b/tests/test-isnanf.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-isnanl-nolibm.c b/tests/test-isnanl-nolibm.c index f47572de..3c3f5d7d 100644 --- a/tests/test-isnanl-nolibm.c +++ b/tests/test-isnanl-nolibm.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-isnanl.h b/tests/test-isnanl.h index a026ec97..37f986ed 100644 --- a/tests/test-isnanl.h +++ b/tests/test-isnanl.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-iswblank.c b/tests/test-iswblank.c index 6cecfff9..fe9a9a1f 100644 --- a/tests/test-iswblank.c +++ b/tests/test-iswblank.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-iswdigit.c b/tests/test-iswdigit.c index 4a42f538..ef024dc6 100644 --- a/tests/test-iswdigit.c +++ b/tests/test-iswdigit.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-iswdigit.sh b/tests/test-iswdigit.sh index 1bde6026..142a224f 100755 --- a/tests/test-iswdigit.sh +++ b/tests/test-iswdigit.sh @@ -5,7 +5,7 @@ LC_ALL=C     ${CHECKER} ./test-iswdigit${EXEEXT} 0 || exit 1  LC_ALL=POSIX ${CHECKER} ./test-iswdigit${EXEEXT} 0 || exit 1  # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR != none; then    LC_ALL=$LOCALE_FR \    ${CHECKER} ./test-iswdigit${EXEEXT} 1 \ @@ -13,7 +13,7 @@ if test $LOCALE_FR != none; then  fi  # Test whether a specific EUC-JP locale is installed. -: ${LOCALE_JA=ja_JP} +: "${LOCALE_JA=ja_JP}"  if test $LOCALE_JA != none; then    LC_ALL=$LOCALE_JA \    ${CHECKER} ./test-iswdigit${EXEEXT} 2 \ @@ -21,7 +21,7 @@ if test $LOCALE_JA != none; then  fi  # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 != none; then    LC_ALL=$LOCALE_FR_UTF8 \    ${CHECKER} ./test-iswdigit${EXEEXT} 3 \ @@ -29,7 +29,7 @@ if test $LOCALE_FR_UTF8 != none; then  fi  # Test whether a specific GB18030 locale is installed. -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}"  if test $LOCALE_ZH_CN != none; then    LC_ALL=$LOCALE_ZH_CN \    ${CHECKER} ./test-iswdigit${EXEEXT} 4 \ diff --git a/tests/test-iswxdigit.c b/tests/test-iswxdigit.c index 2e9c2651..96e578b0 100644 --- a/tests/test-iswxdigit.c +++ b/tests/test-iswxdigit.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-iswxdigit.sh b/tests/test-iswxdigit.sh index f5454388..9bdaff4a 100755 --- a/tests/test-iswxdigit.sh +++ b/tests/test-iswxdigit.sh @@ -5,7 +5,7 @@ LC_ALL=C     ${CHECKER} ./test-iswxdigit${EXEEXT} 0 || exit 1  LC_ALL=POSIX ${CHECKER} ./test-iswxdigit${EXEEXT} 0 || exit 1  # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR != none; then    LC_ALL=$LOCALE_FR \    ${CHECKER} ./test-iswxdigit${EXEEXT} 1 \ @@ -13,7 +13,7 @@ if test $LOCALE_FR != none; then  fi  # Test whether a specific EUC-JP locale is installed. -: ${LOCALE_JA=ja_JP} +: "${LOCALE_JA=ja_JP}"  if test $LOCALE_JA != none; then    LC_ALL=$LOCALE_JA \    ${CHECKER} ./test-iswxdigit${EXEEXT} 2 \ @@ -21,7 +21,7 @@ if test $LOCALE_JA != none; then  fi  # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 != none; then    LC_ALL=$LOCALE_FR_UTF8 \    ${CHECKER} ./test-iswxdigit${EXEEXT} 3 \ @@ -29,7 +29,7 @@ if test $LOCALE_FR_UTF8 != none; then  fi  # Test whether a specific GB18030 locale is installed. -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}"  if test $LOCALE_ZH_CN != none; then    LC_ALL=$LOCALE_ZH_CN \    ${CHECKER} ./test-iswxdigit${EXEEXT} 4 \ diff --git a/tests/test-langinfo.c b/tests/test-langinfo.c index 02a2bf2d..1a909b16 100644 --- a/tests/test-langinfo.c +++ b/tests/test-langinfo.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-limits-h.c b/tests/test-limits-h.c index b1b16154..ddcb5d56 100644 --- a/tests/test-limits-h.c +++ b/tests/test-limits-h.c @@ -3,7 +3,7 @@     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 +   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, @@ -20,14 +20,12 @@  #include <limits.h> -#include "verify.h" -  #if 4 < __GNUC__ + (3 <= __GNUC_MINOR__)  # pragma GCC diagnostic ignored "-Woverlength-strings"  #endif  #define verify_width(width, min, max) \ -  verify ((max) >> ((width) - 1 - ((min) < 0)) == 1) +  static_assert ((max) >> ((width) - 1 - ((min) < 0)) == 1)  /* Macros borrowed from intprops.h.  */  #define TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) @@ -53,48 +51,48 @@ verify_width (LONG_BIT, LONG_MIN, LONG_MAX);  /* Numerical limit macros.  */  char               limits1[]  = { CHAR_MIN, CHAR_MAX }; -verify (TYPE_MINIMUM (char) == CHAR_MIN); -verify (TYPE_MAXIMUM (char) == CHAR_MAX); +static_assert (TYPE_MINIMUM (char) == CHAR_MIN); +static_assert (TYPE_MAXIMUM (char) == CHAR_MAX);  signed char        limits2[]  = { SCHAR_MIN, SCHAR_MAX }; -verify (TYPE_MINIMUM (signed char) == SCHAR_MIN); -verify (TYPE_MAXIMUM (signed char) == SCHAR_MAX); +static_assert (TYPE_MINIMUM (signed char) == SCHAR_MIN); +static_assert (TYPE_MAXIMUM (signed char) == SCHAR_MAX);  unsigned char      limits3[]  = { UCHAR_MAX }; -verify (TYPE_MINIMUM (unsigned char) == 0); -verify (TYPE_MAXIMUM (unsigned char) == UCHAR_MAX); +static_assert (TYPE_MINIMUM (unsigned char) == 0); +static_assert (TYPE_MAXIMUM (unsigned char) == UCHAR_MAX);  short              limits4[]  = { SHRT_MIN, SHRT_MAX }; -verify (TYPE_MINIMUM (short int) == SHRT_MIN); -verify (TYPE_MAXIMUM (short int) == SHRT_MAX); +static_assert (TYPE_MINIMUM (short int) == SHRT_MIN); +static_assert (TYPE_MAXIMUM (short int) == SHRT_MAX);  unsigned short     limits5[]  = { USHRT_MAX }; -verify (TYPE_MINIMUM (unsigned short int) == 0); -verify (TYPE_MAXIMUM (unsigned short int) == USHRT_MAX); +static_assert (TYPE_MINIMUM (unsigned short int) == 0); +static_assert (TYPE_MAXIMUM (unsigned short int) == USHRT_MAX);  int                limits6[]  = { INT_MIN, INT_MAX }; -verify (TYPE_MINIMUM (int) == INT_MIN); -verify (TYPE_MAXIMUM (int) == INT_MAX); +static_assert (TYPE_MINIMUM (int) == INT_MIN); +static_assert (TYPE_MAXIMUM (int) == INT_MAX);  unsigned int       limits7[]  = { UINT_MAX }; -verify (TYPE_MINIMUM (unsigned int) == 0); -verify (TYPE_MAXIMUM (unsigned int) == UINT_MAX); +static_assert (TYPE_MINIMUM (unsigned int) == 0); +static_assert (TYPE_MAXIMUM (unsigned int) == UINT_MAX);  long               limits8[]  = { LONG_MIN, LONG_MAX }; -verify (TYPE_MINIMUM (long int) == LONG_MIN); -verify (TYPE_MAXIMUM (long int) == LONG_MAX); +static_assert (TYPE_MINIMUM (long int) == LONG_MIN); +static_assert (TYPE_MAXIMUM (long int) == LONG_MAX);  unsigned long      limits9[]  = { ULONG_MAX }; -verify (TYPE_MINIMUM (unsigned long int) == 0); -verify (TYPE_MAXIMUM (unsigned long int) == ULONG_MAX); +static_assert (TYPE_MINIMUM (unsigned long int) == 0); +static_assert (TYPE_MAXIMUM (unsigned long int) == ULONG_MAX);  long long          limits10[] = { LLONG_MIN, LLONG_MAX }; -verify (TYPE_MINIMUM (long long int) == LLONG_MIN); -verify (TYPE_MAXIMUM (long long int) == LLONG_MAX); +static_assert (TYPE_MINIMUM (long long int) == LLONG_MIN); +static_assert (TYPE_MAXIMUM (long long int) == LLONG_MAX);  unsigned long long limits11[] = { ULLONG_MAX }; -verify (TYPE_MINIMUM (unsigned long long int) == 0); -verify (TYPE_MAXIMUM (unsigned long long int) == ULLONG_MAX); +static_assert (TYPE_MINIMUM (unsigned long long int) == 0); +static_assert (TYPE_MAXIMUM (unsigned long long int) == ULLONG_MAX);  /* Macros specified by ISO/IEC TS 18661-1:2014.  */ @@ -113,7 +111,7 @@ verify_width (ULLONG_WIDTH, 0, ULLONG_MAX);  /* Macros specified by C2x.  */  int bool_attrs[] = { BOOL_MAX, BOOL_WIDTH }; -verify (BOOL_MAX == (((1U << (BOOL_WIDTH - 1)) - 1) * 2) + 1); +static_assert (BOOL_MAX == (((1U << (BOOL_WIDTH - 1)) - 1) * 2) + 1);  int  main (void) diff --git a/tests/test-listen.c b/tests/test-listen.c index a93ee4b7..e9d34568 100644 --- a/tests/test-listen.c +++ b/tests/test-listen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-localcharset.c b/tests/test-localcharset.c index c08e1d08..9d6f941c 100644 --- a/tests/test-localcharset.c +++ b/tests/test-localcharset.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-locale.c b/tests/test-locale.c index 097df1c3..3aad7d85 100644 --- a/tests/test-locale.c +++ b/tests/test-locale.c @@ -3,7 +3,7 @@     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 +   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, @@ -20,8 +20,6 @@  #include <locale.h> -#include "verify.h" -  int a[] =    {      LC_ALL, @@ -39,7 +37,7 @@ int ls;  /* Check that NULL can be passed through varargs as a pointer type,     per POSIX 2008.  */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *));  int  main () diff --git a/tests/test-localename.c b/tests/test-localename.c index 47f5c58f..9ba388f3 100644 --- a/tests/test-localename.c +++ b/tests/test-localename.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-lock.c b/tests/test-lock.c index 57714742..a8fb32f8 100644 --- a/tests/test-lock.c +++ b/tests/test-lock.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-lstat.c b/tests/test-lstat.c index bea9246f..c35d41cb 100644 --- a/tests/test-lstat.c +++ b/tests/test-lstat.c @@ -3,7 +3,7 @@     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 +   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, @@ -29,7 +29,6 @@ SIGNATURE_CHECK (lstat, int, (char const *, struct stat *));  #include <fcntl.h>  #include <errno.h> -#include <stdbool.h>  #include <stdio.h>  #include <stdlib.h>  #include <unistd.h> diff --git a/tests/test-lstat.h b/tests/test-lstat.h index f1545e67..3982d160 100644 --- a/tests/test-lstat.h +++ b/tests/test-lstat.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-malloc-gnu.c b/tests/test-malloc-gnu.c index cad79586..8873eb89 100644 --- a/tests/test-malloc-gnu.c +++ b/tests/test-malloc-gnu.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-malloca.c b/tests/test-malloca.c index ad446cb2..8665f465 100644 --- a/tests/test-malloca.c +++ b/tests/test-malloca.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-math.c b/tests/test-math.c index 71e1e97b..7089e8d6 100644 --- a/tests/test-math.c +++ b/tests/test-math.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-mbrtowc-w32.c b/tests/test-mbrtowc-w32.c index 188798e4..04287e98 100644 --- a/tests/test-mbrtowc-w32.c +++ b/tests/test-mbrtowc-w32.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-mbrtowc.c b/tests/test-mbrtowc.c index 692feae3..0e86bd49 100644 --- a/tests/test-mbrtowc.c +++ b/tests/test-mbrtowc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-mbrtowc1.sh b/tests/test-mbrtowc1.sh index 00b108bc..2b6eaf99 100755 --- a/tests/test-mbrtowc1.sh +++ b/tests/test-mbrtowc1.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no traditional french locale is installed" diff --git a/tests/test-mbrtowc2.sh b/tests/test-mbrtowc2.sh index 5036930e..6868e863 100755 --- a/tests/test-mbrtowc2.sh +++ b/tests/test-mbrtowc2.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no french Unicode locale is installed" diff --git a/tests/test-mbrtowc3.sh b/tests/test-mbrtowc3.sh index 2773fa7b..eca8d648 100755 --- a/tests/test-mbrtowc3.sh +++ b/tests/test-mbrtowc3.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a specific EUC-JP locale is installed. -: ${LOCALE_JA=ja_JP} +: "${LOCALE_JA=ja_JP}"  if test $LOCALE_JA = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no traditional japanese locale is installed" diff --git a/tests/test-mbrtowc4.sh b/tests/test-mbrtowc4.sh index 92f641c8..7da23a3c 100755 --- a/tests/test-mbrtowc4.sh +++ b/tests/test-mbrtowc4.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a specific GB18030 locale is installed. -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}"  if test $LOCALE_ZH_CN = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no transitional chinese locale is installed" diff --git a/tests/test-mbsinit.c b/tests/test-mbsinit.c index 8129ff3f..699701eb 100644 --- a/tests/test-mbsinit.c +++ b/tests/test-mbsinit.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-mbsinit.sh b/tests/test-mbsinit.sh index 7308714c..25d4b2e4 100755 --- a/tests/test-mbsinit.sh +++ b/tests/test-mbsinit.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no french Unicode locale is installed" diff --git a/tests/test-memchr.c b/tests/test-memchr.c index 84f52abf..8a2d3de4 100644 --- a/tests/test-memchr.c +++ b/tests/test-memchr.c @@ -4,7 +4,7 @@   *   * 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 + * 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, diff --git a/tests/test-nanosleep.c b/tests/test-nanosleep.c index c03a2c2c..c2081615 100644 --- a/tests/test-nanosleep.c +++ b/tests/test-nanosleep.c @@ -3,7 +3,7 @@     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 +   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, @@ -43,16 +43,27 @@ main (void)  {    struct timespec ts; +  /* Check that negative nanosecond values cause failure.  */ +  ts.tv_sec = 1; +  ts.tv_nsec = -1; +  errno = 0; +  ASSERT (nanosleep (&ts, NULL) == -1); +  ASSERT (errno == EINVAL); +    ts.tv_sec = 1000;    ts.tv_nsec = -1;    errno = 0;    ASSERT (nanosleep (&ts, NULL) == -1);    ASSERT (errno == EINVAL); + +  /* Check that too large nanosecond values cause failure.  */ +  ts.tv_sec = 1000;    ts.tv_nsec = 1000000000;    errno = 0;    ASSERT (nanosleep (&ts, NULL) == -1);    ASSERT (errno == EINVAL); +  /* Check successful call.  */    ts.tv_sec = 0;    ts.tv_nsec = 1;    ASSERT (nanosleep (&ts, &ts) == 0); diff --git a/tests/test-netinet_in.c b/tests/test-netinet_in.c index b6b8a217..3bc110e5 100644 --- a/tests/test-netinet_in.c +++ b/tests/test-netinet_in.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-once.c b/tests/test-once.c index ddf6801b..5efe7c4a 100644 --- a/tests/test-once.c +++ b/tests/test-once.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-open.c b/tests/test-open.c index 2f7da0e5..d7c5a086 100644 --- a/tests/test-open.c +++ b/tests/test-open.c @@ -3,7 +3,7 @@     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 +   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, @@ -24,7 +24,6 @@  SIGNATURE_CHECK (open, int, (char const *, int, ...));  #include <errno.h> -#include <stdbool.h>  #include <stdio.h>  #include <unistd.h> diff --git a/tests/test-open.h b/tests/test-open.h index b8163ca7..0da20a17 100644 --- a/tests/test-open.h +++ b/tests/test-open.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-pathmax.c b/tests/test-pathmax.c index 85f7e48c..5f1f9cc2 100644 --- a/tests/test-pathmax.c +++ b/tests/test-pathmax.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-perror.c b/tests/test-perror.c index 97fc32b9..e1ab3d6b 100644 --- a/tests/test-perror.c +++ b/tests/test-perror.c @@ -3,7 +3,7 @@     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, or (at your option) +   the Free Software Foundation, either version 3, or (at your option)     any later version.     This program is distributed in the hope that it will be useful, diff --git a/tests/test-perror.sh b/tests/test-perror.sh index e776609a..e6244413 100755 --- a/tests/test-perror.sh +++ b/tests/test-perror.sh @@ -1,5 +1,5 @@  #!/bin/sh -: ${srcdir=.} +: "${srcdir=.}"  . "$srcdir/init.sh"; path_prepend_ .  # Test NULL prefix. Result should not contain a number, except in lines that diff --git a/tests/test-perror2.c b/tests/test-perror2.c index aceaf34e..f1eb5110 100644 --- a/tests/test-perror2.c +++ b/tests/test-perror2.c @@ -3,7 +3,7 @@     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, or (at your option) +   the Free Software Foundation, either version 3, or (at your option)     any later version.     This program is distributed in the hope that it will be useful, diff --git a/tests/test-pipe.c b/tests/test-pipe.c index 05311592..0525f7d4 100644 --- a/tests/test-pipe.c +++ b/tests/test-pipe.c @@ -3,7 +3,7 @@     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, or (at your option) +   the Free Software Foundation, either version 3, or (at your option)     any later version.     This program is distributed in the hope that it will be useful, @@ -22,7 +22,6 @@  SIGNATURE_CHECK (pipe, int, (int[2]));  #include <fcntl.h> -#include <stdbool.h>  #if defined _WIN32 && ! defined __CYGWIN__  /* Get declarations of the native Windows API functions.  */ diff --git a/tests/test-printf-frexp.c b/tests/test-printf-frexp.c index e02c777c..01b34a51 100644 --- a/tests/test-printf-frexp.c +++ b/tests/test-printf-frexp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-printf-frexpl.c b/tests/test-printf-frexpl.c index 8a0d094e..bc30fd1b 100644 --- a/tests/test-printf-frexpl.c +++ b/tests/test-printf-frexpl.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-pselect.c b/tests/test-pselect.c new file mode 100644 index 00000000..898578be --- /dev/null +++ b/tests/test-pselect.c @@ -0,0 +1,48 @@ +/* Test of pselect() substitute. +   Copyright (C) 2011-2022 Free Software Foundation, Inc. + +   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/>.  */ + +#include <config.h> + +#include <sys/select.h> + +#include "signature.h" + +SIGNATURE_CHECK (pselect, int, +                 (int, fd_set *restrict, fd_set *restrict, fd_set *restrict, +                  struct timespec const *restrict, const sigset_t *restrict)); + +#include "test-select.h" + +static int +my_select (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, +           struct timeval *timeout) +{ +  struct timespec ts; +  struct timespec *pts = NULL; +  if (timeout) +    { +      ts.tv_sec = timeout->tv_sec; +      ts.tv_nsec = timeout->tv_usec * 1000; +      pts = &ts; +    } +  return pselect (nfds, readfds, writefds, exceptfds, pts, NULL); +} + +int +main (void) +{ +  return test_function (my_select); +} diff --git a/tests/test-pthread-thread.c b/tests/test-pthread-thread.c index f52fb7ba..3c08084d 100644 --- a/tests/test-pthread-thread.c +++ b/tests/test-pthread-thread.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-pthread.c b/tests/test-pthread.c index d4c9728e..2fef5924 100644 --- a/tests/test-pthread.c +++ b/tests/test-pthread.c @@ -3,7 +3,7 @@     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 +   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, @@ -20,8 +20,6 @@  #include <pthread.h> -#include "verify.h" -  /* Check that the types are all defined.  */  pthread_t t1; diff --git a/tests/test-pthread_sigmask1.c b/tests/test-pthread_sigmask1.c index 79a3ea06..a7816b5e 100644 --- a/tests/test-pthread_sigmask1.c +++ b/tests/test-pthread_sigmask1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-pthread_sigmask2.c b/tests/test-pthread_sigmask2.c index 585c1aa8..20349fe0 100644 --- a/tests/test-pthread_sigmask2.c +++ b/tests/test-pthread_sigmask2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-raise.c b/tests/test-raise.c index f2def1ed..b1a3c8a4 100644 --- a/tests/test-raise.c +++ b/tests/test-raise.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-realloc-gnu.c b/tests/test-realloc-gnu.c index d662d0c6..c3bca67a 100644 --- a/tests/test-realloc-gnu.c +++ b/tests/test-realloc-gnu.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-reallocarray.c b/tests/test-reallocarray.c index e7c4bcd4..b830361d 100644 --- a/tests/test-reallocarray.c +++ b/tests/test-reallocarray.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-rwlock1.c b/tests/test-rwlock1.c index aebb530c..a9c0aa53 100644 --- a/tests/test-rwlock1.c +++ b/tests/test-rwlock1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sched.c b/tests/test-sched.c index f66a531d..1326815b 100644 --- a/tests/test-sched.c +++ b/tests/test-sched.c @@ -3,7 +3,7 @@     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 +   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, @@ -29,7 +29,7 @@ int b[] = { SCHED_FIFO, SCHED_RR, SCHED_OTHER };  /* Check that the types are all defined.  */  pid_t t1; -static int f1; +int f1;  int  main () diff --git a/tests/test-select-fd.c b/tests/test-select-fd.c index 46e95fd4..90699867 100644 --- a/tests/test-select-fd.c +++ b/tests/test-select-fd.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-select-stdin.c b/tests/test-select-stdin.c index 9ddc6abf..bf7e82b3 100644 --- a/tests/test-select-stdin.c +++ b/tests/test-select-stdin.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-select.c b/tests/test-select.c index f28281ca..7cca5517 100644 --- a/tests/test-select.c +++ b/tests/test-select.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-select.h b/tests/test-select.h index 5e1ff22f..86a79ad8 100644 --- a/tests/test-select.h +++ b/tests/test-select.h @@ -3,7 +3,7 @@     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 +   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, @@ -24,7 +24,6 @@  #include <unistd.h>  #include <fcntl.h>  #include <stdlib.h> -#include <stdbool.h>  #include <sys/ioctl.h>  #include <errno.h> diff --git a/tests/test-setenv.c b/tests/test-setenv.c index 68a06eeb..2362c2e1 100644 --- a/tests/test-setenv.c +++ b/tests/test-setenv.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-setlocale1.c b/tests/test-setlocale1.c index 91446117..6e50e657 100644 --- a/tests/test-setlocale1.c +++ b/tests/test-setlocale1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-setlocale1.sh b/tests/test-setlocale1.sh index 53ad09f9..3c187f5d 100755 --- a/tests/test-setlocale1.sh +++ b/tests/test-setlocale1.sh @@ -1,9 +1,9 @@  #!/bin/sh -: ${LOCALE_FR=fr_FR} -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} -: ${LOCALE_JA=ja_JP} -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_FR=fr_FR}" +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" +: "${LOCALE_JA=ja_JP}" +: "${LOCALE_ZH_CN=zh_CN.GB18030}"  if test $LOCALE_FR = none && test $LOCALE_FR_UTF8 = none \     && test $LOCALE_JA = none && test $LOCALE_ZH_CN = none; then diff --git a/tests/test-setlocale2.c b/tests/test-setlocale2.c index d5b39333..905c1939 100644 --- a/tests/test-setlocale2.c +++ b/tests/test-setlocale2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-setlocale_null-mt-all.c b/tests/test-setlocale_null-mt-all.c index 51d16c55..2739f111 100644 --- a/tests/test-setlocale_null-mt-all.c +++ b/tests/test-setlocale_null-mt-all.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-setlocale_null-mt-one.c b/tests/test-setlocale_null-mt-one.c index 5b34a141..9320efd6 100644 --- a/tests/test-setlocale_null-mt-one.c +++ b/tests/test-setlocale_null-mt-one.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-setlocale_null.c b/tests/test-setlocale_null.c index 92447c25..9b8a663a 100644 --- a/tests/test-setlocale_null.c +++ b/tests/test-setlocale_null.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-setsockopt.c b/tests/test-setsockopt.c index acf9a7eb..03376848 100644 --- a/tests/test-setsockopt.c +++ b/tests/test-setsockopt.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sigaction.c b/tests/test-sigaction.c deleted file mode 100644 index ab5924de..00000000 --- a/tests/test-sigaction.c +++ /dev/null @@ -1,122 +0,0 @@ -/* Test of sigaction() function. -   Copyright (C) 2008-2022 Free Software Foundation, Inc. - -   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/>.  */ - -/* Written by Eric Blake <ebb9@byu.net>, 2008.  */ - -#include <config.h> - -#include <signal.h> - -#include "signature.h" -SIGNATURE_CHECK (sigaction, int, (int, struct sigaction const *, -                                  struct sigaction *)); - -#include <stddef.h> - -#include "macros.h" - -#ifndef SA_NOCLDSTOP -# define SA_NOCLDSTOP 0 -#endif -#ifndef SA_ONSTACK -# define SA_ONSTACK 0 -#endif -#ifndef SA_RESETHAND -# define SA_RESETHAND 0 -#endif -#ifndef SA_RESTART -# define SA_RESTART 0 -#endif -#ifndef SA_SIGINFO -# define SA_SIGINFO 0 -#endif -#ifndef SA_NOCLDWAIT -# define SA_NOCLDWAIT 0 -#endif - -/* Define a mask of flags required by POSIX.  Some implementations -   provide other flags as extensions, such as SA_RESTORER, that we -   must ignore in this test.  */ -#define MASK_SA_FLAGS (SA_NOCLDSTOP | SA_ONSTACK | SA_RESETHAND | SA_RESTART \ -                       | SA_SIGINFO | SA_NOCLDWAIT | SA_NODEFER) - -/* This test is unsafe in the presence of an asynchronous SIGABRT, -   because we install a signal-handler that is intentionally not -   async-safe.  Hopefully, this does not lead to too many reports of -   false failures, since people don't generally use 'kill -s SIGABRT' -   to end a runaway program.  */ - -static void -handler (int sig) -{ -  static int entry_count; -  struct sigaction sa; -  ASSERT (sig == SIGABRT); -  ASSERT (sigaction (SIGABRT, NULL, &sa) == 0); -  ASSERT ((sa.sa_flags & SA_SIGINFO) == 0); -  switch (entry_count++) -    { -    case 0: -      ASSERT ((sa.sa_flags & SA_RESETHAND) == 0); -      ASSERT (sa.sa_handler == handler); -      break; -    case 1: -      /* This assertion fails on glibc-2.3.6 systems with LinuxThreads, -         when this program is linked with -lpthread, due to the sigaction() -         override in libpthread.so.  */ -#if !(defined __GLIBC__ || defined __UCLIBC__) -      ASSERT (sa.sa_handler == SIG_DFL); -#endif -      break; -    default: -      ASSERT (0); -    } -} - -int -main (void) -{ -  struct sigaction sa; -  struct sigaction old_sa; -  sa.sa_handler = handler; - -  sa.sa_flags = 0; -  ASSERT (sigemptyset (&sa.sa_mask) == 0); -  ASSERT (sigaction (SIGABRT, &sa, NULL) == 0); -  ASSERT (raise (SIGABRT) == 0); - -  sa.sa_flags = SA_RESETHAND | SA_NODEFER; -  ASSERT (sigaction (SIGABRT, &sa, &old_sa) == 0); -  ASSERT ((old_sa.sa_flags & MASK_SA_FLAGS) == 0); -  ASSERT (old_sa.sa_handler == handler); -  ASSERT (raise (SIGABRT) == 0); - -  sa.sa_handler = SIG_DFL; -  ASSERT (sigaction (SIGABRT, &sa, &old_sa) == 0); -  ASSERT ((old_sa.sa_flags & SA_SIGINFO) == 0); -#if !(defined __GLIBC__ || defined __UCLIBC__) /* see above */ -  ASSERT (old_sa.sa_handler == SIG_DFL); -#endif - -  sa.sa_handler = SIG_IGN; -  ASSERT (sigaction (SIGABRT, &sa, NULL) == 0); -  ASSERT (raise (SIGABRT) == 0); -  ASSERT (sigaction (SIGABRT, NULL, &old_sa) == 0); -  ASSERT (old_sa.sa_handler == SIG_IGN); -  ASSERT (raise (SIGABRT) == 0); - -  return 0; -} diff --git a/tests/test-signal-h.c b/tests/test-signal-h.c index 8c2dd0f0..06c97274 100644 --- a/tests/test-signal-h.c +++ b/tests/test-signal-h.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-signbit.c b/tests/test-signbit.c index 3ea3a8fc..d1305ce0 100644 --- a/tests/test-signbit.c +++ b/tests/test-signbit.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sigprocmask.c b/tests/test-sigprocmask.c index b4861188..4bab4c1c 100644 --- a/tests/test-sigprocmask.c +++ b/tests/test-sigprocmask.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sleep.c b/tests/test-sleep.c index 0b759913..37af3525 100644 --- a/tests/test-sleep.c +++ b/tests/test-sleep.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sockets.c b/tests/test-sockets.c index e2e16c58..714da6c0 100644 --- a/tests/test-sockets.c +++ b/tests/test-sockets.c @@ -4,7 +4,7 @@   *   * 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 + * 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, diff --git a/tests/test-stat-time.c b/tests/test-stat-time.c index 482c08a1..7e961f2f 100644 --- a/tests/test-stat-time.c +++ b/tests/test-stat-time.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-stat.c b/tests/test-stat.c index edee1c0d..c8a4b984 100644 --- a/tests/test-stat.c +++ b/tests/test-stat.c @@ -3,7 +3,7 @@     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 +   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, @@ -29,7 +29,6 @@ SIGNATURE_CHECK (stat, int, (char const *, struct stat *));  #include <fcntl.h>  #include <errno.h> -#include <stdbool.h>  #include <stdlib.h>  #include <stdio.h>  #include <unistd.h> diff --git a/tests/test-stat.h b/tests/test-stat.h index b1161dfb..82f88970 100644 --- a/tests/test-stat.h +++ b/tests/test-stat.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-stdalign.c b/tests/test-stdalign.c index a18f8bc4..a9355545 100644 --- a/tests/test-stdalign.c +++ b/tests/test-stdalign.c @@ -3,7 +3,7 @@     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 +   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, @@ -18,13 +18,9 @@  #include <config.h> -#include <stdalign.h> -  #include <stddef.h>  #include <stdint.h> -#include "verify.h" -  #include "macros.h"  typedef long double longdouble; @@ -33,32 +29,21 @@ typedef struct { char a[2]; } struct2;  typedef struct { char a[3]; } struct3;  typedef struct { char a[4]; } struct4; -verify (__alignof_is_defined == 1); -#ifndef alignof -# error "alignof is not a macro" -#endif - -#if __alignas_is_defined -verify (__alignas_is_defined == 1); -# ifndef alignas -#  error "alignas is not a macro" -# endif +#if (202311 <= __STDC_VERSION__ || __alignas_is_defined \ +     || 201103 <= __cplusplus)  /* mingw can go up only to 8.  8 is all that GNU Emacs needs, so let's     limit the test to 8 for now.  */  # define TEST_ALIGNMENT 8  #else -# define _Alignas(alignment)  # define alignas(alignment)  # define TEST_ALIGNMENT 1  #endif  #define CHECK_STATIC(type) \    typedef struct { char slot1; type slot2; } type##_helper; \ -  verify (alignof (type) == offsetof (type##_helper, slot2)); \ -  verify (_Alignof (type) == alignof (type)); \ +  static_assert (alignof (type) == offsetof (type##_helper, slot2)); \    const int type##_alignment = alignof (type); \ -  type alignas (TEST_ALIGNMENT) static_##type##_alignas; \ -  type _Alignas (TEST_ALIGNMENT) static_##type##_Alignas +  type alignas (TEST_ALIGNMENT) static_##type##_alignas  #define CHECK_ALIGNED(var) ASSERT ((uintptr_t) &(var) % TEST_ALIGNMENT == 0) @@ -96,31 +81,19 @@ main ()    return 77;  #else    CHECK_ALIGNED (static_char_alignas); -  CHECK_ALIGNED (static_char_Alignas);    CHECK_ALIGNED (static_short_alignas); -  CHECK_ALIGNED (static_short_Alignas);    CHECK_ALIGNED (static_int_alignas); -  CHECK_ALIGNED (static_int_Alignas);    CHECK_ALIGNED (static_long_alignas); -  CHECK_ALIGNED (static_long_Alignas);  # ifdef INT64_MAX    CHECK_ALIGNED (static_int64_t_alignas); -  CHECK_ALIGNED (static_int64_t_Alignas);  # endif    CHECK_ALIGNED (static_float_alignas); -  CHECK_ALIGNED (static_float_Alignas);    CHECK_ALIGNED (static_double_alignas); -  CHECK_ALIGNED (static_double_Alignas);    /* CHECK_ALIGNED (static_longdouble_alignas); */ -  /* CHECK_ALIGNED (static_longdouble_Alignas); */    CHECK_ALIGNED (static_struct1_alignas); -  CHECK_ALIGNED (static_struct1_Alignas);    CHECK_ALIGNED (static_struct2_alignas); -  CHECK_ALIGNED (static_struct2_Alignas);    CHECK_ALIGNED (static_struct3_alignas); -  CHECK_ALIGNED (static_struct3_Alignas);    CHECK_ALIGNED (static_struct4_alignas); -  CHECK_ALIGNED (static_struct4_Alignas);    return 0;  #endif  } diff --git a/tests/test-stdbool.c b/tests/test-stdbool.c index ecc3c66a..923a2cd3 100644 --- a/tests/test-stdbool.c +++ b/tests/test-stdbool.c @@ -1,9 +1,9 @@ -/* Test of <stdbool.h> substitute. +/* Test bool.     Copyright (C) 2002-2007, 2009-2022 Free Software Foundation, Inc.     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 +   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, @@ -33,37 +33,34 @@  #include <config.h> -#include <stdbool.h> - -#ifndef bool - "error: bool is not defined" -#endif -#ifndef false - "error: false is not defined" +#ifdef TEST_STDBOOL_H +# include <stdbool.h>  #endif +  #if false   "error: false is not 0"  #endif -#ifndef true - "error: true is not defined" -#endif  #if true != 1   "error: true is not 1"  #endif -#ifndef __bool_true_false_are_defined - "error: __bool_true_false_are_defined is not defined" -#endif  /* Several tests cannot be guaranteed with gnulib's <stdbool.h>, at     least, not for all compilers and compiler options.  */ -#if HAVE_STDBOOL_H || 3 <= __GNUC__ || 4 <= __clang_major__ -struct s { _Bool s: 1; _Bool t; } s; +#if ((HAVE_C_BOOL || defined __cplusplus \ +      || HAVE_STDBOOL_H || 3 <= __GNUC__ || 4 <= __clang_major__) \ +     && !defined _MSC_VER) +# define WORKING_BOOL 1 +#else +# define WORKING_BOOL 0 +#endif + +#if WORKING_BOOL +struct s { bool s: 1; bool t; } s;  #endif  char a[true == 1 ? 1 : -1];  char b[false == 0 ? 1 : -1]; -char c[__bool_true_false_are_defined == 1 ? 1 : -1]; -#if HAVE_STDBOOL_H || 3 <= __GNUC__ || 4 <= __clang_major__ /* See above.  */ +#if WORKING_BOOL  char d[(bool) 0.5 == true ? 1 : -1];  # ifdef ADDRESS_CHECK_OKAY /* Avoid gcc warning.  */  /* C99 may plausibly be interpreted as not requiring support for a cast from @@ -73,30 +70,30 @@ char d[(bool) 0.5 == true ? 1 : -1];  bool e = &s;  #  endif  # endif -char f[(_Bool) 0.0 == false ? 1 : -1]; +char f[(bool) 0.0 == false ? 1 : -1];  #endif  char g[true]; -char h[sizeof (_Bool)]; -#if HAVE_STDBOOL_H || 3 <= __GNUC__ || 4 <= __clang_major__ /* See above.  */ +char h[sizeof (bool)]; +#if WORKING_BOOL  char i[sizeof s.t];  #endif  enum { j = false, k = true, l = false * true, m = true * 256 }; -_Bool n[m]; +bool n[m];  char o[sizeof n == m * sizeof n[0] ? 1 : -1]; -char p[-1 - (_Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; +char p[-1 - (bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1];  /* Catch a bug in an HP-UX C compiler.  See     https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html     https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html   */ -_Bool q = true; -_Bool *pq = &q; +bool q = true; +bool *pq = &q;  int  main ()  {    int error = 0; -#if HAVE_STDBOOL_H || 3 <= __GNUC_ || 4 <= __clang_major___ /* See above.  */ +#if WORKING_BOOL  # ifdef ADDRESS_CHECK_OKAY /* Avoid gcc warning.  */    /* A cast from a variable's address to bool is valid in expressions.  */    { diff --git a/tests/test-stdckdint.c b/tests/test-stdckdint.c new file mode 100644 index 00000000..c1952551 --- /dev/null +++ b/tests/test-stdckdint.c @@ -0,0 +1,30 @@ +/* Test <stdckdint.h>. +   Copyright 2022 Free Software Foundation, Inc. + +   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/>.  */ + +/* Written by Paul Eggert.  */ + +/* Tell test-intprops.c to test <stdckdint.h> instead of <intprops.h>.  */ + +#define TEST_STDCKDINT 1 + +#define INT_ADD_WRAPV(a, b, r) ckd_add (r, a, b) +#define INT_SUBTRACT_WRAPV(a, b, r) ckd_sub (r, a, b) +#define INT_MULTIPLY_WRAPV(a, b, r) ckd_mul (r, a, b) + +/* Luckily, test-intprops.c uses INT_NEGATE_OVERFLOW only on INT_MIN.  */ +#define INT_NEGATE_OVERFLOW(a) ((a) < -INT_MAX) + +#include "test-intprops.c" diff --git a/tests/test-stddef.c b/tests/test-stddef.c index 40aca292..470c7a6b 100644 --- a/tests/test-stddef.c +++ b/tests/test-stddef.c @@ -3,7 +3,7 @@     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 +   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, @@ -21,7 +21,6 @@  #include <stddef.h>  #include <limits.h>  #include <stdalign.h> -#include "verify.h"  /* Check that appropriate types are defined.  */  wchar_t a = 'c'; @@ -31,7 +30,7 @@ max_align_t x;  /* Check that NULL can be passed through varargs as a pointer type,     per POSIX 2008.  */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *));  /* Check that offsetof produces integer constants with correct type.  */  struct d @@ -42,32 +41,32 @@ struct d  /* Solaris 10 has a bug where offsetof is under-parenthesized, and     cannot be used as an arbitrary expression.  However, since it is     unlikely to bite real code, we ignore that short-coming.  */ -/* verify (sizeof offsetof (struct d, e) == sizeof (size_t)); */ -verify (sizeof (offsetof (struct d, e)) == sizeof (size_t)); -verify (offsetof (struct d, f) == 1); +/* static_assert (sizeof offsetof (struct d, e) == sizeof (size_t)); */ +static_assert (sizeof (offsetof (struct d, e)) == sizeof (size_t)); +static_assert (offsetof (struct d, f) == 1);  /* offsetof promotes to an unsigned integer if and only if sizes do     not fit in int.  */ -verify ((offsetof (struct d, e) < -1) == (INT_MAX < (size_t) -1)); +static_assert ((offsetof (struct d, e) < -1) == (INT_MAX < (size_t) -1));  /* Check max_align_t's alignment.  */ -verify (alignof (double) <= alignof (max_align_t)); -verify (alignof (int) <= alignof (max_align_t)); -verify (alignof (long double) <= alignof (max_align_t)); -verify (alignof (long int) <= alignof (max_align_t)); -verify (alignof (ptrdiff_t) <= alignof (max_align_t)); -verify (alignof (size_t) <= alignof (max_align_t)); -verify (alignof (wchar_t) <= alignof (max_align_t)); -verify (alignof (struct d) <= alignof (max_align_t)); +static_assert (alignof (double) <= alignof (max_align_t)); +static_assert (alignof (int) <= alignof (max_align_t)); +static_assert (alignof (long double) <= alignof (max_align_t)); +static_assert (alignof (long int) <= alignof (max_align_t)); +static_assert (alignof (ptrdiff_t) <= alignof (max_align_t)); +static_assert (alignof (size_t) <= alignof (max_align_t)); +static_assert (alignof (wchar_t) <= alignof (max_align_t)); +static_assert (alignof (struct d) <= alignof (max_align_t));  #if defined __GNUC__ || defined __clang__ || defined __IBM__ALIGNOF__ -verify (__alignof__ (double) <= __alignof__ (max_align_t)); -verify (__alignof__ (int) <= __alignof__ (max_align_t)); -verify (__alignof__ (long double) <= __alignof__ (max_align_t)); -verify (__alignof__ (long int) <= __alignof__ (max_align_t)); -verify (__alignof__ (ptrdiff_t) <= __alignof__ (max_align_t)); -verify (__alignof__ (size_t) <= __alignof__ (max_align_t)); -verify (__alignof__ (wchar_t) <= __alignof__ (max_align_t)); -verify (__alignof__ (struct d) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (double) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (int) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (long double) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (long int) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (ptrdiff_t) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (size_t) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (wchar_t) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (struct d) <= __alignof__ (max_align_t));  #endif  int diff --git a/tests/test-stdint.c b/tests/test-stdint.c index fc5a7e93..7d71f687 100644 --- a/tests/test-stdint.c +++ b/tests/test-stdint.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-stdio.c b/tests/test-stdio.c index 7db0fd0b..1908da35 100644 --- a/tests/test-stdio.c +++ b/tests/test-stdio.c @@ -3,7 +3,7 @@     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 +   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, @@ -20,14 +20,12 @@  #include <stdio.h> -#include "verify.h" -  /* Check that the various SEEK_* macros are defined.  */  int sk[] = { SEEK_CUR, SEEK_END, SEEK_SET };  /* Check that NULL can be passed through varargs as a pointer type,     per POSIX 2008.  */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *));  /* Check that the types are all defined.  */  fpos_t t1; diff --git a/tests/test-stdlib.c b/tests/test-stdlib.c index aeea3838..4fdafc99 100644 --- a/tests/test-stdlib.c +++ b/tests/test-stdlib.c @@ -3,7 +3,7 @@     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 +   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, @@ -20,8 +20,6 @@  #include <stdlib.h> -#include "verify.h" -  /* Check that EXIT_SUCCESS is 0, per POSIX.  */  static int exitcode = EXIT_SUCCESS;  #if EXIT_SUCCESS @@ -36,7 +34,7 @@ static int exitcode = EXIT_SUCCESS;  /* Check that NULL can be passed through varargs as a pointer type,     per POSIX 2008.  */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *));  #if GNULIB_TEST_SYSTEM_POSIX  # include "test-sys_wait.h" diff --git a/tests/test-strerror.c b/tests/test-strerror.c index e654c57d..b9ec040a 100644 --- a/tests/test-strerror.c +++ b/tests/test-strerror.c @@ -3,7 +3,7 @@     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, or (at your option) +   the Free Software Foundation, either version 3, or (at your option)     any later version.     This program is distributed in the hope that it will be useful, diff --git a/tests/test-strerror_r.c b/tests/test-strerror_r.c index b0e93c94..916ce3fc 100644 --- a/tests/test-strerror_r.c +++ b/tests/test-strerror_r.c @@ -3,7 +3,7 @@     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, or (at your option) +   the Free Software Foundation, either version 3, or (at your option)     any later version.     This program is distributed in the hope that it will be useful, diff --git a/tests/test-striconveh.c b/tests/test-striconveh.c index 781aa525..15627f3d 100644 --- a/tests/test-striconveh.c +++ b/tests/test-striconveh.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-striconveha.c b/tests/test-striconveha.c index dcc4c266..6f6e8843 100644 --- a/tests/test-striconveha.c +++ b/tests/test-striconveha.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-string.c b/tests/test-string.c index 6705f036..94688726 100644 --- a/tests/test-string.c +++ b/tests/test-string.c @@ -3,7 +3,7 @@     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 +   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, @@ -20,11 +20,9 @@  #include <string.h> -#include "verify.h" -  /* Check that NULL can be passed through varargs as a pointer type,     per POSIX 2008.  */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *));  int  main (void) diff --git a/tests/test-strncat.c b/tests/test-strncat.c index c3820e83..c25890cb 100644 --- a/tests/test-strncat.c +++ b/tests/test-strncat.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-strstr.c b/tests/test-strstr.c index 046439ba..f59dda67 100644 --- a/tests/test-strstr.c +++ b/tests/test-strstr.c @@ -4,7 +4,7 @@   *   * 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 + * 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, diff --git a/tests/test-symlink.c b/tests/test-symlink.c index 4333f80a..3dbd60a0 100644 --- a/tests/test-symlink.c +++ b/tests/test-symlink.c @@ -3,7 +3,7 @@     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 +   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, @@ -25,7 +25,6 @@ SIGNATURE_CHECK (symlink, int, (char const *, char const *));  #include <fcntl.h>  #include <errno.h> -#include <stdbool.h>  #include <stdio.h>  #include <stdlib.h>  #include <sys/stat.h> diff --git a/tests/test-symlink.h b/tests/test-symlink.h index 6e5eefec..0ce5ad4a 100644 --- a/tests/test-symlink.h +++ b/tests/test-symlink.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sys_ioctl.c b/tests/test-sys_ioctl.c index 6134d408..72c9d49a 100644 --- a/tests/test-sys_ioctl.c +++ b/tests/test-sys_ioctl.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sys_select.c b/tests/test-sys_select.c index c11622e6..c895fe2b 100644 --- a/tests/test-sys_select.c +++ b/tests/test-sys_select.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sys_socket.c b/tests/test-sys_socket.c index 671ec614..f230d5b4 100644 --- a/tests/test-sys_socket.c +++ b/tests/test-sys_socket.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sys_stat.c b/tests/test-sys_stat.c index 6c1e4938..b404d9f2 100644 --- a/tests/test-sys_stat.c +++ b/tests/test-sys_stat.c @@ -3,7 +3,7 @@     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 +   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, @@ -20,8 +20,6 @@  #include <sys/stat.h> -#include "verify.h" -  /* Check the existence of some macros.  */  int a[] =    { @@ -61,264 +59,264 @@ int a[] =  /* Sanity checks.  */ -verify (S_IRWXU == (S_IRUSR | S_IWUSR | S_IXUSR)); -verify (S_IRWXG == (S_IRGRP | S_IWGRP | S_IXGRP)); -verify (S_IRWXO == (S_IROTH | S_IWOTH | S_IXOTH)); +static_assert (S_IRWXU == (S_IRUSR | S_IWUSR | S_IXUSR)); +static_assert (S_IRWXG == (S_IRGRP | S_IWGRP | S_IXGRP)); +static_assert (S_IRWXO == (S_IROTH | S_IWOTH | S_IXOTH));  #ifdef S_IFBLK -verify (S_ISBLK (S_IFBLK)); +static_assert (S_ISBLK (S_IFBLK));  #endif -verify (!S_ISBLK (S_IFCHR)); -verify (!S_ISBLK (S_IFDIR)); -verify (!S_ISBLK (S_IFIFO)); -verify (!S_ISBLK (S_IFREG)); +static_assert (!S_ISBLK (S_IFCHR)); +static_assert (!S_ISBLK (S_IFDIR)); +static_assert (!S_ISBLK (S_IFIFO)); +static_assert (!S_ISBLK (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISBLK (S_IFLNK)); +static_assert (!S_ISBLK (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISBLK (S_IFSOCK)); +static_assert (!S_ISBLK (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISCHR (S_IFBLK)); +static_assert (!S_ISCHR (S_IFBLK));  #endif -verify (S_ISCHR (S_IFCHR)); -verify (!S_ISCHR (S_IFDIR)); -verify (!S_ISCHR (S_IFIFO)); -verify (!S_ISCHR (S_IFREG)); +static_assert (S_ISCHR (S_IFCHR)); +static_assert (!S_ISCHR (S_IFDIR)); +static_assert (!S_ISCHR (S_IFIFO)); +static_assert (!S_ISCHR (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISCHR (S_IFLNK)); +static_assert (!S_ISCHR (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISCHR (S_IFSOCK)); +static_assert (!S_ISCHR (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISDIR (S_IFBLK)); +static_assert (!S_ISDIR (S_IFBLK));  #endif -verify (!S_ISDIR (S_IFCHR)); -verify (S_ISDIR (S_IFDIR)); -verify (!S_ISDIR (S_IFIFO)); -verify (!S_ISDIR (S_IFREG)); +static_assert (!S_ISDIR (S_IFCHR)); +static_assert (S_ISDIR (S_IFDIR)); +static_assert (!S_ISDIR (S_IFIFO)); +static_assert (!S_ISDIR (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISDIR (S_IFLNK)); +static_assert (!S_ISDIR (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISDIR (S_IFSOCK)); +static_assert (!S_ISDIR (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISFIFO (S_IFBLK)); +static_assert (!S_ISFIFO (S_IFBLK));  #endif -verify (!S_ISFIFO (S_IFCHR)); -verify (!S_ISFIFO (S_IFDIR)); -verify (S_ISFIFO (S_IFIFO)); -verify (!S_ISFIFO (S_IFREG)); +static_assert (!S_ISFIFO (S_IFCHR)); +static_assert (!S_ISFIFO (S_IFDIR)); +static_assert (S_ISFIFO (S_IFIFO)); +static_assert (!S_ISFIFO (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISFIFO (S_IFLNK)); +static_assert (!S_ISFIFO (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISFIFO (S_IFSOCK)); +static_assert (!S_ISFIFO (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISREG (S_IFBLK)); +static_assert (!S_ISREG (S_IFBLK));  #endif -verify (!S_ISREG (S_IFCHR)); -verify (!S_ISREG (S_IFDIR)); -verify (!S_ISREG (S_IFIFO)); -verify (S_ISREG (S_IFREG)); +static_assert (!S_ISREG (S_IFCHR)); +static_assert (!S_ISREG (S_IFDIR)); +static_assert (!S_ISREG (S_IFIFO)); +static_assert (S_ISREG (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISREG (S_IFLNK)); +static_assert (!S_ISREG (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISREG (S_IFSOCK)); +static_assert (!S_ISREG (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISLNK (S_IFBLK)); +static_assert (!S_ISLNK (S_IFBLK));  #endif -verify (!S_ISLNK (S_IFCHR)); -verify (!S_ISLNK (S_IFDIR)); -verify (!S_ISLNK (S_IFIFO)); -verify (!S_ISLNK (S_IFREG)); +static_assert (!S_ISLNK (S_IFCHR)); +static_assert (!S_ISLNK (S_IFDIR)); +static_assert (!S_ISLNK (S_IFIFO)); +static_assert (!S_ISLNK (S_IFREG));  #ifdef S_IFLNK -verify (S_ISLNK (S_IFLNK)); +static_assert (S_ISLNK (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISLNK (S_IFSOCK)); +static_assert (!S_ISLNK (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISSOCK (S_IFBLK)); +static_assert (!S_ISSOCK (S_IFBLK));  #endif -verify (!S_ISSOCK (S_IFCHR)); -verify (!S_ISSOCK (S_IFDIR)); -verify (!S_ISSOCK (S_IFIFO)); -verify (!S_ISSOCK (S_IFREG)); +static_assert (!S_ISSOCK (S_IFCHR)); +static_assert (!S_ISSOCK (S_IFDIR)); +static_assert (!S_ISSOCK (S_IFIFO)); +static_assert (!S_ISSOCK (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISSOCK (S_IFLNK)); +static_assert (!S_ISSOCK (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (S_ISSOCK (S_IFSOCK)); +static_assert (S_ISSOCK (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISDOOR (S_IFBLK)); +static_assert (!S_ISDOOR (S_IFBLK));  #endif -verify (!S_ISDOOR (S_IFCHR)); -verify (!S_ISDOOR (S_IFDIR)); -verify (!S_ISDOOR (S_IFIFO)); -verify (!S_ISDOOR (S_IFREG)); +static_assert (!S_ISDOOR (S_IFCHR)); +static_assert (!S_ISDOOR (S_IFDIR)); +static_assert (!S_ISDOOR (S_IFIFO)); +static_assert (!S_ISDOOR (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISDOOR (S_IFLNK)); +static_assert (!S_ISDOOR (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISDOOR (S_IFSOCK)); +static_assert (!S_ISDOOR (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISMPB (S_IFBLK)); +static_assert (!S_ISMPB (S_IFBLK));  #endif -verify (!S_ISMPB (S_IFCHR)); -verify (!S_ISMPB (S_IFDIR)); -verify (!S_ISMPB (S_IFIFO)); -verify (!S_ISMPB (S_IFREG)); +static_assert (!S_ISMPB (S_IFCHR)); +static_assert (!S_ISMPB (S_IFDIR)); +static_assert (!S_ISMPB (S_IFIFO)); +static_assert (!S_ISMPB (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISMPB (S_IFLNK)); +static_assert (!S_ISMPB (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISMPB (S_IFSOCK)); +static_assert (!S_ISMPB (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISMPX (S_IFBLK)); +static_assert (!S_ISMPX (S_IFBLK));  #endif -verify (!S_ISMPX (S_IFCHR)); -verify (!S_ISMPX (S_IFDIR)); -verify (!S_ISMPX (S_IFIFO)); -verify (!S_ISMPX (S_IFREG)); +static_assert (!S_ISMPX (S_IFCHR)); +static_assert (!S_ISMPX (S_IFDIR)); +static_assert (!S_ISMPX (S_IFIFO)); +static_assert (!S_ISMPX (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISMPX (S_IFLNK)); +static_assert (!S_ISMPX (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISMPX (S_IFSOCK)); +static_assert (!S_ISMPX (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISNAM (S_IFBLK)); +static_assert (!S_ISNAM (S_IFBLK));  #endif -verify (!S_ISNAM (S_IFCHR)); -verify (!S_ISNAM (S_IFDIR)); -verify (!S_ISNAM (S_IFIFO)); -verify (!S_ISNAM (S_IFREG)); +static_assert (!S_ISNAM (S_IFCHR)); +static_assert (!S_ISNAM (S_IFDIR)); +static_assert (!S_ISNAM (S_IFIFO)); +static_assert (!S_ISNAM (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISNAM (S_IFLNK)); +static_assert (!S_ISNAM (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISNAM (S_IFSOCK)); +static_assert (!S_ISNAM (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISNWK (S_IFBLK)); +static_assert (!S_ISNWK (S_IFBLK));  #endif -verify (!S_ISNWK (S_IFCHR)); -verify (!S_ISNWK (S_IFDIR)); -verify (!S_ISNWK (S_IFIFO)); -verify (!S_ISNWK (S_IFREG)); +static_assert (!S_ISNWK (S_IFCHR)); +static_assert (!S_ISNWK (S_IFDIR)); +static_assert (!S_ISNWK (S_IFIFO)); +static_assert (!S_ISNWK (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISNWK (S_IFLNK)); +static_assert (!S_ISNWK (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISNWK (S_IFSOCK)); +static_assert (!S_ISNWK (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISPORT (S_IFBLK)); +static_assert (!S_ISPORT (S_IFBLK));  #endif -verify (!S_ISPORT (S_IFCHR)); -verify (!S_ISPORT (S_IFDIR)); -verify (!S_ISPORT (S_IFIFO)); -verify (!S_ISPORT (S_IFREG)); +static_assert (!S_ISPORT (S_IFCHR)); +static_assert (!S_ISPORT (S_IFDIR)); +static_assert (!S_ISPORT (S_IFIFO)); +static_assert (!S_ISPORT (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISPORT (S_IFLNK)); +static_assert (!S_ISPORT (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISPORT (S_IFSOCK)); +static_assert (!S_ISPORT (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISCTG (S_IFBLK)); +static_assert (!S_ISCTG (S_IFBLK));  #endif -verify (!S_ISCTG (S_IFCHR)); -verify (!S_ISCTG (S_IFDIR)); -verify (!S_ISCTG (S_IFIFO)); -verify (!S_ISCTG (S_IFREG)); +static_assert (!S_ISCTG (S_IFCHR)); +static_assert (!S_ISCTG (S_IFDIR)); +static_assert (!S_ISCTG (S_IFIFO)); +static_assert (!S_ISCTG (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISCTG (S_IFLNK)); +static_assert (!S_ISCTG (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISCTG (S_IFSOCK)); +static_assert (!S_ISCTG (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISOFD (S_IFBLK)); +static_assert (!S_ISOFD (S_IFBLK));  #endif -verify (!S_ISOFD (S_IFCHR)); -verify (!S_ISOFD (S_IFDIR)); -verify (!S_ISOFD (S_IFIFO)); -verify (!S_ISOFD (S_IFREG)); +static_assert (!S_ISOFD (S_IFCHR)); +static_assert (!S_ISOFD (S_IFDIR)); +static_assert (!S_ISOFD (S_IFIFO)); +static_assert (!S_ISOFD (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISOFD (S_IFLNK)); +static_assert (!S_ISOFD (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISOFD (S_IFSOCK)); +static_assert (!S_ISOFD (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISOFL (S_IFBLK)); +static_assert (!S_ISOFL (S_IFBLK));  #endif -verify (!S_ISOFL (S_IFCHR)); -verify (!S_ISOFL (S_IFDIR)); -verify (!S_ISOFL (S_IFIFO)); -verify (!S_ISOFL (S_IFREG)); +static_assert (!S_ISOFL (S_IFCHR)); +static_assert (!S_ISOFL (S_IFDIR)); +static_assert (!S_ISOFL (S_IFIFO)); +static_assert (!S_ISOFL (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISOFL (S_IFLNK)); +static_assert (!S_ISOFL (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISOFL (S_IFSOCK)); +static_assert (!S_ISOFL (S_IFSOCK));  #endif  #ifdef S_IFBLK -verify (!S_ISWHT (S_IFBLK)); +static_assert (!S_ISWHT (S_IFBLK));  #endif -verify (!S_ISWHT (S_IFCHR)); -verify (!S_ISWHT (S_IFDIR)); -verify (!S_ISWHT (S_IFIFO)); -verify (!S_ISWHT (S_IFREG)); +static_assert (!S_ISWHT (S_IFCHR)); +static_assert (!S_ISWHT (S_IFDIR)); +static_assert (!S_ISWHT (S_IFIFO)); +static_assert (!S_ISWHT (S_IFREG));  #ifdef S_IFLNK -verify (!S_ISWHT (S_IFLNK)); +static_assert (!S_ISWHT (S_IFLNK));  #endif  #ifdef S_IFSOCK -verify (!S_ISWHT (S_IFSOCK)); +static_assert (!S_ISWHT (S_IFSOCK));  #endif  /* POSIX 2008 requires traditional encoding of permission constants.  */ -verify (S_IRWXU == 00700); -verify (S_IRUSR == 00400); -verify (S_IWUSR == 00200); -verify (S_IXUSR == 00100); -verify (S_IRWXG == 00070); -verify (S_IRGRP == 00040); -verify (S_IWGRP == 00020); -verify (S_IXGRP == 00010); -verify (S_IRWXO == 00007); -verify (S_IROTH == 00004); -verify (S_IWOTH == 00002); -verify (S_IXOTH == 00001); -verify (S_ISUID == 04000); -verify (S_ISGID == 02000); -verify (S_ISVTX == 01000); +static_assert (S_IRWXU == 00700); +static_assert (S_IRUSR == 00400); +static_assert (S_IWUSR == 00200); +static_assert (S_IXUSR == 00100); +static_assert (S_IRWXG == 00070); +static_assert (S_IRGRP == 00040); +static_assert (S_IWGRP == 00020); +static_assert (S_IXGRP == 00010); +static_assert (S_IRWXO == 00007); +static_assert (S_IROTH == 00004); +static_assert (S_IWOTH == 00002); +static_assert (S_IXOTH == 00001); +static_assert (S_ISUID == 04000); +static_assert (S_ISGID == 02000); +static_assert (S_ISVTX == 01000);  #if ((0 <= UTIME_NOW && UTIME_NOW < 1000000000)           \       || (0 <= UTIME_OMIT && UTIME_OMIT < 1000000000)      \ diff --git a/tests/test-sys_time.c b/tests/test-sys_time.c index 73eb8422..b952243e 100644 --- a/tests/test-sys_time.c +++ b/tests/test-sys_time.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sys_types.c b/tests/test-sys_types.c index 9578f62a..290bd0d5 100644 --- a/tests/test-sys_types.c +++ b/tests/test-sys_types.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sys_uio.c b/tests/test-sys_uio.c index 24240cb9..f4f7b7ac 100644 --- a/tests/test-sys_uio.c +++ b/tests/test-sys_uio.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-sys_wait.h b/tests/test-sys_wait.h index 16dc0e0f..9becf28e 100644 --- a/tests/test-sys_wait.h +++ b/tests/test-sys_wait.h @@ -3,7 +3,7 @@     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 +   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, @@ -40,14 +40,14 @@ test_sys_wait_macros (void)      }    i = WEXITSTATUS (i) + WSTOPSIG (i) + WTERMSIG (i); +#if 0    switch (i)      { -#if 0    /* Gnulib doesn't guarantee these, yet.  */      case WNOHANG:      case WUNTRACED: -#endif        break;      } +#endif    return 0;  } diff --git a/tests/test-thread_create.c b/tests/test-thread_create.c index e311638d..17e6942b 100644 --- a/tests/test-thread_create.c +++ b/tests/test-thread_create.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-thread_self.c b/tests/test-thread_self.c index ab8e3524..30d46380 100644 --- a/tests/test-thread_self.c +++ b/tests/test-thread_self.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-time.c b/tests/test-time.c index 51138b83..6b69f3d5 100644 --- a/tests/test-time.c +++ b/tests/test-time.c @@ -3,7 +3,7 @@     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 +   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, @@ -20,8 +20,6 @@  #include <time.h> -#include "verify.h" -  /* Check that the types are all defined.  */  struct timespec t1;  #if 0 @@ -32,11 +30,11 @@ pid_t t2;  /* Check that NULL can be passed through varargs as a pointer type,     per POSIX 2008.  */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *));  /* Check that TIME_UTC is defined and a positive integer.  */  int t3 = TIME_UTC; -verify (TIME_UTC > 0); +static_assert (TIME_UTC > 0);  int  main (void) diff --git a/tests/test-unistd.c b/tests/test-unistd.c index 119d4dbb..a59af1e3 100644 --- a/tests/test-unistd.c +++ b/tests/test-unistd.c @@ -3,7 +3,7 @@     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 +   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, @@ -20,11 +20,9 @@  #include <unistd.h> -#include "verify.h" -  /* Check that NULL can be passed through varargs as a pointer type,     per POSIX 2008.  */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *));  /* Check that the various SEEK_* macros are defined.  */  int sk[] = { SEEK_CUR, SEEK_END, SEEK_SET }; diff --git a/tests/test-unsetenv.c b/tests/test-unsetenv.c index 0960510a..61dbc81a 100644 --- a/tests/test-unsetenv.c +++ b/tests/test-unsetenv.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-usleep.c b/tests/test-usleep.c index e1210a1a..e1133dd6 100644 --- a/tests/test-usleep.c +++ b/tests/test-usleep.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-verify-try.c b/tests/test-verify-try.c index cbdc4a4a..2456133d 100644 --- a/tests/test-verify-try.c +++ b/tests/test-verify-try.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/test-verify.c b/tests/test-verify.c index cb3af718..4ba89c03 100644 --- a/tests/test-verify.c +++ b/tests/test-verify.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/test-wchar.c b/tests/test-wchar.c index a31f5794..af7c9486 100644 --- a/tests/test-wchar.c +++ b/tests/test-wchar.c @@ -3,7 +3,7 @@     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 +   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, @@ -20,15 +20,13 @@  #include <wchar.h> -#include "verify.h" -  /* Check that the types wchar_t and wint_t are defined.  */  wchar_t a = 'c';  wint_t b = 'x';  /* Check that NULL can be passed through varargs as a pointer type,     per POSIX 2008.  */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *));  int  main (void) diff --git a/tests/test-wcrtomb-w32.c b/tests/test-wcrtomb-w32.c index 427a2f8c..67fa5a31 100644 --- a/tests/test-wcrtomb-w32.c +++ b/tests/test-wcrtomb-w32.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-wcrtomb.c b/tests/test-wcrtomb.c index bb76d6f0..71d0faf3 100644 --- a/tests/test-wcrtomb.c +++ b/tests/test-wcrtomb.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-wcrtomb.sh b/tests/test-wcrtomb.sh index 1a31b6ee..01d8d53b 100755 --- a/tests/test-wcrtomb.sh +++ b/tests/test-wcrtomb.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR != none; then    LC_ALL=$LOCALE_FR \    ${CHECKER} ./test-wcrtomb${EXEEXT} 1 \ @@ -9,7 +9,7 @@ if test $LOCALE_FR != none; then  fi  # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 != none; then    LC_ALL=$LOCALE_FR_UTF8 \    ${CHECKER} ./test-wcrtomb${EXEEXT} 2 \ @@ -17,7 +17,7 @@ if test $LOCALE_FR_UTF8 != none; then  fi  # Test whether a specific EUC-JP locale is installed. -: ${LOCALE_JA=ja_JP} +: "${LOCALE_JA=ja_JP}"  if test $LOCALE_JA != none; then    LC_ALL=$LOCALE_JA \    ${CHECKER} ./test-wcrtomb${EXEEXT} 3 \ @@ -25,7 +25,7 @@ if test $LOCALE_JA != none; then  fi  # Test whether a specific GB18030 locale is installed. -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}"  if test $LOCALE_ZH_CN != none; then    LC_ALL=$LOCALE_ZH_CN \    ${CHECKER} ./test-wcrtomb${EXEEXT} 4 \ diff --git a/tests/test-wctype-h.c b/tests/test-wctype-h.c index d3676996..08da56b5 100644 --- a/tests/test-wctype-h.c +++ b/tests/test-wctype-h.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-wcwidth.c b/tests/test-wcwidth.c index c2be2f32..7e522eec 100644 --- a/tests/test-wcwidth.c +++ b/tests/test-wcwidth.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-xalloc-die.c b/tests/test-xalloc-die.c index 42e30b56..78781306 100644 --- a/tests/test-xalloc-die.c +++ b/tests/test-xalloc-die.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/test-xalloc-die.sh b/tests/test-xalloc-die.sh index 9f5dee00..2a891110 100755 --- a/tests/test-xalloc-die.sh +++ b/tests/test-xalloc-die.sh @@ -5,7 +5,7 @@  #  # 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 +# 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, diff --git a/tests/time.in.h b/tests/time.in.h index 6d4c7719..6aa67498 100644 --- a/tests/time.in.h +++ b/tests/time.in.h @@ -435,8 +435,10 @@ _GL_WARN_ON_USE (asctime, "asctime can overrun buffers in some cases - "  # endif  # if defined GNULIB_POSIXCHECK  #  undef asctime_r +#  if HAVE_RAW_DECL_ASCTIME_R  _GL_WARN_ON_USE (asctime_r, "asctime_r can overrun buffers in some cases - "                   "better use strftime (or even sprintf) instead"); +#  endif  # endif  # if defined GNULIB_POSIXCHECK  #  undef ctime @@ -445,8 +447,10 @@ _GL_WARN_ON_USE (ctime, "ctime can overrun buffers in some cases - "  # endif  # if defined GNULIB_POSIXCHECK  #  undef ctime_r +#  if HAVE_RAW_DECL_CTIME_R  _GL_WARN_ON_USE (ctime_r, "ctime_r can overrun buffers in some cases - "                   "better use strftime (or even sprintf) instead"); +#  endif  # endif  #endif diff --git a/tests/unicase/test-casecmp.h b/tests/unicase/test-casecmp.h index 7a8f1192..a2f90aca 100644 --- a/tests/unicase/test-casecmp.h +++ b/tests/unicase/test-casecmp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-cased.c b/tests/unicase/test-cased.c index c376d1ce..477cd1c5 100644 --- a/tests/unicase/test-cased.c +++ b/tests/unicase/test-cased.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -48,7 +48,7 @@      { 0x10C7, 0x10C7 },      { 0x10CD, 0x10CD },      { 0x10D0, 0x10FA }, -    { 0x10FD, 0x10FF }, +    { 0x10FC, 0x10FF },      { 0x13A0, 0x13F5 },      { 0x13F8, 0x13FD },      { 0x1C80, 0x1C88 }, @@ -108,10 +108,10 @@      { 0xA7D0, 0xA7D1 },      { 0xA7D3, 0xA7D3 },      { 0xA7D5, 0xA7D9 }, -    { 0xA7F5, 0xA7F6 }, +    { 0xA7F2, 0xA7F6 },      { 0xA7F8, 0xA7FA },      { 0xAB30, 0xAB5A }, -    { 0xAB5C, 0xAB68 }, +    { 0xAB5C, 0xAB69 },      { 0xAB70, 0xABBF },      { 0xFB00, 0xFB06 },      { 0xFB13, 0xFB17 }, @@ -168,6 +168,8 @@      { 0x1D7C4, 0x1D7CB },      { 0x1DF00, 0x1DF09 },      { 0x1DF0B, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A }, +    { 0x1E030, 0x1E06D },      { 0x1E900, 0x1E943 },      { 0x1F130, 0x1F149 },      { 0x1F150, 0x1F169 }, diff --git a/tests/unicase/test-ignorable.c b/tests/unicase/test-ignorable.c index bf512d76..d4dc8498 100644 --- a/tests/unicase/test-ignorable.c +++ b/tests/unicase/test-ignorable.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -131,7 +131,7 @@      { 0x0EB1, 0x0EB1 },      { 0x0EB4, 0x0EBC },      { 0x0EC6, 0x0EC6 }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0F18, 0x0F19 },      { 0x0F35, 0x0F35 },      { 0x0F37, 0x0F37 }, @@ -153,7 +153,6 @@      { 0x1085, 0x1086 },      { 0x108D, 0x108D },      { 0x109D, 0x109D }, -    { 0x10FC, 0x10FC },      { 0x135D, 0x135F },      { 0x1712, 0x1714 },      { 0x1732, 0x1733 }, @@ -243,7 +242,6 @@      { 0xA6F0, 0xA6F1 },      { 0xA700, 0xA721 },      { 0xA788, 0xA78A }, -    { 0xA7F2, 0xA7F4 },      { 0xA802, 0xA802 },      { 0xA806, 0xA806 },      { 0xA80B, 0xA80B }, @@ -277,7 +275,7 @@      { 0xAAF3, 0xAAF4 },      { 0xAAF6, 0xAAF6 },      { 0xAB5B, 0xAB5B }, -    { 0xAB69, 0xAB6B }, +    { 0xAB6A, 0xAB6B },      { 0xABE5, 0xABE5 },      { 0xABE8, 0xABE8 },      { 0xABED, 0xABED }, @@ -310,6 +308,7 @@      { 0x10AE5, 0x10AE6 },      { 0x10D24, 0x10D27 },      { 0x10EAB, 0x10EAC }, +    { 0x10EFD, 0x10EFF },      { 0x10F46, 0x10F50 },      { 0x10F82, 0x10F85 },      { 0x11001, 0x11001 }, @@ -334,6 +333,7 @@      { 0x11234, 0x11234 },      { 0x11236, 0x11237 },      { 0x1123E, 0x1123E }, +    { 0x11241, 0x11241 },      { 0x112DF, 0x112DF },      { 0x112E3, 0x112EA },      { 0x11300, 0x11301 }, @@ -395,7 +395,12 @@      { 0x11D95, 0x11D95 },      { 0x11D97, 0x11D97 },      { 0x11EF3, 0x11EF4 }, -    { 0x13430, 0x13438 }, +    { 0x11F00, 0x11F01 }, +    { 0x11F36, 0x11F3A }, +    { 0x11F40, 0x11F40 }, +    { 0x11F42, 0x11F42 }, +    { 0x13430, 0x13440 }, +    { 0x13447, 0x13455 },      { 0x16AF0, 0x16AF4 },      { 0x16B30, 0x16B36 },      { 0x16B40, 0x16B43 }, @@ -426,9 +431,11 @@      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E08F, 0x1E08F },      { 0x1E130, 0x1E13D },      { 0x1E2AE, 0x1E2AE },      { 0x1E2EC, 0x1E2EF }, +    { 0x1E4EB, 0x1E4EF },      { 0x1E8D0, 0x1E8D6 },      { 0x1E944, 0x1E94B },      { 0x1F3FB, 0x1F3FF }, diff --git a/tests/unicase/test-is-cased.h b/tests/unicase/test-is-cased.h index fb277d2e..db5c07ec 100644 --- a/tests/unicase/test-is-cased.h +++ b/tests/unicase/test-is-cased.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-is-casefolded.h b/tests/unicase/test-is-casefolded.h index 3d2c65de..37019777 100644 --- a/tests/unicase/test-is-casefolded.h +++ b/tests/unicase/test-is-casefolded.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-is-lowercase.h b/tests/unicase/test-is-lowercase.h index cf1c285c..df91eb1e 100644 --- a/tests/unicase/test-is-lowercase.h +++ b/tests/unicase/test-is-lowercase.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-is-titlecase.h b/tests/unicase/test-is-titlecase.h index 7f79e2f0..c96a59d6 100644 --- a/tests/unicase/test-is-titlecase.h +++ b/tests/unicase/test-is-titlecase.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-is-uppercase.h b/tests/unicase/test-is-uppercase.h index 32e75df7..c58c545c 100644 --- a/tests/unicase/test-is-uppercase.h +++ b/tests/unicase/test-is-uppercase.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-locale-language.c b/tests/unicase/test-locale-language.c index 03ff356e..dfc1b39b 100644 --- a/tests/unicase/test-locale-language.c +++ b/tests/unicase/test-locale-language.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-locale-language.sh b/tests/unicase/test-locale-language.sh index 4e5b90ab..5229b4cf 100755 --- a/tests/unicase/test-locale-language.sh +++ b/tests/unicase/test-locale-language.sh @@ -2,27 +2,27 @@  LC_ALL=C                       ${CHECKER} ./test-locale-language${EXEEXT} '' || exit 1 -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR != none; then    LC_ALL=$LOCALE_FR            ${CHECKER} ./test-locale-language${EXEEXT} fr || exit 1  fi -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 != none; then    LC_ALL=$LOCALE_FR_UTF8       ${CHECKER} ./test-locale-language${EXEEXT} fr || exit 1  fi -: ${LOCALE_JA=ja_JP} +: "${LOCALE_JA=ja_JP}"  if test $LOCALE_JA != none; then    LC_ALL=$LOCALE_JA            ${CHECKER} ./test-locale-language${EXEEXT} ja || exit 1  fi -: ${LOCALE_TR_UTF8=tr_TR.UTF-8} +: "${LOCALE_TR_UTF8=tr_TR.UTF-8}"  if test $LOCALE_TR_UTF8 != none; then    LC_ALL=$LOCALE_TR_UTF8       ${CHECKER} ./test-locale-language${EXEEXT} tr || exit 1  fi -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}"  if test $LOCALE_ZH_CN != none; then    LC_ALL=$LOCALE_ZH_CN         ${CHECKER} ./test-locale-language${EXEEXT} zh || exit 1  fi diff --git a/tests/unicase/test-mapping-part1.h b/tests/unicase/test-mapping-part1.h index 6612a314..7bd02d13 100644 --- a/tests/unicase/test-mapping-part1.h +++ b/tests/unicase/test-mapping-part1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-mapping-part2.h b/tests/unicase/test-mapping-part2.h index 032896da..aafe1a56 100644 --- a/tests/unicase/test-mapping-part2.h +++ b/tests/unicase/test-mapping-part2.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-predicate-part1.h b/tests/unicase/test-predicate-part1.h index c8adeee7..c0b9131b 100644 --- a/tests/unicase/test-predicate-part1.h +++ b/tests/unicase/test-predicate-part1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-predicate-part2.h b/tests/unicase/test-predicate-part2.h index 61f0d39f..a3e2c0ff 100644 --- a/tests/unicase/test-predicate-part2.h +++ b/tests/unicase/test-predicate-part2.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-casecmp.c b/tests/unicase/test-u16-casecmp.c index 638b19a2..6bb4cbf6 100644 --- a/tests/unicase/test-u16-casecmp.c +++ b/tests/unicase/test-u16-casecmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-casecoll.c b/tests/unicase/test-u16-casecoll.c index 8ca5c3b4..2eebdff6 100644 --- a/tests/unicase/test-u16-casecoll.c +++ b/tests/unicase/test-u16-casecoll.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-casefold.c b/tests/unicase/test-u16-casefold.c index ef70d911..cb61f992 100644 --- a/tests/unicase/test-u16-casefold.c +++ b/tests/unicase/test-u16-casefold.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-is-cased.c b/tests/unicase/test-u16-is-cased.c index 9de59225..9ce5ff3a 100644 --- a/tests/unicase/test-u16-is-cased.c +++ b/tests/unicase/test-u16-is-cased.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-is-casefolded.c b/tests/unicase/test-u16-is-casefolded.c index f8bc4de9..33a0724d 100644 --- a/tests/unicase/test-u16-is-casefolded.c +++ b/tests/unicase/test-u16-is-casefolded.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-is-lowercase.c b/tests/unicase/test-u16-is-lowercase.c index ff2e9295..e9726e95 100644 --- a/tests/unicase/test-u16-is-lowercase.c +++ b/tests/unicase/test-u16-is-lowercase.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-is-titlecase.c b/tests/unicase/test-u16-is-titlecase.c index 310bdafa..27a4feef 100644 --- a/tests/unicase/test-u16-is-titlecase.c +++ b/tests/unicase/test-u16-is-titlecase.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-is-uppercase.c b/tests/unicase/test-u16-is-uppercase.c index dd09515d..2c5be2d8 100644 --- a/tests/unicase/test-u16-is-uppercase.c +++ b/tests/unicase/test-u16-is-uppercase.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-tolower.c b/tests/unicase/test-u16-tolower.c index 92a72c94..7c20502d 100644 --- a/tests/unicase/test-u16-tolower.c +++ b/tests/unicase/test-u16-tolower.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-totitle.c b/tests/unicase/test-u16-totitle.c index 84da31d8..98b489df 100644 --- a/tests/unicase/test-u16-totitle.c +++ b/tests/unicase/test-u16-totitle.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u16-toupper.c b/tests/unicase/test-u16-toupper.c index 4de8fe36..e4e6ae3c 100644 --- a/tests/unicase/test-u16-toupper.c +++ b/tests/unicase/test-u16-toupper.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-casecmp.c b/tests/unicase/test-u32-casecmp.c index dd6bd958..0080ac01 100644 --- a/tests/unicase/test-u32-casecmp.c +++ b/tests/unicase/test-u32-casecmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-casecoll.c b/tests/unicase/test-u32-casecoll.c index 4078a41f..62746c8a 100644 --- a/tests/unicase/test-u32-casecoll.c +++ b/tests/unicase/test-u32-casecoll.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-casefold.c b/tests/unicase/test-u32-casefold.c index fed815ae..26f8960d 100644 --- a/tests/unicase/test-u32-casefold.c +++ b/tests/unicase/test-u32-casefold.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-is-cased.c b/tests/unicase/test-u32-is-cased.c index e3321d72..a92c2671 100644 --- a/tests/unicase/test-u32-is-cased.c +++ b/tests/unicase/test-u32-is-cased.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-is-casefolded.c b/tests/unicase/test-u32-is-casefolded.c index 52032f73..701f4533 100644 --- a/tests/unicase/test-u32-is-casefolded.c +++ b/tests/unicase/test-u32-is-casefolded.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-is-lowercase.c b/tests/unicase/test-u32-is-lowercase.c index 8f884dd4..2f7c4c20 100644 --- a/tests/unicase/test-u32-is-lowercase.c +++ b/tests/unicase/test-u32-is-lowercase.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-is-titlecase.c b/tests/unicase/test-u32-is-titlecase.c index e7412001..a860867c 100644 --- a/tests/unicase/test-u32-is-titlecase.c +++ b/tests/unicase/test-u32-is-titlecase.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-is-uppercase.c b/tests/unicase/test-u32-is-uppercase.c index ff3e8455..0cd34b8d 100644 --- a/tests/unicase/test-u32-is-uppercase.c +++ b/tests/unicase/test-u32-is-uppercase.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-tolower.c b/tests/unicase/test-u32-tolower.c index 80101d2c..5044bc08 100644 --- a/tests/unicase/test-u32-tolower.c +++ b/tests/unicase/test-u32-tolower.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-totitle.c b/tests/unicase/test-u32-totitle.c index a07899fe..08d2e61a 100644 --- a/tests/unicase/test-u32-totitle.c +++ b/tests/unicase/test-u32-totitle.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u32-toupper.c b/tests/unicase/test-u32-toupper.c index d9c179b1..ddc7ca2c 100644 --- a/tests/unicase/test-u32-toupper.c +++ b/tests/unicase/test-u32-toupper.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-casecmp.c b/tests/unicase/test-u8-casecmp.c index 8e91f18f..d76b8758 100644 --- a/tests/unicase/test-u8-casecmp.c +++ b/tests/unicase/test-u8-casecmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-casecoll.c b/tests/unicase/test-u8-casecoll.c index 7fe05a9d..e8a19690 100644 --- a/tests/unicase/test-u8-casecoll.c +++ b/tests/unicase/test-u8-casecoll.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-casefold.c b/tests/unicase/test-u8-casefold.c index 15ea4e15..5fd42844 100644 --- a/tests/unicase/test-u8-casefold.c +++ b/tests/unicase/test-u8-casefold.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-is-cased.c b/tests/unicase/test-u8-is-cased.c index 50568fbf..dc523836 100644 --- a/tests/unicase/test-u8-is-cased.c +++ b/tests/unicase/test-u8-is-cased.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-is-casefolded.c b/tests/unicase/test-u8-is-casefolded.c index a43bc27c..6adf2888 100644 --- a/tests/unicase/test-u8-is-casefolded.c +++ b/tests/unicase/test-u8-is-casefolded.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-is-lowercase.c b/tests/unicase/test-u8-is-lowercase.c index 47e1a3ff..82a4c8d8 100644 --- a/tests/unicase/test-u8-is-lowercase.c +++ b/tests/unicase/test-u8-is-lowercase.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-is-titlecase.c b/tests/unicase/test-u8-is-titlecase.c index ee339f2d..e91b878a 100644 --- a/tests/unicase/test-u8-is-titlecase.c +++ b/tests/unicase/test-u8-is-titlecase.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-is-uppercase.c b/tests/unicase/test-u8-is-uppercase.c index cb129d76..33294fa9 100644 --- a/tests/unicase/test-u8-is-uppercase.c +++ b/tests/unicase/test-u8-is-uppercase.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-tolower.c b/tests/unicase/test-u8-tolower.c index 9d2c1bbc..73d9fca8 100644 --- a/tests/unicase/test-u8-tolower.c +++ b/tests/unicase/test-u8-tolower.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-totitle.c b/tests/unicase/test-u8-totitle.c index e0c3e738..3a6cc10e 100644 --- a/tests/unicase/test-u8-totitle.c +++ b/tests/unicase/test-u8-totitle.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-u8-toupper.c b/tests/unicase/test-u8-toupper.c index 54be0ab1..ce0d3529 100644 --- a/tests/unicase/test-u8-toupper.c +++ b/tests/unicase/test-u8-toupper.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-uc_tolower.c b/tests/unicase/test-uc_tolower.c index 82cd0a40..83942037 100644 --- a/tests/unicase/test-uc_tolower.c +++ b/tests/unicase/test-uc_tolower.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -15,7 +15,7 @@     You should have received a copy of the GNU General Public License     along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ -/* Generated automatically by gen-uni-tables.c for Unicode 14.0.0.  */ +/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */  #include "test-mapping-part1.h" diff --git a/tests/unicase/test-uc_totitle.c b/tests/unicase/test-uc_totitle.c index e775cab7..03145bce 100644 --- a/tests/unicase/test-uc_totitle.c +++ b/tests/unicase/test-uc_totitle.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -15,7 +15,7 @@     You should have received a copy of the GNU General Public License     along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ -/* Generated automatically by gen-uni-tables.c for Unicode 14.0.0.  */ +/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */  #include "test-mapping-part1.h" diff --git a/tests/unicase/test-uc_toupper.c b/tests/unicase/test-uc_toupper.c index 71b5e76c..c5594053 100644 --- a/tests/unicase/test-uc_toupper.c +++ b/tests/unicase/test-uc_toupper.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -15,7 +15,7 @@     You should have received a copy of the GNU General Public License     along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ -/* Generated automatically by gen-uni-tables.c for Unicode 14.0.0.  */ +/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */  #include "test-mapping-part1.h" diff --git a/tests/unicase/test-ulc-casecmp.c b/tests/unicase/test-ulc-casecmp.c index 501e3239..81534f04 100644 --- a/tests/unicase/test-ulc-casecmp.c +++ b/tests/unicase/test-ulc-casecmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unicase/test-ulc-casecmp1.sh b/tests/unicase/test-ulc-casecmp1.sh index a5a61c6c..e9ed999b 100755 --- a/tests/unicase/test-ulc-casecmp1.sh +++ b/tests/unicase/test-ulc-casecmp1.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no traditional french locale is installed" diff --git a/tests/unicase/test-ulc-casecmp2.sh b/tests/unicase/test-ulc-casecmp2.sh index d4492279..6fdc6af3 100755 --- a/tests/unicase/test-ulc-casecmp2.sh +++ b/tests/unicase/test-ulc-casecmp2.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no french Unicode locale is installed" diff --git a/tests/unicase/test-ulc-casecoll.c b/tests/unicase/test-ulc-casecoll.c index 6b665d92..07bc2dc4 100644 --- a/tests/unicase/test-ulc-casecoll.c +++ b/tests/unicase/test-ulc-casecoll.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/unicase/test-ulc-casecoll1.sh b/tests/unicase/test-ulc-casecoll1.sh index d18211bb..16063103 100755 --- a/tests/unicase/test-ulc-casecoll1.sh +++ b/tests/unicase/test-ulc-casecoll1.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no traditional french locale is installed" diff --git a/tests/unicase/test-ulc-casecoll2.sh b/tests/unicase/test-ulc-casecoll2.sh index a74c8b30..3e149a34 100755 --- a/tests/unicase/test-ulc-casecoll2.sh +++ b/tests/unicase/test-ulc-casecoll2.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no french Unicode locale is installed" diff --git a/tests/uniconv/test-u16-conv-from-enc.c b/tests/uniconv/test-u16-conv-from-enc.c index 9df9f69e..82f0091c 100644 --- a/tests/uniconv/test-u16-conv-from-enc.c +++ b/tests/uniconv/test-u16-conv-from-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u16-conv-to-enc.c b/tests/uniconv/test-u16-conv-to-enc.c index 779beb63..b423e10c 100644 --- a/tests/uniconv/test-u16-conv-to-enc.c +++ b/tests/uniconv/test-u16-conv-to-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u16-strconv-from-enc.c b/tests/uniconv/test-u16-strconv-from-enc.c index 9ab26747..e34399ad 100644 --- a/tests/uniconv/test-u16-strconv-from-enc.c +++ b/tests/uniconv/test-u16-strconv-from-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u16-strconv-to-enc.c b/tests/uniconv/test-u16-strconv-to-enc.c index d83d92c0..bfdc6623 100644 --- a/tests/uniconv/test-u16-strconv-to-enc.c +++ b/tests/uniconv/test-u16-strconv-to-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u32-conv-from-enc.c b/tests/uniconv/test-u32-conv-from-enc.c index e92651ae..723a56b3 100644 --- a/tests/uniconv/test-u32-conv-from-enc.c +++ b/tests/uniconv/test-u32-conv-from-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u32-conv-to-enc.c b/tests/uniconv/test-u32-conv-to-enc.c index 32d29dff..ca51aa08 100644 --- a/tests/uniconv/test-u32-conv-to-enc.c +++ b/tests/uniconv/test-u32-conv-to-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u32-strconv-from-enc.c b/tests/uniconv/test-u32-strconv-from-enc.c index be22eca9..bdd88347 100644 --- a/tests/uniconv/test-u32-strconv-from-enc.c +++ b/tests/uniconv/test-u32-strconv-from-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u32-strconv-to-enc.c b/tests/uniconv/test-u32-strconv-to-enc.c index c871d4b0..bca05f86 100644 --- a/tests/uniconv/test-u32-strconv-to-enc.c +++ b/tests/uniconv/test-u32-strconv-to-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u8-conv-from-enc.c b/tests/uniconv/test-u8-conv-from-enc.c index 8e5c2520..80a136f6 100644 --- a/tests/uniconv/test-u8-conv-from-enc.c +++ b/tests/uniconv/test-u8-conv-from-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u8-conv-to-enc.c b/tests/uniconv/test-u8-conv-to-enc.c index 3d9d38d3..97dc82a6 100644 --- a/tests/uniconv/test-u8-conv-to-enc.c +++ b/tests/uniconv/test-u8-conv-to-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u8-strconv-from-enc.c b/tests/uniconv/test-u8-strconv-from-enc.c index daa2753c..1ea836ac 100644 --- a/tests/uniconv/test-u8-strconv-from-enc.c +++ b/tests/uniconv/test-u8-strconv-from-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniconv/test-u8-strconv-to-enc.c b/tests/uniconv/test-u8-strconv-to-enc.c index 689f7cdb..e02f2056 100644 --- a/tests/uniconv/test-u8-strconv-to-enc.c +++ b/tests/uniconv/test-u8-strconv-to-enc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-bidi_byname.c b/tests/unictype/test-bidi_byname.c index 4d3291c0..78ca589c 100644 --- a/tests/unictype/test-bidi_byname.c +++ b/tests/unictype/test-bidi_byname.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-bidi_longname.c b/tests/unictype/test-bidi_longname.c index 98449d85..a36b81a2 100644 --- a/tests/unictype/test-bidi_longname.c +++ b/tests/unictype/test-bidi_longname.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-bidi_name.c b/tests/unictype/test-bidi_name.c index 2966db34..c2dd49eb 100644 --- a/tests/unictype/test-bidi_name.c +++ b/tests/unictype/test-bidi_name.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-bidi_of.c b/tests/unictype/test-bidi_of.c index dcaa5ce9..786f6e9c 100644 --- a/tests/unictype/test-bidi_of.c +++ b/tests/unictype/test-bidi_of.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-bidi_test.c b/tests/unictype/test-bidi_test.c index 585ddc50..34349a88 100644 --- a/tests/unictype/test-bidi_test.c +++ b/tests/unictype/test-bidi_test.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-block_list.c b/tests/unictype/test-block_list.c index 02d4b9aa..623f62e8 100644 --- a/tests/unictype/test-block_list.c +++ b/tests/unictype/test-block_list.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-block_of.c b/tests/unictype/test-block_of.c index d8386785..aea21e65 100644 --- a/tests/unictype/test-block_of.c +++ b/tests/unictype/test-block_of.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-block_test.c b/tests/unictype/test-block_test.c index ffff9bc3..974bba89 100644 --- a/tests/unictype/test-block_test.c +++ b/tests/unictype/test-block_test.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-categ_C.c b/tests/unictype/test-categ_C.c index b9719b8d..09277e39 100644 --- a/tests/unictype/test-categ_C.c +++ b/tests/unictype/test-categ_C.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -143,7 +143,7 @@      { 0x0CDF, 0x0CDF },      { 0x0CE4, 0x0CE5 },      { 0x0CF0, 0x0CF0 }, -    { 0x0CF3, 0x0CFF }, +    { 0x0CF4, 0x0CFF },      { 0x0D0D, 0x0D0D },      { 0x0D11, 0x0D11 },      { 0x0D45, 0x0D45 }, @@ -173,7 +173,7 @@      { 0x0EBE, 0x0EBF },      { 0x0EC5, 0x0EC5 },      { 0x0EC7, 0x0EC7 }, -    { 0x0ECE, 0x0ECF }, +    { 0x0ECF, 0x0ECF },      { 0x0EDA, 0x0EDB },      { 0x0EE0, 0x0EFF },      { 0x0F48, 0x0F48 }, @@ -445,7 +445,7 @@      { 0x10E7F, 0x10E7F },      { 0x10EAA, 0x10EAA },      { 0x10EAE, 0x10EAF }, -    { 0x10EB2, 0x10EFF }, +    { 0x10EB2, 0x10EFC },      { 0x10F28, 0x10F2F },      { 0x10F5A, 0x10F6F },      { 0x10F8A, 0x10FAF }, @@ -463,7 +463,7 @@      { 0x111E0, 0x111E0 },      { 0x111F5, 0x111FF },      { 0x11212, 0x11212 }, -    { 0x1123F, 0x1127F }, +    { 0x11242, 0x1127F },      { 0x11287, 0x11287 },      { 0x11289, 0x11289 },      { 0x1128E, 0x1128E }, @@ -515,7 +515,8 @@      { 0x119E5, 0x119FF },      { 0x11A48, 0x11A4F },      { 0x11AA3, 0x11AAF }, -    { 0x11AF9, 0x11BFF }, +    { 0x11AF9, 0x11AFF }, +    { 0x11B0A, 0x11BFF },      { 0x11C09, 0x11C09 },      { 0x11C37, 0x11C37 },      { 0x11C46, 0x11C4F }, @@ -536,7 +537,10 @@      { 0x11D92, 0x11D92 },      { 0x11D99, 0x11D9F },      { 0x11DAA, 0x11EDF }, -    { 0x11EF9, 0x11FAF }, +    { 0x11EF9, 0x11EFF }, +    { 0x11F11, 0x11F11 }, +    { 0x11F3B, 0x11F3D }, +    { 0x11F5A, 0x11FAF },      { 0x11FB1, 0x11FBF },      { 0x11FF2, 0x11FFE },      { 0x1239A, 0x123FF }, @@ -544,7 +548,8 @@      { 0x12475, 0x1247F },      { 0x12544, 0x12F8F },      { 0x12FF3, 0x12FFF }, -    { 0x1342F, 0x143FF }, +    { 0x13430, 0x1343F }, +    { 0x13456, 0x143FF },      { 0x14647, 0x167FF },      { 0x16A39, 0x16A3F },      { 0x16A5F, 0x16A5F }, @@ -570,8 +575,10 @@      { 0x1AFF4, 0x1AFF4 },      { 0x1AFFC, 0x1AFFC },      { 0x1AFFF, 0x1AFFF }, -    { 0x1B123, 0x1B14F }, -    { 0x1B153, 0x1B163 }, +    { 0x1B123, 0x1B131 }, +    { 0x1B133, 0x1B14F }, +    { 0x1B153, 0x1B154 }, +    { 0x1B156, 0x1B163 },      { 0x1B168, 0x1B16F },      { 0x1B2FC, 0x1BBFF },      { 0x1BC6B, 0x1BC6F }, @@ -586,7 +593,8 @@      { 0x1D127, 0x1D128 },      { 0x1D173, 0x1D17A },      { 0x1D1EB, 0x1D1FF }, -    { 0x1D246, 0x1D2DF }, +    { 0x1D246, 0x1D2BF }, +    { 0x1D2D4, 0x1D2DF },      { 0x1D2F4, 0x1D2FF },      { 0x1D357, 0x1D35F },      { 0x1D379, 0x1D3FF }, @@ -613,19 +621,23 @@      { 0x1DA8C, 0x1DA9A },      { 0x1DAA0, 0x1DAA0 },      { 0x1DAB0, 0x1DEFF }, -    { 0x1DF1F, 0x1DFFF }, +    { 0x1DF1F, 0x1DF24 }, +    { 0x1DF2B, 0x1DFFF },      { 0x1E007, 0x1E007 },      { 0x1E019, 0x1E01A },      { 0x1E022, 0x1E022 },      { 0x1E025, 0x1E025 }, -    { 0x1E02B, 0x1E0FF }, +    { 0x1E02B, 0x1E02F }, +    { 0x1E06E, 0x1E08E }, +    { 0x1E090, 0x1E0FF },      { 0x1E12D, 0x1E12F },      { 0x1E13E, 0x1E13F },      { 0x1E14A, 0x1E14D },      { 0x1E150, 0x1E28F },      { 0x1E2AF, 0x1E2BF },      { 0x1E2FA, 0x1E2FE }, -    { 0x1E300, 0x1E7DF }, +    { 0x1E300, 0x1E4CF }, +    { 0x1E4FA, 0x1E7DF },      { 0x1E7E7, 0x1E7E7 },      { 0x1E7EC, 0x1E7EC },      { 0x1E7EF, 0x1E7EF }, @@ -683,11 +695,11 @@      { 0x1F249, 0x1F24F },      { 0x1F252, 0x1F25F },      { 0x1F266, 0x1F2FF }, -    { 0x1F6D8, 0x1F6DC }, +    { 0x1F6D8, 0x1F6DB },      { 0x1F6ED, 0x1F6EF },      { 0x1F6FD, 0x1F6FF }, -    { 0x1F774, 0x1F77F }, -    { 0x1F7D9, 0x1F7DF }, +    { 0x1F777, 0x1F77A }, +    { 0x1F7DA, 0x1F7DF },      { 0x1F7EC, 0x1F7EF },      { 0x1F7F1, 0x1F7FF },      { 0x1F80C, 0x1F80F }, @@ -698,25 +710,24 @@      { 0x1F8B2, 0x1F8FF },      { 0x1FA54, 0x1FA5F },      { 0x1FA6E, 0x1FA6F }, -    { 0x1FA75, 0x1FA77 },      { 0x1FA7D, 0x1FA7F }, -    { 0x1FA87, 0x1FA8F }, -    { 0x1FAAD, 0x1FAAF }, -    { 0x1FABB, 0x1FABF }, -    { 0x1FAC6, 0x1FACF }, -    { 0x1FADA, 0x1FADF }, -    { 0x1FAE8, 0x1FAEF }, -    { 0x1FAF7, 0x1FAFF }, +    { 0x1FA89, 0x1FA8F }, +    { 0x1FABE, 0x1FABE }, +    { 0x1FAC6, 0x1FACD }, +    { 0x1FADC, 0x1FADF }, +    { 0x1FAE9, 0x1FAEF }, +    { 0x1FAF9, 0x1FAFF },      { 0x1FB93, 0x1FB93 },      { 0x1FBCB, 0x1FBEF },      { 0x1FBFA, 0x1FFFF },      { 0x2A6E0, 0x2A6FF }, -    { 0x2B739, 0x2B73F }, +    { 0x2B73A, 0x2B73F },      { 0x2B81E, 0x2B81F },      { 0x2CEA2, 0x2CEAF },      { 0x2EBE1, 0x2F7FF },      { 0x2FA1E, 0x2FFFF }, -    { 0x3134B, 0xE00FF }, +    { 0x3134B, 0x3134F }, +    { 0x323B0, 0xE00FF },      { 0xE01F0, 0x10FFFF }  #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_C) diff --git a/tests/unictype/test-categ_Cc.c b/tests/unictype/test-categ_Cc.c index b7061539..cfdbb48d 100644 --- a/tests/unictype/test-categ_Cc.c +++ b/tests/unictype/test-categ_Cc.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Cf.c b/tests/unictype/test-categ_Cf.c index 19923f34..e026f091 100644 --- a/tests/unictype/test-categ_Cf.c +++ b/tests/unictype/test-categ_Cf.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -33,7 +33,7 @@      { 0xFFF9, 0xFFFB },      { 0x110BD, 0x110BD },      { 0x110CD, 0x110CD }, -    { 0x13430, 0x13438 }, +    { 0x13430, 0x1343F },      { 0x1BCA0, 0x1BCA3 },      { 0x1D173, 0x1D17A },      { 0xE0001, 0xE0001 }, diff --git a/tests/unictype/test-categ_Cn.c b/tests/unictype/test-categ_Cn.c index e335553a..b173d392 100644 --- a/tests/unictype/test-categ_Cn.c +++ b/tests/unictype/test-categ_Cn.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -138,7 +138,7 @@      { 0x0CDF, 0x0CDF },      { 0x0CE4, 0x0CE5 },      { 0x0CF0, 0x0CF0 }, -    { 0x0CF3, 0x0CFF }, +    { 0x0CF4, 0x0CFF },      { 0x0D0D, 0x0D0D },      { 0x0D11, 0x0D11 },      { 0x0D45, 0x0D45 }, @@ -168,7 +168,7 @@      { 0x0EBE, 0x0EBF },      { 0x0EC5, 0x0EC5 },      { 0x0EC7, 0x0EC7 }, -    { 0x0ECE, 0x0ECF }, +    { 0x0ECF, 0x0ECF },      { 0x0EDA, 0x0EDB },      { 0x0EE0, 0x0EFF },      { 0x0F48, 0x0F48 }, @@ -438,7 +438,7 @@      { 0x10E7F, 0x10E7F },      { 0x10EAA, 0x10EAA },      { 0x10EAE, 0x10EAF }, -    { 0x10EB2, 0x10EFF }, +    { 0x10EB2, 0x10EFC },      { 0x10F28, 0x10F2F },      { 0x10F5A, 0x10F6F },      { 0x10F8A, 0x10FAF }, @@ -456,7 +456,7 @@      { 0x111E0, 0x111E0 },      { 0x111F5, 0x111FF },      { 0x11212, 0x11212 }, -    { 0x1123F, 0x1127F }, +    { 0x11242, 0x1127F },      { 0x11287, 0x11287 },      { 0x11289, 0x11289 },      { 0x1128E, 0x1128E }, @@ -508,7 +508,8 @@      { 0x119E5, 0x119FF },      { 0x11A48, 0x11A4F },      { 0x11AA3, 0x11AAF }, -    { 0x11AF9, 0x11BFF }, +    { 0x11AF9, 0x11AFF }, +    { 0x11B0A, 0x11BFF },      { 0x11C09, 0x11C09 },      { 0x11C37, 0x11C37 },      { 0x11C46, 0x11C4F }, @@ -529,7 +530,10 @@      { 0x11D92, 0x11D92 },      { 0x11D99, 0x11D9F },      { 0x11DAA, 0x11EDF }, -    { 0x11EF9, 0x11FAF }, +    { 0x11EF9, 0x11EFF }, +    { 0x11F11, 0x11F11 }, +    { 0x11F3B, 0x11F3D }, +    { 0x11F5A, 0x11FAF },      { 0x11FB1, 0x11FBF },      { 0x11FF2, 0x11FFE },      { 0x1239A, 0x123FF }, @@ -537,8 +541,7 @@      { 0x12475, 0x1247F },      { 0x12544, 0x12F8F },      { 0x12FF3, 0x12FFF }, -    { 0x1342F, 0x1342F }, -    { 0x13439, 0x143FF }, +    { 0x13456, 0x143FF },      { 0x14647, 0x167FF },      { 0x16A39, 0x16A3F },      { 0x16A5F, 0x16A5F }, @@ -564,8 +567,10 @@      { 0x1AFF4, 0x1AFF4 },      { 0x1AFFC, 0x1AFFC },      { 0x1AFFF, 0x1AFFF }, -    { 0x1B123, 0x1B14F }, -    { 0x1B153, 0x1B163 }, +    { 0x1B123, 0x1B131 }, +    { 0x1B133, 0x1B14F }, +    { 0x1B153, 0x1B154 }, +    { 0x1B156, 0x1B163 },      { 0x1B168, 0x1B16F },      { 0x1B2FC, 0x1BBFF },      { 0x1BC6B, 0x1BC6F }, @@ -579,7 +584,8 @@      { 0x1D0F6, 0x1D0FF },      { 0x1D127, 0x1D128 },      { 0x1D1EB, 0x1D1FF }, -    { 0x1D246, 0x1D2DF }, +    { 0x1D246, 0x1D2BF }, +    { 0x1D2D4, 0x1D2DF },      { 0x1D2F4, 0x1D2FF },      { 0x1D357, 0x1D35F },      { 0x1D379, 0x1D3FF }, @@ -606,19 +612,23 @@      { 0x1DA8C, 0x1DA9A },      { 0x1DAA0, 0x1DAA0 },      { 0x1DAB0, 0x1DEFF }, -    { 0x1DF1F, 0x1DFFF }, +    { 0x1DF1F, 0x1DF24 }, +    { 0x1DF2B, 0x1DFFF },      { 0x1E007, 0x1E007 },      { 0x1E019, 0x1E01A },      { 0x1E022, 0x1E022 },      { 0x1E025, 0x1E025 }, -    { 0x1E02B, 0x1E0FF }, +    { 0x1E02B, 0x1E02F }, +    { 0x1E06E, 0x1E08E }, +    { 0x1E090, 0x1E0FF },      { 0x1E12D, 0x1E12F },      { 0x1E13E, 0x1E13F },      { 0x1E14A, 0x1E14D },      { 0x1E150, 0x1E28F },      { 0x1E2AF, 0x1E2BF },      { 0x1E2FA, 0x1E2FE }, -    { 0x1E300, 0x1E7DF }, +    { 0x1E300, 0x1E4CF }, +    { 0x1E4FA, 0x1E7DF },      { 0x1E7E7, 0x1E7E7 },      { 0x1E7EC, 0x1E7EC },      { 0x1E7EF, 0x1E7EF }, @@ -676,11 +686,11 @@      { 0x1F249, 0x1F24F },      { 0x1F252, 0x1F25F },      { 0x1F266, 0x1F2FF }, -    { 0x1F6D8, 0x1F6DC }, +    { 0x1F6D8, 0x1F6DB },      { 0x1F6ED, 0x1F6EF },      { 0x1F6FD, 0x1F6FF }, -    { 0x1F774, 0x1F77F }, -    { 0x1F7D9, 0x1F7DF }, +    { 0x1F777, 0x1F77A }, +    { 0x1F7DA, 0x1F7DF },      { 0x1F7EC, 0x1F7EF },      { 0x1F7F1, 0x1F7FF },      { 0x1F80C, 0x1F80F }, @@ -691,25 +701,24 @@      { 0x1F8B2, 0x1F8FF },      { 0x1FA54, 0x1FA5F },      { 0x1FA6E, 0x1FA6F }, -    { 0x1FA75, 0x1FA77 },      { 0x1FA7D, 0x1FA7F }, -    { 0x1FA87, 0x1FA8F }, -    { 0x1FAAD, 0x1FAAF }, -    { 0x1FABB, 0x1FABF }, -    { 0x1FAC6, 0x1FACF }, -    { 0x1FADA, 0x1FADF }, -    { 0x1FAE8, 0x1FAEF }, -    { 0x1FAF7, 0x1FAFF }, +    { 0x1FA89, 0x1FA8F }, +    { 0x1FABE, 0x1FABE }, +    { 0x1FAC6, 0x1FACD }, +    { 0x1FADC, 0x1FADF }, +    { 0x1FAE9, 0x1FAEF }, +    { 0x1FAF9, 0x1FAFF },      { 0x1FB93, 0x1FB93 },      { 0x1FBCB, 0x1FBEF },      { 0x1FBFA, 0x1FFFF },      { 0x2A6E0, 0x2A6FF }, -    { 0x2B739, 0x2B73F }, +    { 0x2B73A, 0x2B73F },      { 0x2B81E, 0x2B81F },      { 0x2CEA2, 0x2CEAF },      { 0x2EBE1, 0x2F7FF },      { 0x2FA1E, 0x2FFFF }, -    { 0x3134B, 0xE0000 }, +    { 0x3134B, 0x3134F }, +    { 0x323B0, 0xE0000 },      { 0xE0002, 0xE001F },      { 0xE0080, 0xE00FF },      { 0xE01F0, 0xEFFFF }, diff --git a/tests/unictype/test-categ_Co.c b/tests/unictype/test-categ_Co.c index 9048685f..0878bab5 100644 --- a/tests/unictype/test-categ_Co.c +++ b/tests/unictype/test-categ_Co.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Cs.c b/tests/unictype/test-categ_Cs.c index 58943bcf..16d90395 100644 --- a/tests/unictype/test-categ_Cs.c +++ b/tests/unictype/test-categ_Cs.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_L.c b/tests/unictype/test-categ_L.c index 5a3a2ef1..a72b6f99 100644 --- a/tests/unictype/test-categ_L.c +++ b/tests/unictype/test-categ_L.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -486,6 +486,7 @@      { 0x111DC, 0x111DC },      { 0x11200, 0x11211 },      { 0x11213, 0x1122B }, +    { 0x1123F, 0x11240 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -548,11 +549,15 @@      { 0x11D6A, 0x11D89 },      { 0x11D98, 0x11D98 },      { 0x11EE0, 0x11EF2 }, +    { 0x11F02, 0x11F02 }, +    { 0x11F04, 0x11F10 }, +    { 0x11F12, 0x11F33 },      { 0x11FB0, 0x11FB0 },      { 0x12000, 0x12399 },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF0 }, -    { 0x13000, 0x1342E }, +    { 0x13000, 0x1342F }, +    { 0x13441, 0x13446 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -575,7 +580,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -613,11 +620,14 @@      { 0x1D7AA, 0x1D7C2 },      { 0x1D7C4, 0x1D7CB },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A }, +    { 0x1E030, 0x1E06D },      { 0x1E100, 0x1E12C },      { 0x1E137, 0x1E13D },      { 0x1E14E, 0x1E14E },      { 0x1E290, 0x1E2AD },      { 0x1E2C0, 0x1E2EB }, +    { 0x1E4D0, 0x1E4EB },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -659,12 +669,13 @@      { 0x1EEA5, 0x1EEA9 },      { 0x1EEAB, 0x1EEBB },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D }, -    { 0x30000, 0x3134A } +    { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF }  #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_L)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-categ_LC.c b/tests/unictype/test-categ_LC.c index 3f00ef13..166df6c8 100644 --- a/tests/unictype/test-categ_LC.c +++ b/tests/unictype/test-categ_LC.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -158,6 +158,7 @@      { 0x1D7C4, 0x1D7CB },      { 0x1DF00, 0x1DF09 },      { 0x1DF0B, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A },      { 0x1E900, 0x1E943 }  #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_LC) diff --git a/tests/unictype/test-categ_Ll.c b/tests/unictype/test-categ_Ll.c index 257b9827..7feba488 100644 --- a/tests/unictype/test-categ_Ll.c +++ b/tests/unictype/test-categ_Ll.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -673,6 +673,7 @@      { 0x1D7CB, 0x1D7CB },      { 0x1DF00, 0x1DF09 },      { 0x1DF0B, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A },      { 0x1E922, 0x1E943 }  #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_Ll) diff --git a/tests/unictype/test-categ_Lm.c b/tests/unictype/test-categ_Lm.c index 3e607167..c7a5b595 100644 --- a/tests/unictype/test-categ_Lm.c +++ b/tests/unictype/test-categ_Lm.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -84,7 +84,9 @@      { 0x1AFF0, 0x1AFF3 },      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE }, +    { 0x1E030, 0x1E06D },      { 0x1E137, 0x1E13D }, +    { 0x1E4EB, 0x1E4EB },      { 0x1E94B, 0x1E94B }  #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_Lm) diff --git a/tests/unictype/test-categ_Lo.c b/tests/unictype/test-categ_Lo.c index 72dba555..37009f81 100644 --- a/tests/unictype/test-categ_Lo.c +++ b/tests/unictype/test-categ_Lo.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -381,6 +381,7 @@      { 0x111DC, 0x111DC },      { 0x11200, 0x11211 },      { 0x11213, 0x1122B }, +    { 0x1123F, 0x11240 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -442,11 +443,15 @@      { 0x11D6A, 0x11D89 },      { 0x11D98, 0x11D98 },      { 0x11EE0, 0x11EF2 }, +    { 0x11F02, 0x11F02 }, +    { 0x11F04, 0x11F10 }, +    { 0x11F12, 0x11F33 },      { 0x11FB0, 0x11FB0 },      { 0x12000, 0x12399 },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF0 }, -    { 0x13000, 0x1342E }, +    { 0x13000, 0x1342F }, +    { 0x13441, 0x13446 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -461,7 +466,9 @@      { 0x18800, 0x18CD5 },      { 0x18D00, 0x18D08 },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -473,6 +480,7 @@      { 0x1E14E, 0x1E14E },      { 0x1E290, 0x1E2AD },      { 0x1E2C0, 0x1E2EB }, +    { 0x1E4D0, 0x1E4EA },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -512,12 +520,13 @@      { 0x1EEA5, 0x1EEA9 },      { 0x1EEAB, 0x1EEBB },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D }, -    { 0x30000, 0x3134A } +    { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF }  #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_Lo)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-categ_Lt.c b/tests/unictype/test-categ_Lt.c index 440e7b3b..96c0cce7 100644 --- a/tests/unictype/test-categ_Lt.c +++ b/tests/unictype/test-categ_Lt.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Lu.c b/tests/unictype/test-categ_Lu.c index 3cbf183f..14c15058 100644 --- a/tests/unictype/test-categ_Lu.c +++ b/tests/unictype/test-categ_Lu.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_M.c b/tests/unictype/test-categ_M.c index f6498ef7..e872f50c 100644 --- a/tests/unictype/test-categ_M.c +++ b/tests/unictype/test-categ_M.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -97,6 +97,7 @@      { 0x0CCA, 0x0CCD },      { 0x0CD5, 0x0CD6 },      { 0x0CE2, 0x0CE3 }, +    { 0x0CF3, 0x0CF3 },      { 0x0D00, 0x0D03 },      { 0x0D3B, 0x0D3C },      { 0x0D3E, 0x0D44 }, @@ -115,7 +116,7 @@      { 0x0E47, 0x0E4E },      { 0x0EB1, 0x0EB1 },      { 0x0EB4, 0x0EBC }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0F18, 0x0F19 },      { 0x0F35, 0x0F35 },      { 0x0F37, 0x0F37 }, @@ -217,6 +218,7 @@      { 0x10AE5, 0x10AE6 },      { 0x10D24, 0x10D27 },      { 0x10EAB, 0x10EAC }, +    { 0x10EFD, 0x10EFF },      { 0x10F46, 0x10F50 },      { 0x10F82, 0x10F85 },      { 0x11000, 0x11002 }, @@ -236,6 +238,7 @@      { 0x111CE, 0x111CF },      { 0x1122C, 0x11237 },      { 0x1123E, 0x1123E }, +    { 0x11241, 0x11241 },      { 0x112DF, 0x112EA },      { 0x11300, 0x11303 },      { 0x1133B, 0x1133C }, @@ -283,6 +286,12 @@      { 0x11D90, 0x11D91 },      { 0x11D93, 0x11D97 },      { 0x11EF3, 0x11EF6 }, +    { 0x11F00, 0x11F01 }, +    { 0x11F03, 0x11F03 }, +    { 0x11F34, 0x11F3A }, +    { 0x11F3E, 0x11F42 }, +    { 0x13440, 0x13440 }, +    { 0x13447, 0x13455 },      { 0x16AF0, 0x16AF4 },      { 0x16B30, 0x16B36 },      { 0x16F4F, 0x16F4F }, @@ -310,9 +319,11 @@      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E08F, 0x1E08F },      { 0x1E130, 0x1E136 },      { 0x1E2AE, 0x1E2AE },      { 0x1E2EC, 0x1E2EF }, +    { 0x1E4EC, 0x1E4EF },      { 0x1E8D0, 0x1E8D6 },      { 0x1E944, 0x1E94A },      { 0xE0100, 0xE01EF } diff --git a/tests/unictype/test-categ_Mc.c b/tests/unictype/test-categ_Mc.c index 0dde508f..1b2b50cf 100644 --- a/tests/unictype/test-categ_Mc.c +++ b/tests/unictype/test-categ_Mc.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -52,6 +52,7 @@      { 0x0CC7, 0x0CC8 },      { 0x0CCA, 0x0CCB },      { 0x0CD5, 0x0CD6 }, +    { 0x0CF3, 0x0CF3 },      { 0x0D02, 0x0D03 },      { 0x0D3E, 0x0D40 },      { 0x0D46, 0x0D48 }, @@ -190,6 +191,10 @@      { 0x11D93, 0x11D94 },      { 0x11D96, 0x11D96 },      { 0x11EF5, 0x11EF6 }, +    { 0x11F03, 0x11F03 }, +    { 0x11F34, 0x11F35 }, +    { 0x11F3E, 0x11F3F }, +    { 0x11F41, 0x11F41 },      { 0x16F51, 0x16F87 },      { 0x16FF0, 0x16FF1 },      { 0x1D165, 0x1D166 }, diff --git a/tests/unictype/test-categ_Me.c b/tests/unictype/test-categ_Me.c index a8dcd26a..d0ad5427 100644 --- a/tests/unictype/test-categ_Me.c +++ b/tests/unictype/test-categ_Me.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Mn.c b/tests/unictype/test-categ_Mn.c index 5c07be1c..cff7fde2 100644 --- a/tests/unictype/test-categ_Mn.c +++ b/tests/unictype/test-categ_Mn.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -109,7 +109,7 @@      { 0x0E47, 0x0E4E },      { 0x0EB1, 0x0EB1 },      { 0x0EB4, 0x0EBC }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0F18, 0x0F19 },      { 0x0F35, 0x0F35 },      { 0x0F37, 0x0F37 }, @@ -240,6 +240,7 @@      { 0x10AE5, 0x10AE6 },      { 0x10D24, 0x10D27 },      { 0x10EAB, 0x10EAC }, +    { 0x10EFD, 0x10EFF },      { 0x10F46, 0x10F50 },      { 0x10F82, 0x10F85 },      { 0x11001, 0x11001 }, @@ -262,6 +263,7 @@      { 0x11234, 0x11234 },      { 0x11236, 0x11237 },      { 0x1123E, 0x1123E }, +    { 0x11241, 0x11241 },      { 0x112DF, 0x112DF },      { 0x112E3, 0x112EA },      { 0x11300, 0x11301 }, @@ -323,6 +325,12 @@      { 0x11D95, 0x11D95 },      { 0x11D97, 0x11D97 },      { 0x11EF3, 0x11EF4 }, +    { 0x11F00, 0x11F01 }, +    { 0x11F36, 0x11F3A }, +    { 0x11F40, 0x11F40 }, +    { 0x11F42, 0x11F42 }, +    { 0x13440, 0x13440 }, +    { 0x13447, 0x13455 },      { 0x16AF0, 0x16AF4 },      { 0x16B30, 0x16B36 },      { 0x16F4F, 0x16F4F }, @@ -347,9 +355,11 @@      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E08F, 0x1E08F },      { 0x1E130, 0x1E136 },      { 0x1E2AE, 0x1E2AE },      { 0x1E2EC, 0x1E2EF }, +    { 0x1E4EC, 0x1E4EF },      { 0x1E8D0, 0x1E8D6 },      { 0x1E944, 0x1E94A },      { 0xE0100, 0xE01EF } diff --git a/tests/unictype/test-categ_N.c b/tests/unictype/test-categ_N.c index 77e7cda5..ae8945c1 100644 --- a/tests/unictype/test-categ_N.c +++ b/tests/unictype/test-categ_N.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -130,6 +130,7 @@      { 0x11C50, 0x11C6C },      { 0x11D50, 0x11D59 },      { 0x11DA0, 0x11DA9 }, +    { 0x11F50, 0x11F59 },      { 0x11FC0, 0x11FD4 },      { 0x12400, 0x1246E },      { 0x16A60, 0x16A69 }, @@ -137,11 +138,13 @@      { 0x16B50, 0x16B59 },      { 0x16B5B, 0x16B61 },      { 0x16E80, 0x16E96 }, +    { 0x1D2C0, 0x1D2D3 },      { 0x1D2E0, 0x1D2F3 },      { 0x1D360, 0x1D378 },      { 0x1D7CE, 0x1D7FF },      { 0x1E140, 0x1E149 },      { 0x1E2F0, 0x1E2F9 }, +    { 0x1E4F0, 0x1E4F9 },      { 0x1E8C7, 0x1E8CF },      { 0x1E950, 0x1E959 },      { 0x1EC71, 0x1ECAB }, diff --git a/tests/unictype/test-categ_Nd.c b/tests/unictype/test-categ_Nd.c index bcf4cb99..470c54e4 100644 --- a/tests/unictype/test-categ_Nd.c +++ b/tests/unictype/test-categ_Nd.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -71,12 +71,14 @@      { 0x11C50, 0x11C59 },      { 0x11D50, 0x11D59 },      { 0x11DA0, 0x11DA9 }, +    { 0x11F50, 0x11F59 },      { 0x16A60, 0x16A69 },      { 0x16AC0, 0x16AC9 },      { 0x16B50, 0x16B59 },      { 0x1D7CE, 0x1D7FF },      { 0x1E140, 0x1E149 },      { 0x1E2F0, 0x1E2F9 }, +    { 0x1E4F0, 0x1E4F9 },      { 0x1E950, 0x1E959 },      { 0x1FBF0, 0x1FBF9 } diff --git a/tests/unictype/test-categ_Nl.c b/tests/unictype/test-categ_Nl.c index 5bbd4dd0..55dc61bb 100644 --- a/tests/unictype/test-categ_Nl.c +++ b/tests/unictype/test-categ_Nl.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_No.c b/tests/unictype/test-categ_No.c index 5d47eb3d..4d368b91 100644 --- a/tests/unictype/test-categ_No.c +++ b/tests/unictype/test-categ_No.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -79,6 +79,7 @@      { 0x11FC0, 0x11FD4 },      { 0x16B5B, 0x16B61 },      { 0x16E80, 0x16E96 }, +    { 0x1D2C0, 0x1D2D3 },      { 0x1D2E0, 0x1D2F3 },      { 0x1D360, 0x1D378 },      { 0x1E8C7, 0x1E8CF }, diff --git a/tests/unictype/test-categ_P.c b/tests/unictype/test-categ_P.c index 374659b1..f2e8532b 100644 --- a/tests/unictype/test-categ_P.c +++ b/tests/unictype/test-categ_P.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -191,9 +191,11 @@      { 0x11A3F, 0x11A46 },      { 0x11A9A, 0x11A9C },      { 0x11A9E, 0x11AA2 }, +    { 0x11B00, 0x11B09 },      { 0x11C41, 0x11C45 },      { 0x11C70, 0x11C71 },      { 0x11EF7, 0x11EF8 }, +    { 0x11F43, 0x11F4F },      { 0x11FFF, 0x11FFF },      { 0x12470, 0x12474 },      { 0x12FF1, 0x12FF2 }, diff --git a/tests/unictype/test-categ_Pc.c b/tests/unictype/test-categ_Pc.c index 7e3b77ca..9d0ae7dc 100644 --- a/tests/unictype/test-categ_Pc.c +++ b/tests/unictype/test-categ_Pc.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Pd.c b/tests/unictype/test-categ_Pd.c index a02f1f15..d27a409a 100644 --- a/tests/unictype/test-categ_Pd.c +++ b/tests/unictype/test-categ_Pd.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Pe.c b/tests/unictype/test-categ_Pe.c index f5534dde..7dda519b 100644 --- a/tests/unictype/test-categ_Pe.c +++ b/tests/unictype/test-categ_Pe.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Pf.c b/tests/unictype/test-categ_Pf.c index 87c465df..68cdb407 100644 --- a/tests/unictype/test-categ_Pf.c +++ b/tests/unictype/test-categ_Pf.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Pi.c b/tests/unictype/test-categ_Pi.c index 703b1cd7..bd8d5ebe 100644 --- a/tests/unictype/test-categ_Pi.c +++ b/tests/unictype/test-categ_Pi.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Po.c b/tests/unictype/test-categ_Po.c index e32d4ade..53a782f5 100644 --- a/tests/unictype/test-categ_Po.c +++ b/tests/unictype/test-categ_Po.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -187,9 +187,11 @@      { 0x11A3F, 0x11A46 },      { 0x11A9A, 0x11A9C },      { 0x11A9E, 0x11AA2 }, +    { 0x11B00, 0x11B09 },      { 0x11C41, 0x11C45 },      { 0x11C70, 0x11C71 },      { 0x11EF7, 0x11EF8 }, +    { 0x11F43, 0x11F4F },      { 0x11FFF, 0x11FFF },      { 0x12470, 0x12474 },      { 0x12FF1, 0x12FF2 }, diff --git a/tests/unictype/test-categ_Ps.c b/tests/unictype/test-categ_Ps.c index 502199e4..e423e409 100644 --- a/tests/unictype/test-categ_Ps.c +++ b/tests/unictype/test-categ_Ps.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_S.c b/tests/unictype/test-categ_S.c index 59e991e8..d1312da5 100644 --- a/tests/unictype/test-categ_S.c +++ b/tests/unictype/test-categ_S.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -226,10 +226,10 @@      { 0x1F250, 0x1F251 },      { 0x1F260, 0x1F265 },      { 0x1F300, 0x1F6D7 }, -    { 0x1F6DD, 0x1F6EC }, +    { 0x1F6DC, 0x1F6EC },      { 0x1F6F0, 0x1F6FC }, -    { 0x1F700, 0x1F773 }, -    { 0x1F780, 0x1F7D8 }, +    { 0x1F700, 0x1F776 }, +    { 0x1F77B, 0x1F7D9 },      { 0x1F7E0, 0x1F7EB },      { 0x1F7F0, 0x1F7F0 },      { 0x1F800, 0x1F80B }, @@ -240,15 +240,13 @@      { 0x1F8B0, 0x1F8B1 },      { 0x1F900, 0x1FA53 },      { 0x1FA60, 0x1FA6D }, -    { 0x1FA70, 0x1FA74 }, -    { 0x1FA78, 0x1FA7C }, -    { 0x1FA80, 0x1FA86 }, -    { 0x1FA90, 0x1FAAC }, -    { 0x1FAB0, 0x1FABA }, -    { 0x1FAC0, 0x1FAC5 }, -    { 0x1FAD0, 0x1FAD9 }, -    { 0x1FAE0, 0x1FAE7 }, -    { 0x1FAF0, 0x1FAF6 }, +    { 0x1FA70, 0x1FA7C }, +    { 0x1FA80, 0x1FA88 }, +    { 0x1FA90, 0x1FABD }, +    { 0x1FABF, 0x1FAC5 }, +    { 0x1FACE, 0x1FADB }, +    { 0x1FAE0, 0x1FAE8 }, +    { 0x1FAF0, 0x1FAF8 },      { 0x1FB00, 0x1FB92 },      { 0x1FB94, 0x1FBCA } diff --git a/tests/unictype/test-categ_Sc.c b/tests/unictype/test-categ_Sc.c index 391014bd..9057fa9f 100644 --- a/tests/unictype/test-categ_Sc.c +++ b/tests/unictype/test-categ_Sc.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Sk.c b/tests/unictype/test-categ_Sk.c index ea9287f6..cf8f781d 100644 --- a/tests/unictype/test-categ_Sk.c +++ b/tests/unictype/test-categ_Sk.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Sm.c b/tests/unictype/test-categ_Sm.c index 3143afc5..02a70194 100644 --- a/tests/unictype/test-categ_Sm.c +++ b/tests/unictype/test-categ_Sm.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_So.c b/tests/unictype/test-categ_So.c index 9d15958c..4f9b3eae 100644 --- a/tests/unictype/test-categ_So.c +++ b/tests/unictype/test-categ_So.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -178,10 +178,10 @@      { 0x1F260, 0x1F265 },      { 0x1F300, 0x1F3FA },      { 0x1F400, 0x1F6D7 }, -    { 0x1F6DD, 0x1F6EC }, +    { 0x1F6DC, 0x1F6EC },      { 0x1F6F0, 0x1F6FC }, -    { 0x1F700, 0x1F773 }, -    { 0x1F780, 0x1F7D8 }, +    { 0x1F700, 0x1F776 }, +    { 0x1F77B, 0x1F7D9 },      { 0x1F7E0, 0x1F7EB },      { 0x1F7F0, 0x1F7F0 },      { 0x1F800, 0x1F80B }, @@ -192,15 +192,13 @@      { 0x1F8B0, 0x1F8B1 },      { 0x1F900, 0x1FA53 },      { 0x1FA60, 0x1FA6D }, -    { 0x1FA70, 0x1FA74 }, -    { 0x1FA78, 0x1FA7C }, -    { 0x1FA80, 0x1FA86 }, -    { 0x1FA90, 0x1FAAC }, -    { 0x1FAB0, 0x1FABA }, -    { 0x1FAC0, 0x1FAC5 }, -    { 0x1FAD0, 0x1FAD9 }, -    { 0x1FAE0, 0x1FAE7 }, -    { 0x1FAF0, 0x1FAF6 }, +    { 0x1FA70, 0x1FA7C }, +    { 0x1FA80, 0x1FA88 }, +    { 0x1FA90, 0x1FABD }, +    { 0x1FABF, 0x1FAC5 }, +    { 0x1FACE, 0x1FADB }, +    { 0x1FAE0, 0x1FAE8 }, +    { 0x1FAF0, 0x1FAF8 },      { 0x1FB00, 0x1FB92 },      { 0x1FB94, 0x1FBCA } diff --git a/tests/unictype/test-categ_Z.c b/tests/unictype/test-categ_Z.c index a53249f7..3e0ec555 100644 --- a/tests/unictype/test-categ_Z.c +++ b/tests/unictype/test-categ_Z.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Zl.c b/tests/unictype/test-categ_Zl.c index 79037b8b..92725a57 100644 --- a/tests/unictype/test-categ_Zl.c +++ b/tests/unictype/test-categ_Zl.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Zp.c b/tests/unictype/test-categ_Zp.c index 6f998ed9..2c69c6cc 100644 --- a/tests/unictype/test-categ_Zp.c +++ b/tests/unictype/test-categ_Zp.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_Zs.c b/tests/unictype/test-categ_Zs.c index 822e63be..da8a54b5 100644 --- a/tests/unictype/test-categ_Zs.c +++ b/tests/unictype/test-categ_Zs.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-categ_and.c b/tests/unictype/test-categ_and.c index ff955288..ace3ccb8 100644 --- a/tests/unictype/test-categ_and.c +++ b/tests/unictype/test-categ_and.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-categ_and_not.c b/tests/unictype/test-categ_and_not.c index a5bb3dd7..74c75aee 100644 --- a/tests/unictype/test-categ_and_not.c +++ b/tests/unictype/test-categ_and_not.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-categ_byname.c b/tests/unictype/test-categ_byname.c index b8b9b4e7..2489caaa 100644 --- a/tests/unictype/test-categ_byname.c +++ b/tests/unictype/test-categ_byname.c @@ -3,7 +3,7 @@     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 +   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, @@ -18,7 +18,6 @@  #include "unictype.h" -#include <stdbool.h>  #include <string.h>  #include "macros.h" diff --git a/tests/unictype/test-categ_longname.c b/tests/unictype/test-categ_longname.c index 2ae8aa69..d332b280 100644 --- a/tests/unictype/test-categ_longname.c +++ b/tests/unictype/test-categ_longname.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-categ_name.c b/tests/unictype/test-categ_name.c index a89500b0..4e5143bb 100644 --- a/tests/unictype/test-categ_name.c +++ b/tests/unictype/test-categ_name.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-categ_none.c b/tests/unictype/test-categ_none.c index 436015ac..913011a5 100644 --- a/tests/unictype/test-categ_none.c +++ b/tests/unictype/test-categ_none.c @@ -3,7 +3,7 @@     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 +   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, @@ -25,11 +25,18 @@  int  main ()  { +  /* This test cannot be compiled on platforms on which _UC_CATEGORY_NONE +     is not exported from the libunistring shared library.  For now, +     MSVC is the only platform where this is a problem.  */ +#if !defined _MSC_VER +    uc_general_category_t ct = _UC_CATEGORY_NONE;    unsigned int c;    for (c = 0; c < 0x110000; c++)      ASSERT (!uc_is_general_category (c, ct)); +#endif +    return 0;  } diff --git a/tests/unictype/test-categ_of.c b/tests/unictype/test-categ_of.c index c7d916b2..d19a510c 100644 --- a/tests/unictype/test-categ_of.c +++ b/tests/unictype/test-categ_of.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-categ_or.c b/tests/unictype/test-categ_or.c index 5667688a..3fd9bd5a 100644 --- a/tests/unictype/test-categ_or.c +++ b/tests/unictype/test-categ_or.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-categ_test_withtable.c b/tests/unictype/test-categ_test_withtable.c index 3c5d66a4..df25cb87 100644 --- a/tests/unictype/test-categ_test_withtable.c +++ b/tests/unictype/test-categ_test_withtable.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-combiningclass.c b/tests/unictype/test-combiningclass.c index 9e80b1d8..92348feb 100644 --- a/tests/unictype/test-combiningclass.c +++ b/tests/unictype/test-combiningclass.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-combiningclass_byname.c b/tests/unictype/test-combiningclass_byname.c index 68dee346..0d56ca34 100644 --- a/tests/unictype/test-combiningclass_byname.c +++ b/tests/unictype/test-combiningclass_byname.c @@ -4,7 +4,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unictype/test-combiningclass_longname.c b/tests/unictype/test-combiningclass_longname.c index b62f342d..29164624 100644 --- a/tests/unictype/test-combiningclass_longname.c +++ b/tests/unictype/test-combiningclass_longname.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-combiningclass_name.c b/tests/unictype/test-combiningclass_name.c index a17ff408..6521976a 100644 --- a/tests/unictype/test-combiningclass_name.c +++ b/tests/unictype/test-combiningclass_name.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-ctype_alnum.c b/tests/unictype/test-ctype_alnum.c index a39d35b7..7947a92b 100644 --- a/tests/unictype/test-ctype_alnum.c +++ b/tests/unictype/test-ctype_alnum.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -516,6 +516,7 @@      { 0x111DC, 0x111DC },      { 0x11200, 0x11211 },      { 0x11213, 0x1122B }, +    { 0x1123F, 0x11240 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -588,12 +589,17 @@      { 0x11D98, 0x11D98 },      { 0x11DA0, 0x11DA9 },      { 0x11EE0, 0x11EF2 }, +    { 0x11F02, 0x11F02 }, +    { 0x11F04, 0x11F10 }, +    { 0x11F12, 0x11F33 }, +    { 0x11F50, 0x11F59 },      { 0x11FB0, 0x11FB0 },      { 0x12000, 0x12399 },      { 0x12400, 0x1246E },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF0 }, -    { 0x13000, 0x1342E }, +    { 0x13000, 0x1342F }, +    { 0x13441, 0x13446 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -619,7 +625,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -658,6 +666,8 @@      { 0x1D7C4, 0x1D7CB },      { 0x1D7CE, 0x1D7FF },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A }, +    { 0x1E030, 0x1E06D },      { 0x1E100, 0x1E12C },      { 0x1E137, 0x1E13D },      { 0x1E140, 0x1E149 }, @@ -665,6 +675,8 @@      { 0x1E290, 0x1E2AD },      { 0x1E2C0, 0x1E2EB },      { 0x1E2F0, 0x1E2F9 }, +    { 0x1E4D0, 0x1E4EB }, +    { 0x1E4F0, 0x1E4F9 },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -714,12 +726,13 @@      { 0x1F1E6, 0x1F1FF },      { 0x1FBF0, 0x1FBF9 },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D }, -    { 0x30000, 0x3134A } +    { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF }  #define PREDICATE(c) uc_is_alnum (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-ctype_alpha.c b/tests/unictype/test-ctype_alpha.c index 19153d3d..284d964e 100644 --- a/tests/unictype/test-ctype_alpha.c +++ b/tests/unictype/test-ctype_alpha.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -515,6 +515,7 @@      { 0x111DC, 0x111DC },      { 0x11200, 0x11211 },      { 0x11213, 0x1122B }, +    { 0x1123F, 0x11240 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -587,12 +588,17 @@      { 0x11D98, 0x11D98 },      { 0x11DA0, 0x11DA9 },      { 0x11EE0, 0x11EF2 }, +    { 0x11F02, 0x11F02 }, +    { 0x11F04, 0x11F10 }, +    { 0x11F12, 0x11F33 }, +    { 0x11F50, 0x11F59 },      { 0x11FB0, 0x11FB0 },      { 0x12000, 0x12399 },      { 0x12400, 0x1246E },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF0 }, -    { 0x13000, 0x1342E }, +    { 0x13000, 0x1342F }, +    { 0x13441, 0x13446 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -618,7 +624,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -657,6 +665,8 @@      { 0x1D7C4, 0x1D7CB },      { 0x1D7CE, 0x1D7FF },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A }, +    { 0x1E030, 0x1E06D },      { 0x1E100, 0x1E12C },      { 0x1E137, 0x1E13D },      { 0x1E140, 0x1E149 }, @@ -664,6 +674,8 @@      { 0x1E290, 0x1E2AD },      { 0x1E2C0, 0x1E2EB },      { 0x1E2F0, 0x1E2F9 }, +    { 0x1E4D0, 0x1E4EB }, +    { 0x1E4F0, 0x1E4F9 },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -713,12 +725,13 @@      { 0x1F1E6, 0x1F1FF },      { 0x1FBF0, 0x1FBF9 },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D }, -    { 0x30000, 0x3134A } +    { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF }  #define PREDICATE(c) uc_is_alpha (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-ctype_blank.c b/tests/unictype/test-ctype_blank.c index 13e60346..4824fe73 100644 --- a/tests/unictype/test-ctype_blank.c +++ b/tests/unictype/test-ctype_blank.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-ctype_cntrl.c b/tests/unictype/test-ctype_cntrl.c index 4b8423ae..d32c701d 100644 --- a/tests/unictype/test-ctype_cntrl.c +++ b/tests/unictype/test-ctype_cntrl.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-ctype_digit.c b/tests/unictype/test-ctype_digit.c index 9438f04d..ccda557f 100644 --- a/tests/unictype/test-ctype_digit.c +++ b/tests/unictype/test-ctype_digit.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-ctype_graph.c b/tests/unictype/test-ctype_graph.c index 45782e56..16ab878a 100644 --- a/tests/unictype/test-ctype_graph.c +++ b/tests/unictype/test-ctype_graph.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -139,7 +139,7 @@      { 0x0CDD, 0x0CDE },      { 0x0CE0, 0x0CE3 },      { 0x0CE6, 0x0CEF }, -    { 0x0CF1, 0x0CF2 }, +    { 0x0CF1, 0x0CF3 },      { 0x0D00, 0x0D0C },      { 0x0D0E, 0x0D10 },      { 0x0D12, 0x0D44 }, @@ -169,7 +169,7 @@      { 0x0EA7, 0x0EBD },      { 0x0EC0, 0x0EC4 },      { 0x0EC6, 0x0EC6 }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0ED0, 0x0ED9 },      { 0x0EDC, 0x0EDF },      { 0x0F00, 0x0F47 }, @@ -444,7 +444,7 @@      { 0x10E80, 0x10EA9 },      { 0x10EAB, 0x10EAD },      { 0x10EB0, 0x10EB1 }, -    { 0x10F00, 0x10F27 }, +    { 0x10EFD, 0x10F27 },      { 0x10F30, 0x10F59 },      { 0x10F70, 0x10F89 },      { 0x10FB0, 0x10FCB }, @@ -461,7 +461,7 @@      { 0x11180, 0x111DF },      { 0x111E1, 0x111F4 },      { 0x11200, 0x11211 }, -    { 0x11213, 0x1123E }, +    { 0x11213, 0x11241 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -514,6 +514,7 @@      { 0x11A00, 0x11A47 },      { 0x11A50, 0x11AA2 },      { 0x11AB0, 0x11AF8 }, +    { 0x11B00, 0x11B09 },      { 0x11C00, 0x11C08 },      { 0x11C0A, 0x11C36 },      { 0x11C38, 0x11C45 }, @@ -535,6 +536,9 @@      { 0x11D93, 0x11D98 },      { 0x11DA0, 0x11DA9 },      { 0x11EE0, 0x11EF8 }, +    { 0x11F00, 0x11F10 }, +    { 0x11F12, 0x11F3A }, +    { 0x11F3E, 0x11F59 },      { 0x11FB0, 0x11FB0 },      { 0x11FC0, 0x11FF1 },      { 0x11FFF, 0x12399 }, @@ -542,8 +546,7 @@      { 0x12470, 0x12474 },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF2 }, -    { 0x13000, 0x1342E }, -    { 0x13430, 0x13438 }, +    { 0x13000, 0x13455 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -570,7 +573,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -585,6 +590,7 @@      { 0x1D100, 0x1D126 },      { 0x1D129, 0x1D1EA },      { 0x1D200, 0x1D245 }, +    { 0x1D2C0, 0x1D2D3 },      { 0x1D2E0, 0x1D2F3 },      { 0x1D300, 0x1D356 },      { 0x1D360, 0x1D378 }, @@ -612,11 +618,14 @@      { 0x1DA9B, 0x1DA9F },      { 0x1DAA1, 0x1DAAF },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A },      { 0x1E000, 0x1E006 },      { 0x1E008, 0x1E018 },      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E030, 0x1E06D }, +    { 0x1E08F, 0x1E08F },      { 0x1E100, 0x1E12C },      { 0x1E130, 0x1E13D },      { 0x1E140, 0x1E149 }, @@ -624,6 +633,7 @@      { 0x1E290, 0x1E2AE },      { 0x1E2C0, 0x1E2F9 },      { 0x1E2FF, 0x1E2FF }, +    { 0x1E4D0, 0x1E4F9 },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -682,10 +692,10 @@      { 0x1F250, 0x1F251 },      { 0x1F260, 0x1F265 },      { 0x1F300, 0x1F6D7 }, -    { 0x1F6DD, 0x1F6EC }, +    { 0x1F6DC, 0x1F6EC },      { 0x1F6F0, 0x1F6FC }, -    { 0x1F700, 0x1F773 }, -    { 0x1F780, 0x1F7D8 }, +    { 0x1F700, 0x1F776 }, +    { 0x1F77B, 0x1F7D9 },      { 0x1F7E0, 0x1F7EB },      { 0x1F7F0, 0x1F7F0 },      { 0x1F800, 0x1F80B }, @@ -696,25 +706,24 @@      { 0x1F8B0, 0x1F8B1 },      { 0x1F900, 0x1FA53 },      { 0x1FA60, 0x1FA6D }, -    { 0x1FA70, 0x1FA74 }, -    { 0x1FA78, 0x1FA7C }, -    { 0x1FA80, 0x1FA86 }, -    { 0x1FA90, 0x1FAAC }, -    { 0x1FAB0, 0x1FABA }, -    { 0x1FAC0, 0x1FAC5 }, -    { 0x1FAD0, 0x1FAD9 }, -    { 0x1FAE0, 0x1FAE7 }, -    { 0x1FAF0, 0x1FAF6 }, +    { 0x1FA70, 0x1FA7C }, +    { 0x1FA80, 0x1FA88 }, +    { 0x1FA90, 0x1FABD }, +    { 0x1FABF, 0x1FAC5 }, +    { 0x1FACE, 0x1FADB }, +    { 0x1FAE0, 0x1FAE8 }, +    { 0x1FAF0, 0x1FAF8 },      { 0x1FB00, 0x1FB92 },      { 0x1FB94, 0x1FBCA },      { 0x1FBF0, 0x1FBF9 },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D },      { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF },      { 0xE0001, 0xE0001 },      { 0xE0020, 0xE007F },      { 0xE0100, 0xE01EF }, diff --git a/tests/unictype/test-ctype_lower.c b/tests/unictype/test-ctype_lower.c index 9bcc0573..f8fceb33 100644 --- a/tests/unictype/test-ctype_lower.c +++ b/tests/unictype/test-ctype_lower.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-ctype_print.c b/tests/unictype/test-ctype_print.c index 814c8bc1..dad6b07b 100644 --- a/tests/unictype/test-ctype_print.c +++ b/tests/unictype/test-ctype_print.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -139,7 +139,7 @@      { 0x0CDD, 0x0CDE },      { 0x0CE0, 0x0CE3 },      { 0x0CE6, 0x0CEF }, -    { 0x0CF1, 0x0CF2 }, +    { 0x0CF1, 0x0CF3 },      { 0x0D00, 0x0D0C },      { 0x0D0E, 0x0D10 },      { 0x0D12, 0x0D44 }, @@ -169,7 +169,7 @@      { 0x0EA7, 0x0EBD },      { 0x0EC0, 0x0EC4 },      { 0x0EC6, 0x0EC6 }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0ED0, 0x0ED9 },      { 0x0EDC, 0x0EDF },      { 0x0F00, 0x0F47 }, @@ -441,7 +441,7 @@      { 0x10E80, 0x10EA9 },      { 0x10EAB, 0x10EAD },      { 0x10EB0, 0x10EB1 }, -    { 0x10F00, 0x10F27 }, +    { 0x10EFD, 0x10F27 },      { 0x10F30, 0x10F59 },      { 0x10F70, 0x10F89 },      { 0x10FB0, 0x10FCB }, @@ -458,7 +458,7 @@      { 0x11180, 0x111DF },      { 0x111E1, 0x111F4 },      { 0x11200, 0x11211 }, -    { 0x11213, 0x1123E }, +    { 0x11213, 0x11241 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -511,6 +511,7 @@      { 0x11A00, 0x11A47 },      { 0x11A50, 0x11AA2 },      { 0x11AB0, 0x11AF8 }, +    { 0x11B00, 0x11B09 },      { 0x11C00, 0x11C08 },      { 0x11C0A, 0x11C36 },      { 0x11C38, 0x11C45 }, @@ -532,6 +533,9 @@      { 0x11D93, 0x11D98 },      { 0x11DA0, 0x11DA9 },      { 0x11EE0, 0x11EF8 }, +    { 0x11F00, 0x11F10 }, +    { 0x11F12, 0x11F3A }, +    { 0x11F3E, 0x11F59 },      { 0x11FB0, 0x11FB0 },      { 0x11FC0, 0x11FF1 },      { 0x11FFF, 0x12399 }, @@ -539,8 +543,7 @@      { 0x12470, 0x12474 },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF2 }, -    { 0x13000, 0x1342E }, -    { 0x13430, 0x13438 }, +    { 0x13000, 0x13455 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -567,7 +570,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -582,6 +587,7 @@      { 0x1D100, 0x1D126 },      { 0x1D129, 0x1D1EA },      { 0x1D200, 0x1D245 }, +    { 0x1D2C0, 0x1D2D3 },      { 0x1D2E0, 0x1D2F3 },      { 0x1D300, 0x1D356 },      { 0x1D360, 0x1D378 }, @@ -609,11 +615,14 @@      { 0x1DA9B, 0x1DA9F },      { 0x1DAA1, 0x1DAAF },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A },      { 0x1E000, 0x1E006 },      { 0x1E008, 0x1E018 },      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E030, 0x1E06D }, +    { 0x1E08F, 0x1E08F },      { 0x1E100, 0x1E12C },      { 0x1E130, 0x1E13D },      { 0x1E140, 0x1E149 }, @@ -621,6 +630,7 @@      { 0x1E290, 0x1E2AE },      { 0x1E2C0, 0x1E2F9 },      { 0x1E2FF, 0x1E2FF }, +    { 0x1E4D0, 0x1E4F9 },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -679,10 +689,10 @@      { 0x1F250, 0x1F251 },      { 0x1F260, 0x1F265 },      { 0x1F300, 0x1F6D7 }, -    { 0x1F6DD, 0x1F6EC }, +    { 0x1F6DC, 0x1F6EC },      { 0x1F6F0, 0x1F6FC }, -    { 0x1F700, 0x1F773 }, -    { 0x1F780, 0x1F7D8 }, +    { 0x1F700, 0x1F776 }, +    { 0x1F77B, 0x1F7D9 },      { 0x1F7E0, 0x1F7EB },      { 0x1F7F0, 0x1F7F0 },      { 0x1F800, 0x1F80B }, @@ -693,25 +703,24 @@      { 0x1F8B0, 0x1F8B1 },      { 0x1F900, 0x1FA53 },      { 0x1FA60, 0x1FA6D }, -    { 0x1FA70, 0x1FA74 }, -    { 0x1FA78, 0x1FA7C }, -    { 0x1FA80, 0x1FA86 }, -    { 0x1FA90, 0x1FAAC }, -    { 0x1FAB0, 0x1FABA }, -    { 0x1FAC0, 0x1FAC5 }, -    { 0x1FAD0, 0x1FAD9 }, -    { 0x1FAE0, 0x1FAE7 }, -    { 0x1FAF0, 0x1FAF6 }, +    { 0x1FA70, 0x1FA7C }, +    { 0x1FA80, 0x1FA88 }, +    { 0x1FA90, 0x1FABD }, +    { 0x1FABF, 0x1FAC5 }, +    { 0x1FACE, 0x1FADB }, +    { 0x1FAE0, 0x1FAE8 }, +    { 0x1FAF0, 0x1FAF8 },      { 0x1FB00, 0x1FB92 },      { 0x1FB94, 0x1FBCA },      { 0x1FBF0, 0x1FBF9 },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D },      { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF },      { 0xE0001, 0xE0001 },      { 0xE0020, 0xE007F },      { 0xE0100, 0xE01EF }, diff --git a/tests/unictype/test-ctype_punct.c b/tests/unictype/test-ctype_punct.c index 6e6539c6..1cd20e2a 100644 --- a/tests/unictype/test-ctype_punct.c +++ b/tests/unictype/test-ctype_punct.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -131,6 +131,7 @@      { 0x0CCA, 0x0CCD },      { 0x0CD5, 0x0CD6 },      { 0x0CE2, 0x0CE3 }, +    { 0x0CF3, 0x0CF3 },      { 0x0D00, 0x0D03 },      { 0x0D3B, 0x0D3C },      { 0x0D3E, 0x0D44 }, @@ -153,7 +154,7 @@      { 0x0E5A, 0x0E5B },      { 0x0EB1, 0x0EB1 },      { 0x0EB4, 0x0EBC }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0F01, 0x0F1F },      { 0x0F2A, 0x0F3F },      { 0x0F71, 0x0F87 }, @@ -385,6 +386,7 @@      { 0x10D24, 0x10D27 },      { 0x10E60, 0x10E7E },      { 0x10EAB, 0x10EAD }, +    { 0x10EFD, 0x10EFF },      { 0x10F1D, 0x10F26 },      { 0x10F46, 0x10F59 },      { 0x10F82, 0x10F89 }, @@ -409,6 +411,7 @@      { 0x111DD, 0x111DF },      { 0x111E1, 0x111F4 },      { 0x1122C, 0x1123E }, +    { 0x11241, 0x11241 },      { 0x112A9, 0x112A9 },      { 0x112DF, 0x112EA },      { 0x11300, 0x11303 }, @@ -452,6 +455,7 @@      { 0x11A51, 0x11A5B },      { 0x11A8A, 0x11A9C },      { 0x11A9E, 0x11AA2 }, +    { 0x11B00, 0x11B09 },      { 0x11C2F, 0x11C36 },      { 0x11C38, 0x11C3F },      { 0x11C41, 0x11C45 }, @@ -468,11 +472,16 @@      { 0x11D90, 0x11D91 },      { 0x11D93, 0x11D97 },      { 0x11EF3, 0x11EF8 }, +    { 0x11F00, 0x11F01 }, +    { 0x11F03, 0x11F03 }, +    { 0x11F34, 0x11F3A }, +    { 0x11F3E, 0x11F4F },      { 0x11FC0, 0x11FF1 },      { 0x11FFF, 0x11FFF },      { 0x12470, 0x12474 },      { 0x12FF1, 0x12FF2 }, -    { 0x13430, 0x13438 }, +    { 0x13430, 0x13440 }, +    { 0x13447, 0x13455 },      { 0x16A6E, 0x16A6F },      { 0x16AF0, 0x16AF5 },      { 0x16B30, 0x16B3F }, @@ -493,6 +502,7 @@      { 0x1D100, 0x1D126 },      { 0x1D129, 0x1D1EA },      { 0x1D200, 0x1D245 }, +    { 0x1D2C0, 0x1D2D3 },      { 0x1D2E0, 0x1D2F3 },      { 0x1D300, 0x1D356 },      { 0x1D360, 0x1D378 }, @@ -514,11 +524,13 @@      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E08F, 0x1E08F },      { 0x1E130, 0x1E136 },      { 0x1E14F, 0x1E14F },      { 0x1E2AE, 0x1E2AE },      { 0x1E2EC, 0x1E2EF },      { 0x1E2FF, 0x1E2FF }, +    { 0x1E4EC, 0x1E4EF },      { 0x1E8C7, 0x1E8D6 },      { 0x1E944, 0x1E94A },      { 0x1E95E, 0x1E95F }, @@ -543,10 +555,10 @@      { 0x1F250, 0x1F251 },      { 0x1F260, 0x1F265 },      { 0x1F300, 0x1F6D7 }, -    { 0x1F6DD, 0x1F6EC }, +    { 0x1F6DC, 0x1F6EC },      { 0x1F6F0, 0x1F6FC }, -    { 0x1F700, 0x1F773 }, -    { 0x1F780, 0x1F7D8 }, +    { 0x1F700, 0x1F776 }, +    { 0x1F77B, 0x1F7D9 },      { 0x1F7E0, 0x1F7EB },      { 0x1F7F0, 0x1F7F0 },      { 0x1F800, 0x1F80B }, @@ -557,15 +569,13 @@      { 0x1F8B0, 0x1F8B1 },      { 0x1F900, 0x1FA53 },      { 0x1FA60, 0x1FA6D }, -    { 0x1FA70, 0x1FA74 }, -    { 0x1FA78, 0x1FA7C }, -    { 0x1FA80, 0x1FA86 }, -    { 0x1FA90, 0x1FAAC }, -    { 0x1FAB0, 0x1FABA }, -    { 0x1FAC0, 0x1FAC5 }, -    { 0x1FAD0, 0x1FAD9 }, -    { 0x1FAE0, 0x1FAE7 }, -    { 0x1FAF0, 0x1FAF6 }, +    { 0x1FA70, 0x1FA7C }, +    { 0x1FA80, 0x1FA88 }, +    { 0x1FA90, 0x1FABD }, +    { 0x1FABF, 0x1FAC5 }, +    { 0x1FACE, 0x1FADB }, +    { 0x1FAE0, 0x1FAE8 }, +    { 0x1FAF0, 0x1FAF8 },      { 0x1FB00, 0x1FB92 },      { 0x1FB94, 0x1FBCA },      { 0xE0001, 0xE0001 }, diff --git a/tests/unictype/test-ctype_space.c b/tests/unictype/test-ctype_space.c index 0a27922c..da37cf74 100644 --- a/tests/unictype/test-ctype_space.c +++ b/tests/unictype/test-ctype_space.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-ctype_upper.c b/tests/unictype/test-ctype_upper.c index 71a54edc..724d4c7c 100644 --- a/tests/unictype/test-ctype_upper.c +++ b/tests/unictype/test-ctype_upper.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-ctype_xdigit.c b/tests/unictype/test-ctype_xdigit.c index f16cb61e..3de8ce98 100644 --- a/tests/unictype/test-ctype_xdigit.c +++ b/tests/unictype/test-ctype_xdigit.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-decdigit.c b/tests/unictype/test-decdigit.c index c30d9b8a..67a3f60c 100644 --- a/tests/unictype/test-decdigit.c +++ b/tests/unictype/test-decdigit.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-decdigit.h b/tests/unictype/test-decdigit.h index 2c3d21fc..f54ff1e1 100644 --- a/tests/unictype/test-decdigit.h +++ b/tests/unictype/test-decdigit.h @@ -1,12 +1,12 @@  /* DO NOT EDIT! GENERATED AUTOMATICALLY! */  /* Decimal digit values of Unicode characters.  */ -/* Generated automatically by gen-uni-tables.c for Unicode 14.0.0.  */ +/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */  /* Copyright (C) 2000-2022 Free Software Foundation, Inc.     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -557,6 +557,16 @@      { 0x11DA7, 7 },      { 0x11DA8, 8 },      { 0x11DA9, 9 }, +    { 0x11F50, 0 }, +    { 0x11F51, 1 }, +    { 0x11F52, 2 }, +    { 0x11F53, 3 }, +    { 0x11F54, 4 }, +    { 0x11F55, 5 }, +    { 0x11F56, 6 }, +    { 0x11F57, 7 }, +    { 0x11F58, 8 }, +    { 0x11F59, 9 },      { 0x16A60, 0 },      { 0x16A61, 1 },      { 0x16A62, 2 }, @@ -657,6 +667,16 @@      { 0x1E2F7, 7 },      { 0x1E2F8, 8 },      { 0x1E2F9, 9 }, +    { 0x1E4F0, 0 }, +    { 0x1E4F1, 1 }, +    { 0x1E4F2, 2 }, +    { 0x1E4F3, 3 }, +    { 0x1E4F4, 4 }, +    { 0x1E4F5, 5 }, +    { 0x1E4F6, 6 }, +    { 0x1E4F7, 7 }, +    { 0x1E4F8, 8 }, +    { 0x1E4F9, 9 },      { 0x1E950, 0 },      { 0x1E951, 1 },      { 0x1E952, 2 }, diff --git a/tests/unictype/test-digit.c b/tests/unictype/test-digit.c index ebc3eb22..67258a43 100644 --- a/tests/unictype/test-digit.c +++ b/tests/unictype/test-digit.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-digit.h b/tests/unictype/test-digit.h index 86f741c0..02819012 100644 --- a/tests/unictype/test-digit.h +++ b/tests/unictype/test-digit.h @@ -1,12 +1,12 @@  /* DO NOT EDIT! GENERATED AUTOMATICALLY! */  /* Digit values of Unicode characters.  */ -/* Generated automatically by gen-uni-tables.c for Unicode 14.0.0.  */ +/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */  /* Copyright (C) 2000-2022 Free Software Foundation, Inc.     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -674,6 +674,16 @@      { 0x11DA7, 7 },      { 0x11DA8, 8 },      { 0x11DA9, 9 }, +    { 0x11F50, 0 }, +    { 0x11F51, 1 }, +    { 0x11F52, 2 }, +    { 0x11F53, 3 }, +    { 0x11F54, 4 }, +    { 0x11F55, 5 }, +    { 0x11F56, 6 }, +    { 0x11F57, 7 }, +    { 0x11F58, 8 }, +    { 0x11F59, 9 },      { 0x16A60, 0 },      { 0x16A61, 1 },      { 0x16A62, 2 }, @@ -774,6 +784,16 @@      { 0x1E2F7, 7 },      { 0x1E2F8, 8 },      { 0x1E2F9, 9 }, +    { 0x1E4F0, 0 }, +    { 0x1E4F1, 1 }, +    { 0x1E4F2, 2 }, +    { 0x1E4F3, 3 }, +    { 0x1E4F4, 4 }, +    { 0x1E4F5, 5 }, +    { 0x1E4F6, 6 }, +    { 0x1E4F7, 7 }, +    { 0x1E4F8, 8 }, +    { 0x1E4F9, 9 },      { 0x1E950, 0 },      { 0x1E951, 1 },      { 0x1E952, 2 }, diff --git a/tests/unictype/test-joininggroup_byname.c b/tests/unictype/test-joininggroup_byname.c index 86191dc7..6329a994 100644 --- a/tests/unictype/test-joininggroup_byname.c +++ b/tests/unictype/test-joininggroup_byname.c @@ -4,7 +4,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unictype/test-joininggroup_name.c b/tests/unictype/test-joininggroup_name.c index 6d91e30a..7ff2eb98 100644 --- a/tests/unictype/test-joininggroup_name.c +++ b/tests/unictype/test-joininggroup_name.c @@ -4,7 +4,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unictype/test-joininggroup_of.c b/tests/unictype/test-joininggroup_of.c index 21bce2aa..792b5e37 100644 --- a/tests/unictype/test-joininggroup_of.c +++ b/tests/unictype/test-joininggroup_of.c @@ -4,7 +4,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unictype/test-joininggroup_of.h b/tests/unictype/test-joininggroup_of.h index 53834066..cbcad6bc 100644 --- a/tests/unictype/test-joininggroup_of.h +++ b/tests/unictype/test-joininggroup_of.h @@ -1,12 +1,12 @@  /* DO NOT EDIT! GENERATED AUTOMATICALLY! */  /* Arabic joining group of Unicode characters.  */ -/* Generated automatically by gen-uni-tables.c for Unicode 14.0.0.  */ +/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */  /* Copyright (C) 2000-2022 Free Software Foundation, Inc.     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-joiningtype_byname.c b/tests/unictype/test-joiningtype_byname.c index 1a07c957..0134bde1 100644 --- a/tests/unictype/test-joiningtype_byname.c +++ b/tests/unictype/test-joiningtype_byname.c @@ -4,7 +4,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unictype/test-joiningtype_longname.c b/tests/unictype/test-joiningtype_longname.c index 7a191da0..06c737d4 100644 --- a/tests/unictype/test-joiningtype_longname.c +++ b/tests/unictype/test-joiningtype_longname.c @@ -4,7 +4,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unictype/test-joiningtype_name.c b/tests/unictype/test-joiningtype_name.c index 6d14ef5f..f83468cb 100644 --- a/tests/unictype/test-joiningtype_name.c +++ b/tests/unictype/test-joiningtype_name.c @@ -4,7 +4,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unictype/test-joiningtype_of.c b/tests/unictype/test-joiningtype_of.c index 68f1bbbd..6396f0d3 100644 --- a/tests/unictype/test-joiningtype_of.c +++ b/tests/unictype/test-joiningtype_of.c @@ -4,7 +4,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unictype/test-joiningtype_of.h b/tests/unictype/test-joiningtype_of.h index 596eb221..acea2865 100644 --- a/tests/unictype/test-joiningtype_of.h +++ b/tests/unictype/test-joiningtype_of.h @@ -1,12 +1,12 @@  /* DO NOT EDIT! GENERATED AUTOMATICALLY! */  /* Arabic joining type of Unicode characters.  */ -/* Generated automatically by gen-uni-tables.c for Unicode 14.0.0.  */ +/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */  /* Copyright (C) 2000-2022 Free Software Foundation, Inc.     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-mirror.c b/tests/unictype/test-mirror.c index ad7b49f2..b09541cc 100644 --- a/tests/unictype/test-mirror.c +++ b/tests/unictype/test-mirror.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-numeric.c b/tests/unictype/test-numeric.c index 41c47815..5596b561 100644 --- a/tests/unictype/test-numeric.c +++ b/tests/unictype/test-numeric.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-numeric.h b/tests/unictype/test-numeric.h index 700e52b2..cb2f3314 100644 --- a/tests/unictype/test-numeric.h +++ b/tests/unictype/test-numeric.h @@ -1,12 +1,12 @@  /* DO NOT EDIT! GENERATED AUTOMATICALLY! */  /* Numeric values of Unicode characters.  */ -/* Generated automatically by gen-uni-tables.c for Unicode 14.0.0.  */ +/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */  /* Copyright (C) 2000-2022 Free Software Foundation, Inc.     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -1340,6 +1340,16 @@      { 0x11DA7, 7, 1 },      { 0x11DA8, 8, 1 },      { 0x11DA9, 9, 1 }, +    { 0x11F50, 0, 1 }, +    { 0x11F51, 1, 1 }, +    { 0x11F52, 2, 1 }, +    { 0x11F53, 3, 1 }, +    { 0x11F54, 4, 1 }, +    { 0x11F55, 5, 1 }, +    { 0x11F56, 6, 1 }, +    { 0x11F57, 7, 1 }, +    { 0x11F58, 8, 1 }, +    { 0x11F59, 9, 1 },      { 0x11FC0, 1, 320 },      { 0x11FC1, 1, 160 },      { 0x11FC2, 1, 80 }, @@ -1532,6 +1542,26 @@      { 0x16E94, 1, 1 },      { 0x16E95, 2, 1 },      { 0x16E96, 3, 1 }, +    { 0x1D2C0, 0, 1 }, +    { 0x1D2C1, 1, 1 }, +    { 0x1D2C2, 2, 1 }, +    { 0x1D2C3, 3, 1 }, +    { 0x1D2C4, 4, 1 }, +    { 0x1D2C5, 5, 1 }, +    { 0x1D2C6, 6, 1 }, +    { 0x1D2C7, 7, 1 }, +    { 0x1D2C8, 8, 1 }, +    { 0x1D2C9, 9, 1 }, +    { 0x1D2CA, 10, 1 }, +    { 0x1D2CB, 11, 1 }, +    { 0x1D2CC, 12, 1 }, +    { 0x1D2CD, 13, 1 }, +    { 0x1D2CE, 14, 1 }, +    { 0x1D2CF, 15, 1 }, +    { 0x1D2D0, 16, 1 }, +    { 0x1D2D1, 17, 1 }, +    { 0x1D2D2, 18, 1 }, +    { 0x1D2D3, 19, 1 },      { 0x1D2E0, 0, 1 },      { 0x1D2E1, 1, 1 },      { 0x1D2E2, 2, 1 }, @@ -1647,6 +1677,16 @@      { 0x1E2F7, 7, 1 },      { 0x1E2F8, 8, 1 },      { 0x1E2F9, 9, 1 }, +    { 0x1E4F0, 0, 1 }, +    { 0x1E4F1, 1, 1 }, +    { 0x1E4F2, 2, 1 }, +    { 0x1E4F3, 3, 1 }, +    { 0x1E4F4, 4, 1 }, +    { 0x1E4F5, 5, 1 }, +    { 0x1E4F6, 6, 1 }, +    { 0x1E4F7, 7, 1 }, +    { 0x1E4F8, 8, 1 }, +    { 0x1E4F9, 9, 1 },      { 0x1E8C7, 1, 1 },      { 0x1E8C8, 2, 1 },      { 0x1E8C9, 3, 1 }, diff --git a/tests/unictype/test-pr_alphabetic.c b/tests/unictype/test-pr_alphabetic.c index 4a587739..6efcd5bd 100644 --- a/tests/unictype/test-pr_alphabetic.c +++ b/tests/unictype/test-pr_alphabetic.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -151,8 +151,7 @@      { 0x0BCA, 0x0BCC },      { 0x0BD0, 0x0BD0 },      { 0x0BD7, 0x0BD7 }, -    { 0x0C00, 0x0C03 }, -    { 0x0C05, 0x0C0C }, +    { 0x0C00, 0x0C0C },      { 0x0C0E, 0x0C10 },      { 0x0C12, 0x0C28 },      { 0x0C2A, 0x0C39 }, @@ -175,7 +174,7 @@      { 0x0CD5, 0x0CD6 },      { 0x0CDD, 0x0CDE },      { 0x0CE0, 0x0CE3 }, -    { 0x0CF1, 0x0CF2 }, +    { 0x0CF1, 0x0CF3 },      { 0x0D00, 0x0D0C },      { 0x0D0E, 0x0D10 },      { 0x0D12, 0x0D3A }, @@ -213,7 +212,7 @@      { 0x0F00, 0x0F00 },      { 0x0F40, 0x0F47 },      { 0x0F49, 0x0F6C }, -    { 0x0F71, 0x0F81 }, +    { 0x0F71, 0x0F83 },      { 0x0F88, 0x0F97 },      { 0x0F99, 0x0FBC },      { 0x1000, 0x1036 }, @@ -515,7 +514,7 @@      { 0x10FE0, 0x10FF6 },      { 0x11000, 0x11045 },      { 0x11071, 0x11075 }, -    { 0x11082, 0x110B8 }, +    { 0x11080, 0x110B8 },      { 0x110C2, 0x110C2 },      { 0x110D0, 0x110E8 },      { 0x11100, 0x11132 }, @@ -530,7 +529,7 @@      { 0x11200, 0x11211 },      { 0x11213, 0x11234 },      { 0x11237, 0x11237 }, -    { 0x1123E, 0x1123E }, +    { 0x1123E, 0x11241 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -610,12 +609,16 @@      { 0x11D93, 0x11D96 },      { 0x11D98, 0x11D98 },      { 0x11EE0, 0x11EF6 }, +    { 0x11F00, 0x11F10 }, +    { 0x11F12, 0x11F3A }, +    { 0x11F3E, 0x11F40 },      { 0x11FB0, 0x11FB0 },      { 0x12000, 0x12399 },      { 0x12400, 0x1246E },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF0 }, -    { 0x13000, 0x1342E }, +    { 0x13000, 0x1342F }, +    { 0x13441, 0x13446 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -639,7 +642,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -678,16 +683,20 @@      { 0x1D7AA, 0x1D7C2 },      { 0x1D7C4, 0x1D7CB },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A },      { 0x1E000, 0x1E006 },      { 0x1E008, 0x1E018 },      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E030, 0x1E06D }, +    { 0x1E08F, 0x1E08F },      { 0x1E100, 0x1E12C },      { 0x1E137, 0x1E13D },      { 0x1E14E, 0x1E14E },      { 0x1E290, 0x1E2AD },      { 0x1E2C0, 0x1E2EB }, +    { 0x1E4D0, 0x1E4EB },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -733,12 +742,13 @@      { 0x1F150, 0x1F169 },      { 0x1F170, 0x1F189 },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D }, -    { 0x30000, 0x3134A } +    { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF }  #define PREDICATE(c) uc_is_property_alphabetic (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_ascii_hex_digit.c b/tests/unictype/test-pr_ascii_hex_digit.c index 20f85115..31eb2b79 100644 --- a/tests/unictype/test-pr_ascii_hex_digit.c +++ b/tests/unictype/test-pr_ascii_hex_digit.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_arabic_digit.c b/tests/unictype/test-pr_bidi_arabic_digit.c index 3bb366b1..fde69de6 100644 --- a/tests/unictype/test-pr_bidi_arabic_digit.c +++ b/tests/unictype/test-pr_bidi_arabic_digit.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_arabic_right_to_left.c b/tests/unictype/test-pr_bidi_arabic_right_to_left.c index 45d1ae30..e0cde250 100644 --- a/tests/unictype/test-pr_bidi_arabic_right_to_left.c +++ b/tests/unictype/test-pr_bidi_arabic_right_to_left.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_block_separator.c b/tests/unictype/test-pr_bidi_block_separator.c index f9b43c63..b348d689 100644 --- a/tests/unictype/test-pr_bidi_block_separator.c +++ b/tests/unictype/test-pr_bidi_block_separator.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_boundary_neutral.c b/tests/unictype/test-pr_bidi_boundary_neutral.c index 1c480b40..778d8247 100644 --- a/tests/unictype/test-pr_bidi_boundary_neutral.c +++ b/tests/unictype/test-pr_bidi_boundary_neutral.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_common_separator.c b/tests/unictype/test-pr_bidi_common_separator.c index e8574736..75e54c7f 100644 --- a/tests/unictype/test-pr_bidi_common_separator.c +++ b/tests/unictype/test-pr_bidi_common_separator.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_control.c b/tests/unictype/test-pr_bidi_control.c index 416cb27d..60f1354e 100644 --- a/tests/unictype/test-pr_bidi_control.c +++ b/tests/unictype/test-pr_bidi_control.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_embedding_or_override.c b/tests/unictype/test-pr_bidi_embedding_or_override.c index af0213dd..3fec8c05 100644 --- a/tests/unictype/test-pr_bidi_embedding_or_override.c +++ b/tests/unictype/test-pr_bidi_embedding_or_override.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_eur_num_separator.c b/tests/unictype/test-pr_bidi_eur_num_separator.c index 4a9d456a..2a096694 100644 --- a/tests/unictype/test-pr_bidi_eur_num_separator.c +++ b/tests/unictype/test-pr_bidi_eur_num_separator.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_eur_num_terminator.c b/tests/unictype/test-pr_bidi_eur_num_terminator.c index 575ca60c..326d6fa0 100644 --- a/tests/unictype/test-pr_bidi_eur_num_terminator.c +++ b/tests/unictype/test-pr_bidi_eur_num_terminator.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_european_digit.c b/tests/unictype/test-pr_bidi_european_digit.c index 6966f0ec..b59bc8cb 100644 --- a/tests/unictype/test-pr_bidi_european_digit.c +++ b/tests/unictype/test-pr_bidi_european_digit.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_hebrew_right_to_left.c b/tests/unictype/test-pr_bidi_hebrew_right_to_left.c index e31d20ea..90dfa1e6 100644 --- a/tests/unictype/test-pr_bidi_hebrew_right_to_left.c +++ b/tests/unictype/test-pr_bidi_hebrew_right_to_left.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -51,7 +51,8 @@      { 0x10D28, 0x10D2F },      { 0x10D3A, 0x10E5F },      { 0x10E7F, 0x10EAA }, -    { 0x10EAD, 0x10F2F }, +    { 0x10EAD, 0x10EFC }, +    { 0x10F00, 0x10F2F },      { 0x10F5A, 0x10F81 },      { 0x10F86, 0x10FFF },      { 0x1E800, 0x1E8C4 }, diff --git a/tests/unictype/test-pr_bidi_left_to_right.c b/tests/unictype/test-pr_bidi_left_to_right.c index ae2e4cf0..ce6dc5d7 100644 --- a/tests/unictype/test-pr_bidi_left_to_right.c +++ b/tests/unictype/test-pr_bidi_left_to_right.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -107,7 +107,7 @@      { 0x0E4F, 0x0EB0 },      { 0x0EB2, 0x0EB3 },      { 0x0EBD, 0x0EC7 }, -    { 0x0ECE, 0x0F17 }, +    { 0x0ECF, 0x0F17 },      { 0x0F1A, 0x0F34 },      { 0x0F36, 0x0F36 },      { 0x0F38, 0x0F38 }, @@ -329,7 +329,8 @@      { 0x11232, 0x11233 },      { 0x11235, 0x11235 },      { 0x11238, 0x1123D }, -    { 0x1123F, 0x112DE }, +    { 0x1123F, 0x11240 }, +    { 0x11242, 0x112DE },      { 0x112E0, 0x112E2 },      { 0x112EB, 0x112FF },      { 0x11302, 0x1133A }, @@ -391,8 +392,14 @@      { 0x11D92, 0x11D94 },      { 0x11D96, 0x11D96 },      { 0x11D98, 0x11EF2 }, -    { 0x11EF5, 0x11FD4 }, -    { 0x11FF2, 0x16AEF }, +    { 0x11EF5, 0x11EFF }, +    { 0x11F02, 0x11F35 }, +    { 0x11F3B, 0x11F3F }, +    { 0x11F41, 0x11F41 }, +    { 0x11F43, 0x11FD4 }, +    { 0x11FF2, 0x1343F }, +    { 0x13441, 0x13446 }, +    { 0x13456, 0x16AEF },      { 0x16AF5, 0x16B2F },      { 0x16B37, 0x16F4E },      { 0x16F50, 0x16F8E }, @@ -426,11 +433,13 @@      { 0x1E019, 0x1E01A },      { 0x1E022, 0x1E022 },      { 0x1E025, 0x1E025 }, -    { 0x1E02B, 0x1E12F }, +    { 0x1E02B, 0x1E08E }, +    { 0x1E090, 0x1E12F },      { 0x1E137, 0x1E2AD },      { 0x1E2AF, 0x1E2EB },      { 0x1E2F0, 0x1E2FE }, -    { 0x1E300, 0x1E7FF }, +    { 0x1E300, 0x1E4EB }, +    { 0x1E4F0, 0x1E7FF },      { 0x1E8C5, 0x1E8C6 },      { 0x1E8D7, 0x1E8FF },      { 0x1E94C, 0x1E94F }, @@ -483,11 +492,11 @@      { 0x1F170, 0x1F1AC },      { 0x1F1AE, 0x1F25F },      { 0x1F266, 0x1F2FF }, -    { 0x1F6D8, 0x1F6DC }, +    { 0x1F6D8, 0x1F6DB },      { 0x1F6ED, 0x1F6EF },      { 0x1F6FD, 0x1F6FF }, -    { 0x1F774, 0x1F77F }, -    { 0x1F7D9, 0x1F7DF }, +    { 0x1F777, 0x1F77A }, +    { 0x1F7DA, 0x1F7DF },      { 0x1F7EC, 0x1F7EF },      { 0x1F7F1, 0x1F7FF },      { 0x1F80C, 0x1F80F }, @@ -498,15 +507,13 @@      { 0x1F8B2, 0x1F8FF },      { 0x1FA54, 0x1FA5F },      { 0x1FA6E, 0x1FA6F }, -    { 0x1FA75, 0x1FA77 },      { 0x1FA7D, 0x1FA7F }, -    { 0x1FA87, 0x1FA8F }, -    { 0x1FAAD, 0x1FAAF }, -    { 0x1FABB, 0x1FABF }, -    { 0x1FAC6, 0x1FACF }, -    { 0x1FADA, 0x1FADF }, -    { 0x1FAE8, 0x1FAEF }, -    { 0x1FAF7, 0x1FAFF }, +    { 0x1FA89, 0x1FA8F }, +    { 0x1FABE, 0x1FABE }, +    { 0x1FAC6, 0x1FACD }, +    { 0x1FADC, 0x1FADF }, +    { 0x1FAE9, 0x1FAEF }, +    { 0x1FAF9, 0x1FAFF },      { 0x1FB93, 0x1FB93 },      { 0x1FBCB, 0x1FBEF },      { 0x1FBFA, 0x1FFFD }, diff --git a/tests/unictype/test-pr_bidi_non_spacing_mark.c b/tests/unictype/test-pr_bidi_non_spacing_mark.c index 1221fcc8..6cc88022 100644 --- a/tests/unictype/test-pr_bidi_non_spacing_mark.c +++ b/tests/unictype/test-pr_bidi_non_spacing_mark.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -107,7 +107,7 @@      { 0x0E47, 0x0E4E },      { 0x0EB1, 0x0EB1 },      { 0x0EB4, 0x0EBC }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0F18, 0x0F19 },      { 0x0F35, 0x0F35 },      { 0x0F37, 0x0F37 }, @@ -235,6 +235,7 @@      { 0x10AE5, 0x10AE6 },      { 0x10D24, 0x10D27 },      { 0x10EAB, 0x10EAC }, +    { 0x10EFD, 0x10EFF },      { 0x10F46, 0x10F50 },      { 0x10F82, 0x10F85 },      { 0x11001, 0x11001 }, @@ -257,6 +258,7 @@      { 0x11234, 0x11234 },      { 0x11236, 0x11237 },      { 0x1123E, 0x1123E }, +    { 0x11241, 0x11241 },      { 0x112DF, 0x112DF },      { 0x112E3, 0x112EA },      { 0x11300, 0x11301 }, @@ -318,6 +320,12 @@      { 0x11D95, 0x11D95 },      { 0x11D97, 0x11D97 },      { 0x11EF3, 0x11EF4 }, +    { 0x11F00, 0x11F01 }, +    { 0x11F36, 0x11F3A }, +    { 0x11F40, 0x11F40 }, +    { 0x11F42, 0x11F42 }, +    { 0x13440, 0x13440 }, +    { 0x13447, 0x13455 },      { 0x16AF0, 0x16AF4 },      { 0x16B30, 0x16B36 },      { 0x16F4F, 0x16F4F }, @@ -342,9 +350,11 @@      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E08F, 0x1E08F },      { 0x1E130, 0x1E136 },      { 0x1E2AE, 0x1E2AE },      { 0x1E2EC, 0x1E2EF }, +    { 0x1E4EC, 0x1E4EF },      { 0x1E8D0, 0x1E8D6 },      { 0x1E944, 0x1E94A },      { 0xE0100, 0xE01EF } diff --git a/tests/unictype/test-pr_bidi_other_neutral.c b/tests/unictype/test-pr_bidi_other_neutral.c index 1bd393a9..5d72a797 100644 --- a/tests/unictype/test-pr_bidi_other_neutral.c +++ b/tests/unictype/test-pr_bidi_other_neutral.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -183,10 +183,10 @@      { 0x1F1AD, 0x1F1AD },      { 0x1F260, 0x1F265 },      { 0x1F300, 0x1F6D7 }, -    { 0x1F6DD, 0x1F6EC }, +    { 0x1F6DC, 0x1F6EC },      { 0x1F6F0, 0x1F6FC }, -    { 0x1F700, 0x1F773 }, -    { 0x1F780, 0x1F7D8 }, +    { 0x1F700, 0x1F776 }, +    { 0x1F77B, 0x1F7D9 },      { 0x1F7E0, 0x1F7EB },      { 0x1F7F0, 0x1F7F0 },      { 0x1F800, 0x1F80B }, @@ -197,15 +197,13 @@      { 0x1F8B0, 0x1F8B1 },      { 0x1F900, 0x1FA53 },      { 0x1FA60, 0x1FA6D }, -    { 0x1FA70, 0x1FA74 }, -    { 0x1FA78, 0x1FA7C }, -    { 0x1FA80, 0x1FA86 }, -    { 0x1FA90, 0x1FAAC }, -    { 0x1FAB0, 0x1FABA }, -    { 0x1FAC0, 0x1FAC5 }, -    { 0x1FAD0, 0x1FAD9 }, -    { 0x1FAE0, 0x1FAE7 }, -    { 0x1FAF0, 0x1FAF6 }, +    { 0x1FA70, 0x1FA7C }, +    { 0x1FA80, 0x1FA88 }, +    { 0x1FA90, 0x1FABD }, +    { 0x1FABF, 0x1FAC5 }, +    { 0x1FACE, 0x1FADB }, +    { 0x1FAE0, 0x1FAE8 }, +    { 0x1FAF0, 0x1FAF8 },      { 0x1FB00, 0x1FB92 },      { 0x1FB94, 0x1FBCA } diff --git a/tests/unictype/test-pr_bidi_pdf.c b/tests/unictype/test-pr_bidi_pdf.c index 39b7d06a..60e45477 100644 --- a/tests/unictype/test-pr_bidi_pdf.c +++ b/tests/unictype/test-pr_bidi_pdf.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_segment_separator.c b/tests/unictype/test-pr_bidi_segment_separator.c index 94d47816..5f6e1e20 100644 --- a/tests/unictype/test-pr_bidi_segment_separator.c +++ b/tests/unictype/test-pr_bidi_segment_separator.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_bidi_whitespace.c b/tests/unictype/test-pr_bidi_whitespace.c index 4cf2771b..3c165aa3 100644 --- a/tests/unictype/test-pr_bidi_whitespace.c +++ b/tests/unictype/test-pr_bidi_whitespace.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_byname.c b/tests/unictype/test-pr_byname.c index 8ebb2527..6cdfb9d5 100644 --- a/tests/unictype/test-pr_byname.c +++ b/tests/unictype/test-pr_byname.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-pr_case_ignorable.c b/tests/unictype/test-pr_case_ignorable.c index c33ce7a4..558694d0 100644 --- a/tests/unictype/test-pr_case_ignorable.c +++ b/tests/unictype/test-pr_case_ignorable.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -130,7 +130,7 @@      { 0x0EB1, 0x0EB1 },      { 0x0EB4, 0x0EBC },      { 0x0EC6, 0x0EC6 }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0F18, 0x0F19 },      { 0x0F35, 0x0F35 },      { 0x0F37, 0x0F37 }, @@ -319,6 +319,7 @@      { 0x10AE5, 0x10AE6 },      { 0x10D24, 0x10D27 },      { 0x10EAB, 0x10EAC }, +    { 0x10EFD, 0x10EFF },      { 0x10F46, 0x10F50 },      { 0x10F82, 0x10F85 },      { 0x11001, 0x11001 }, @@ -343,6 +344,7 @@      { 0x11234, 0x11234 },      { 0x11236, 0x11237 },      { 0x1123E, 0x1123E }, +    { 0x11241, 0x11241 },      { 0x112DF, 0x112DF },      { 0x112E3, 0x112EA },      { 0x11300, 0x11301 }, @@ -404,7 +406,12 @@      { 0x11D95, 0x11D95 },      { 0x11D97, 0x11D97 },      { 0x11EF3, 0x11EF4 }, -    { 0x13430, 0x13438 }, +    { 0x11F00, 0x11F01 }, +    { 0x11F36, 0x11F3A }, +    { 0x11F40, 0x11F40 }, +    { 0x11F42, 0x11F42 }, +    { 0x13430, 0x13440 }, +    { 0x13447, 0x13455 },      { 0x16AF0, 0x16AF4 },      { 0x16B30, 0x16B36 },      { 0x16B40, 0x16B43 }, @@ -435,9 +442,12 @@      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E030, 0x1E06D }, +    { 0x1E08F, 0x1E08F },      { 0x1E130, 0x1E13D },      { 0x1E2AE, 0x1E2AE },      { 0x1E2EC, 0x1E2EF }, +    { 0x1E4EB, 0x1E4EF },      { 0x1E8D0, 0x1E8D6 },      { 0x1E944, 0x1E94B },      { 0x1F3FB, 0x1F3FF }, diff --git a/tests/unictype/test-pr_cased.c b/tests/unictype/test-pr_cased.c index 0cac1fec..1d060fca 100644 --- a/tests/unictype/test-pr_cased.c +++ b/tests/unictype/test-pr_cased.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -48,7 +48,7 @@      { 0x10C7, 0x10C7 },      { 0x10CD, 0x10CD },      { 0x10D0, 0x10FA }, -    { 0x10FD, 0x10FF }, +    { 0x10FC, 0x10FF },      { 0x13A0, 0x13F5 },      { 0x13F8, 0x13FD },      { 0x1C80, 0x1C88 }, @@ -108,10 +108,10 @@      { 0xA7D0, 0xA7D1 },      { 0xA7D3, 0xA7D3 },      { 0xA7D5, 0xA7D9 }, -    { 0xA7F5, 0xA7F6 }, +    { 0xA7F2, 0xA7F6 },      { 0xA7F8, 0xA7FA },      { 0xAB30, 0xAB5A }, -    { 0xAB5C, 0xAB68 }, +    { 0xAB5C, 0xAB69 },      { 0xAB70, 0xABBF },      { 0xFB00, 0xFB06 },      { 0xFB13, 0xFB17 }, @@ -168,6 +168,8 @@      { 0x1D7C4, 0x1D7CB },      { 0x1DF00, 0x1DF09 },      { 0x1DF0B, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A }, +    { 0x1E030, 0x1E06D },      { 0x1E900, 0x1E943 },      { 0x1F130, 0x1F149 },      { 0x1F150, 0x1F169 }, diff --git a/tests/unictype/test-pr_changes_when_casefolded.c b/tests/unictype/test-pr_changes_when_casefolded.c index e6018ad7..f0da0167 100644 --- a/tests/unictype/test-pr_changes_when_casefolded.c +++ b/tests/unictype/test-pr_changes_when_casefolded.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_changes_when_casemapped.c b/tests/unictype/test-pr_changes_when_casemapped.c index 8bb4627a..42bfa219 100644 --- a/tests/unictype/test-pr_changes_when_casemapped.c +++ b/tests/unictype/test-pr_changes_when_casemapped.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_changes_when_lowercased.c b/tests/unictype/test-pr_changes_when_lowercased.c index 7af78d8b..87607ec2 100644 --- a/tests/unictype/test-pr_changes_when_lowercased.c +++ b/tests/unictype/test-pr_changes_when_lowercased.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_changes_when_titlecased.c b/tests/unictype/test-pr_changes_when_titlecased.c index 99521be2..55f12684 100644 --- a/tests/unictype/test-pr_changes_when_titlecased.c +++ b/tests/unictype/test-pr_changes_when_titlecased.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_changes_when_uppercased.c b/tests/unictype/test-pr_changes_when_uppercased.c index b7d179f7..4b830f3e 100644 --- a/tests/unictype/test-pr_changes_when_uppercased.c +++ b/tests/unictype/test-pr_changes_when_uppercased.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_combining.c b/tests/unictype/test-pr_combining.c index 7579b22e..31b8df04 100644 --- a/tests/unictype/test-pr_combining.c +++ b/tests/unictype/test-pr_combining.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -97,6 +97,7 @@      { 0x0CCA, 0x0CCD },      { 0x0CD5, 0x0CD6 },      { 0x0CE2, 0x0CE3 }, +    { 0x0CF3, 0x0CF3 },      { 0x0D00, 0x0D03 },      { 0x0D3B, 0x0D3C },      { 0x0D3E, 0x0D44 }, @@ -115,7 +116,7 @@      { 0x0E47, 0x0E4E },      { 0x0EB1, 0x0EB1 },      { 0x0EB4, 0x0EBC }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0F18, 0x0F19 },      { 0x0F35, 0x0F35 },      { 0x0F37, 0x0F37 }, @@ -217,6 +218,7 @@      { 0x10AE5, 0x10AE6 },      { 0x10D24, 0x10D27 },      { 0x10EAB, 0x10EAC }, +    { 0x10EFD, 0x10EFF },      { 0x10F46, 0x10F50 },      { 0x10F82, 0x10F85 },      { 0x11000, 0x11002 }, @@ -236,6 +238,7 @@      { 0x111CE, 0x111CF },      { 0x1122C, 0x11237 },      { 0x1123E, 0x1123E }, +    { 0x11241, 0x11241 },      { 0x112DF, 0x112EA },      { 0x11300, 0x11303 },      { 0x1133B, 0x1133C }, @@ -283,6 +286,12 @@      { 0x11D90, 0x11D91 },      { 0x11D93, 0x11D97 },      { 0x11EF3, 0x11EF6 }, +    { 0x11F00, 0x11F01 }, +    { 0x11F03, 0x11F03 }, +    { 0x11F34, 0x11F3A }, +    { 0x11F3E, 0x11F42 }, +    { 0x13440, 0x13440 }, +    { 0x13447, 0x13455 },      { 0x16AF0, 0x16AF4 },      { 0x16B30, 0x16B36 },      { 0x16F4F, 0x16F4F }, @@ -310,9 +319,11 @@      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E08F, 0x1E08F },      { 0x1E130, 0x1E136 },      { 0x1E2AE, 0x1E2AE },      { 0x1E2EC, 0x1E2EF }, +    { 0x1E4EC, 0x1E4EF },      { 0x1E8D0, 0x1E8D6 },      { 0x1E944, 0x1E94A },      { 0xE0100, 0xE01EF } diff --git a/tests/unictype/test-pr_composite.c b/tests/unictype/test-pr_composite.c index 7c108c85..4cccc8e8 100644 --- a/tests/unictype/test-pr_composite.c +++ b/tests/unictype/test-pr_composite.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_currency_symbol.c b/tests/unictype/test-pr_currency_symbol.c index 278fccbf..4a59165f 100644 --- a/tests/unictype/test-pr_currency_symbol.c +++ b/tests/unictype/test-pr_currency_symbol.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_dash.c b/tests/unictype/test-pr_dash.c index 585e2c18..7ac4b3e8 100644 --- a/tests/unictype/test-pr_dash.c +++ b/tests/unictype/test-pr_dash.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_decimal_digit.c b/tests/unictype/test-pr_decimal_digit.c index 138de831..45d5a6d4 100644 --- a/tests/unictype/test-pr_decimal_digit.c +++ b/tests/unictype/test-pr_decimal_digit.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -71,12 +71,14 @@      { 0x11C50, 0x11C59 },      { 0x11D50, 0x11D59 },      { 0x11DA0, 0x11DA9 }, +    { 0x11F50, 0x11F59 },      { 0x16A60, 0x16A69 },      { 0x16AC0, 0x16AC9 },      { 0x16B50, 0x16B59 },      { 0x1D7CE, 0x1D7FF },      { 0x1E140, 0x1E149 },      { 0x1E2F0, 0x1E2F9 }, +    { 0x1E4F0, 0x1E4F9 },      { 0x1E950, 0x1E959 },      { 0x1FBF0, 0x1FBF9 } diff --git a/tests/unictype/test-pr_default_ignorable_code_point.c b/tests/unictype/test-pr_default_ignorable_code_point.c index 7c9f2a7b..e536671b 100644 --- a/tests/unictype/test-pr_default_ignorable_code_point.c +++ b/tests/unictype/test-pr_default_ignorable_code_point.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_deprecated.c b/tests/unictype/test-pr_deprecated.c index 6a9899c0..1df2bc59 100644 --- a/tests/unictype/test-pr_deprecated.c +++ b/tests/unictype/test-pr_deprecated.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_diacritic.c b/tests/unictype/test-pr_diacritic.c index 578af817..f5dc0a67 100644 --- a/tests/unictype/test-pr_diacritic.c +++ b/tests/unictype/test-pr_diacritic.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -156,6 +156,7 @@      { 0x107B2, 0x107BA },      { 0x10AE5, 0x10AE6 },      { 0x10D22, 0x10D27 }, +    { 0x10EFD, 0x10EFF },      { 0x10F46, 0x10F50 },      { 0x10F82, 0x10F85 },      { 0x11046, 0x11046 }, @@ -189,6 +190,7 @@      { 0x11D42, 0x11D42 },      { 0x11D44, 0x11D45 },      { 0x11D97, 0x11D97 }, +    { 0x13447, 0x13455 },      { 0x16AF0, 0x16AF4 },      { 0x16B30, 0x16B36 },      { 0x16F8F, 0x16F9F }, @@ -203,6 +205,7 @@      { 0x1D17B, 0x1D182 },      { 0x1D185, 0x1D18B },      { 0x1D1AA, 0x1D1AD }, +    { 0x1E030, 0x1E06D },      { 0x1E130, 0x1E136 },      { 0x1E2AE, 0x1E2AE },      { 0x1E2EC, 0x1E2EF }, diff --git a/tests/unictype/test-pr_emoji.c b/tests/unictype/test-pr_emoji.c index 6dec25dd..8df689a2 100644 --- a/tests/unictype/test-pr_emoji.c +++ b/tests/unictype/test-pr_emoji.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -151,7 +151,7 @@      { 0x1F680, 0x1F6C5 },      { 0x1F6CB, 0x1F6D2 },      { 0x1F6D5, 0x1F6D7 }, -    { 0x1F6DD, 0x1F6E5 }, +    { 0x1F6DC, 0x1F6E5 },      { 0x1F6E9, 0x1F6E9 },      { 0x1F6EB, 0x1F6EC },      { 0x1F6F0, 0x1F6F0 }, @@ -161,15 +161,13 @@      { 0x1F90C, 0x1F93A },      { 0x1F93C, 0x1F945 },      { 0x1F947, 0x1F9FF }, -    { 0x1FA70, 0x1FA74 }, -    { 0x1FA78, 0x1FA7C }, -    { 0x1FA80, 0x1FA86 }, -    { 0x1FA90, 0x1FAAC }, -    { 0x1FAB0, 0x1FABA }, -    { 0x1FAC0, 0x1FAC5 }, -    { 0x1FAD0, 0x1FAD9 }, -    { 0x1FAE0, 0x1FAE7 }, -    { 0x1FAF0, 0x1FAF6 } +    { 0x1FA70, 0x1FA7C }, +    { 0x1FA80, 0x1FA88 }, +    { 0x1FA90, 0x1FABD }, +    { 0x1FABF, 0x1FAC5 }, +    { 0x1FACE, 0x1FADB }, +    { 0x1FAE0, 0x1FAE8 }, +    { 0x1FAF0, 0x1FAF8 }  #define PREDICATE(c) uc_is_property_emoji (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_emoji_component.c b/tests/unictype/test-pr_emoji_component.c index b4f6415f..38009fe3 100644 --- a/tests/unictype/test-pr_emoji_component.c +++ b/tests/unictype/test-pr_emoji_component.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_emoji_modifier.c b/tests/unictype/test-pr_emoji_modifier.c index 2c699667..d298af72 100644 --- a/tests/unictype/test-pr_emoji_modifier.c +++ b/tests/unictype/test-pr_emoji_modifier.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_emoji_modifier_base.c b/tests/unictype/test-pr_emoji_modifier_base.c index f915c1c1..90430d38 100644 --- a/tests/unictype/test-pr_emoji_modifier_base.c +++ b/tests/unictype/test-pr_emoji_modifier_base.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -56,7 +56,7 @@      { 0x1F9CD, 0x1F9CF },      { 0x1F9D1, 0x1F9DD },      { 0x1FAC3, 0x1FAC5 }, -    { 0x1FAF0, 0x1FAF6 } +    { 0x1FAF0, 0x1FAF8 }  #define PREDICATE(c) uc_is_property_emoji_modifier_base (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_emoji_presentation.c b/tests/unictype/test-pr_emoji_presentation.c index 7909edfc..fd1b3043 100644 --- a/tests/unictype/test-pr_emoji_presentation.c +++ b/tests/unictype/test-pr_emoji_presentation.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -83,7 +83,7 @@      { 0x1F6CC, 0x1F6CC },      { 0x1F6D0, 0x1F6D2 },      { 0x1F6D5, 0x1F6D7 }, -    { 0x1F6DD, 0x1F6DF }, +    { 0x1F6DC, 0x1F6DF },      { 0x1F6EB, 0x1F6EC },      { 0x1F6F4, 0x1F6FC },      { 0x1F7E0, 0x1F7EB }, @@ -91,15 +91,13 @@      { 0x1F90C, 0x1F93A },      { 0x1F93C, 0x1F945 },      { 0x1F947, 0x1F9FF }, -    { 0x1FA70, 0x1FA74 }, -    { 0x1FA78, 0x1FA7C }, -    { 0x1FA80, 0x1FA86 }, -    { 0x1FA90, 0x1FAAC }, -    { 0x1FAB0, 0x1FABA }, -    { 0x1FAC0, 0x1FAC5 }, -    { 0x1FAD0, 0x1FAD9 }, -    { 0x1FAE0, 0x1FAE7 }, -    { 0x1FAF0, 0x1FAF6 } +    { 0x1FA70, 0x1FA7C }, +    { 0x1FA80, 0x1FA88 }, +    { 0x1FA90, 0x1FABD }, +    { 0x1FABF, 0x1FAC5 }, +    { 0x1FACE, 0x1FADB }, +    { 0x1FAE0, 0x1FAE8 }, +    { 0x1FAF0, 0x1FAF8 }  #define PREDICATE(c) uc_is_property_emoji_presentation (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_extended_pictographic.c b/tests/unictype/test-pr_extended_pictographic.c index e44f5515..9fa0b3af 100644 --- a/tests/unictype/test-pr_extended_pictographic.c +++ b/tests/unictype/test-pr_extended_pictographic.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_extender.c b/tests/unictype/test-pr_extender.c index 8563a357..c2ec203b 100644 --- a/tests/unictype/test-pr_extender.c +++ b/tests/unictype/test-pr_extender.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_format_control.c b/tests/unictype/test-pr_format_control.c index ac544424..0c2045a8 100644 --- a/tests/unictype/test-pr_format_control.c +++ b/tests/unictype/test-pr_format_control.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_grapheme_base.c b/tests/unictype/test-pr_grapheme_base.c index 5e369609..3d908500 100644 --- a/tests/unictype/test-pr_grapheme_base.c +++ b/tests/unictype/test-pr_grapheme_base.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -166,7 +166,7 @@      { 0x0CDD, 0x0CDE },      { 0x0CE0, 0x0CE1 },      { 0x0CE6, 0x0CEF }, -    { 0x0CF1, 0x0CF2 }, +    { 0x0CF1, 0x0CF3 },      { 0x0D02, 0x0D0C },      { 0x0D0E, 0x0D10 },      { 0x0D12, 0x0D3A }, @@ -585,6 +585,7 @@      { 0x11232, 0x11233 },      { 0x11235, 0x11235 },      { 0x11238, 0x1123D }, +    { 0x1123F, 0x11240 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -671,6 +672,7 @@      { 0x11A97, 0x11A97 },      { 0x11A9A, 0x11AA2 },      { 0x11AB0, 0x11AF8 }, +    { 0x11B00, 0x11B09 },      { 0x11C00, 0x11C08 },      { 0x11C0A, 0x11C2F },      { 0x11C3E, 0x11C3E }, @@ -694,6 +696,11 @@      { 0x11DA0, 0x11DA9 },      { 0x11EE0, 0x11EF2 },      { 0x11EF5, 0x11EF8 }, +    { 0x11F02, 0x11F10 }, +    { 0x11F12, 0x11F35 }, +    { 0x11F3E, 0x11F3F }, +    { 0x11F41, 0x11F41 }, +    { 0x11F43, 0x11F59 },      { 0x11FB0, 0x11FB0 },      { 0x11FC0, 0x11FF1 },      { 0x11FFF, 0x12399 }, @@ -701,7 +708,8 @@      { 0x12470, 0x12474 },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF2 }, -    { 0x13000, 0x1342E }, +    { 0x13000, 0x1342F }, +    { 0x13441, 0x13446 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -729,7 +737,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -749,6 +759,7 @@      { 0x1D1AE, 0x1D1EA },      { 0x1D200, 0x1D241 },      { 0x1D245, 0x1D245 }, +    { 0x1D2C0, 0x1D2D3 },      { 0x1D2E0, 0x1D2F3 },      { 0x1D300, 0x1D356 },      { 0x1D360, 0x1D378 }, @@ -778,6 +789,8 @@      { 0x1DA76, 0x1DA83 },      { 0x1DA85, 0x1DA8B },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A }, +    { 0x1E030, 0x1E06D },      { 0x1E100, 0x1E12C },      { 0x1E137, 0x1E13D },      { 0x1E140, 0x1E149 }, @@ -786,6 +799,8 @@      { 0x1E2C0, 0x1E2EB },      { 0x1E2F0, 0x1E2F9 },      { 0x1E2FF, 0x1E2FF }, +    { 0x1E4D0, 0x1E4EB }, +    { 0x1E4F0, 0x1E4F9 },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -845,10 +860,10 @@      { 0x1F250, 0x1F251 },      { 0x1F260, 0x1F265 },      { 0x1F300, 0x1F6D7 }, -    { 0x1F6DD, 0x1F6EC }, +    { 0x1F6DC, 0x1F6EC },      { 0x1F6F0, 0x1F6FC }, -    { 0x1F700, 0x1F773 }, -    { 0x1F780, 0x1F7D8 }, +    { 0x1F700, 0x1F776 }, +    { 0x1F77B, 0x1F7D9 },      { 0x1F7E0, 0x1F7EB },      { 0x1F7F0, 0x1F7F0 },      { 0x1F800, 0x1F80B }, @@ -859,25 +874,24 @@      { 0x1F8B0, 0x1F8B1 },      { 0x1F900, 0x1FA53 },      { 0x1FA60, 0x1FA6D }, -    { 0x1FA70, 0x1FA74 }, -    { 0x1FA78, 0x1FA7C }, -    { 0x1FA80, 0x1FA86 }, -    { 0x1FA90, 0x1FAAC }, -    { 0x1FAB0, 0x1FABA }, -    { 0x1FAC0, 0x1FAC5 }, -    { 0x1FAD0, 0x1FAD9 }, -    { 0x1FAE0, 0x1FAE7 }, -    { 0x1FAF0, 0x1FAF6 }, +    { 0x1FA70, 0x1FA7C }, +    { 0x1FA80, 0x1FA88 }, +    { 0x1FA90, 0x1FABD }, +    { 0x1FABF, 0x1FAC5 }, +    { 0x1FACE, 0x1FADB }, +    { 0x1FAE0, 0x1FAE8 }, +    { 0x1FAF0, 0x1FAF8 },      { 0x1FB00, 0x1FB92 },      { 0x1FB94, 0x1FBCA },      { 0x1FBF0, 0x1FBF9 },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D }, -    { 0x30000, 0x3134A } +    { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF }  #define PREDICATE(c) uc_is_property_grapheme_base (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_grapheme_extend.c b/tests/unictype/test-pr_grapheme_extend.c index 86e57acc..fb8e068d 100644 --- a/tests/unictype/test-pr_grapheme_extend.c +++ b/tests/unictype/test-pr_grapheme_extend.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -119,7 +119,7 @@      { 0x0E47, 0x0E4E },      { 0x0EB1, 0x0EB1 },      { 0x0EB4, 0x0EBC }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0F18, 0x0F19 },      { 0x0F35, 0x0F35 },      { 0x0F37, 0x0F37 }, @@ -248,6 +248,7 @@      { 0x10AE5, 0x10AE6 },      { 0x10D24, 0x10D27 },      { 0x10EAB, 0x10EAC }, +    { 0x10EFD, 0x10EFF },      { 0x10F46, 0x10F50 },      { 0x10F82, 0x10F85 },      { 0x11001, 0x11001 }, @@ -270,6 +271,7 @@      { 0x11234, 0x11234 },      { 0x11236, 0x11237 },      { 0x1123E, 0x1123E }, +    { 0x11241, 0x11241 },      { 0x112DF, 0x112DF },      { 0x112E3, 0x112EA },      { 0x11300, 0x11301 }, @@ -337,6 +339,12 @@      { 0x11D95, 0x11D95 },      { 0x11D97, 0x11D97 },      { 0x11EF3, 0x11EF4 }, +    { 0x11F00, 0x11F01 }, +    { 0x11F36, 0x11F3A }, +    { 0x11F40, 0x11F40 }, +    { 0x11F42, 0x11F42 }, +    { 0x13440, 0x13440 }, +    { 0x13447, 0x13455 },      { 0x16AF0, 0x16AF4 },      { 0x16B30, 0x16B36 },      { 0x16F4F, 0x16F4F }, @@ -363,9 +371,11 @@      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E08F, 0x1E08F },      { 0x1E130, 0x1E136 },      { 0x1E2AE, 0x1E2AE },      { 0x1E2EC, 0x1E2EF }, +    { 0x1E4EC, 0x1E4EF },      { 0x1E8D0, 0x1E8D6 },      { 0x1E944, 0x1E94A },      { 0xE0020, 0xE007F }, diff --git a/tests/unictype/test-pr_grapheme_link.c b/tests/unictype/test-pr_grapheme_link.c index 83877790..ce5c9039 100644 --- a/tests/unictype/test-pr_grapheme_link.c +++ b/tests/unictype/test-pr_grapheme_link.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -71,7 +71,8 @@      { 0x11A99, 0x11A99 },      { 0x11C3F, 0x11C3F },      { 0x11D44, 0x11D45 }, -    { 0x11D97, 0x11D97 } +    { 0x11D97, 0x11D97 }, +    { 0x11F41, 0x11F42 }  #define PREDICATE(c) uc_is_property_grapheme_link (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_hex_digit.c b/tests/unictype/test-pr_hex_digit.c index 9104a8ca..4c3d48c7 100644 --- a/tests/unictype/test-pr_hex_digit.c +++ b/tests/unictype/test-pr_hex_digit.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_hyphen.c b/tests/unictype/test-pr_hyphen.c index d052e83e..351e98a7 100644 --- a/tests/unictype/test-pr_hyphen.c +++ b/tests/unictype/test-pr_hyphen.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_id_continue.c b/tests/unictype/test-pr_id_continue.c index 832883a1..d72084de 100644 --- a/tests/unictype/test-pr_id_continue.c +++ b/tests/unictype/test-pr_id_continue.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -175,7 +175,7 @@      { 0x0CDD, 0x0CDE },      { 0x0CE0, 0x0CE3 },      { 0x0CE6, 0x0CEF }, -    { 0x0CF1, 0x0CF2 }, +    { 0x0CF1, 0x0CF3 },      { 0x0D00, 0x0D0C },      { 0x0D0E, 0x0D10 },      { 0x0D12, 0x0D44 }, @@ -208,7 +208,7 @@      { 0x0EA7, 0x0EBD },      { 0x0EC0, 0x0EC4 },      { 0x0EC6, 0x0EC6 }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0ED0, 0x0ED9 },      { 0x0EDC, 0x0EDF },      { 0x0F00, 0x0F00 }, @@ -521,7 +521,7 @@      { 0x10E80, 0x10EA9 },      { 0x10EAB, 0x10EAC },      { 0x10EB0, 0x10EB1 }, -    { 0x10F00, 0x10F1C }, +    { 0x10EFD, 0x10F1C },      { 0x10F27, 0x10F27 },      { 0x10F30, 0x10F50 },      { 0x10F70, 0x10F85 }, @@ -544,7 +544,7 @@      { 0x111DC, 0x111DC },      { 0x11200, 0x11211 },      { 0x11213, 0x11237 }, -    { 0x1123E, 0x1123E }, +    { 0x1123E, 0x11241 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -625,12 +625,17 @@      { 0x11D93, 0x11D98 },      { 0x11DA0, 0x11DA9 },      { 0x11EE0, 0x11EF6 }, +    { 0x11F00, 0x11F10 }, +    { 0x11F12, 0x11F3A }, +    { 0x11F3E, 0x11F42 }, +    { 0x11F50, 0x11F59 },      { 0x11FB0, 0x11FB0 },      { 0x12000, 0x12399 },      { 0x12400, 0x1246E },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF0 }, -    { 0x13000, 0x1342E }, +    { 0x13000, 0x1342F }, +    { 0x13440, 0x13455 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -658,7 +663,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -712,17 +719,21 @@      { 0x1DA9B, 0x1DA9F },      { 0x1DAA1, 0x1DAAF },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A },      { 0x1E000, 0x1E006 },      { 0x1E008, 0x1E018 },      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E030, 0x1E06D }, +    { 0x1E08F, 0x1E08F },      { 0x1E100, 0x1E12C },      { 0x1E130, 0x1E13D },      { 0x1E140, 0x1E149 },      { 0x1E14E, 0x1E14E },      { 0x1E290, 0x1E2AE },      { 0x1E2C0, 0x1E2F9 }, +    { 0x1E4D0, 0x1E4F9 },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -766,12 +777,13 @@      { 0x1EEAB, 0x1EEBB },      { 0x1FBF0, 0x1FBF9 },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D },      { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF },      { 0xE0100, 0xE01EF }  #define PREDICATE(c) uc_is_property_id_continue (c) diff --git a/tests/unictype/test-pr_id_start.c b/tests/unictype/test-pr_id_start.c index c5cdc479..e8ccdf56 100644 --- a/tests/unictype/test-pr_id_start.c +++ b/tests/unictype/test-pr_id_start.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -485,6 +485,7 @@      { 0x111DC, 0x111DC },      { 0x11200, 0x11211 },      { 0x11213, 0x1122B }, +    { 0x1123F, 0x11240 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -547,12 +548,16 @@      { 0x11D6A, 0x11D89 },      { 0x11D98, 0x11D98 },      { 0x11EE0, 0x11EF2 }, +    { 0x11F02, 0x11F02 }, +    { 0x11F04, 0x11F10 }, +    { 0x11F12, 0x11F33 },      { 0x11FB0, 0x11FB0 },      { 0x12000, 0x12399 },      { 0x12400, 0x1246E },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF0 }, -    { 0x13000, 0x1342E }, +    { 0x13000, 0x1342F }, +    { 0x13441, 0x13446 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -575,7 +580,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -613,11 +620,14 @@      { 0x1D7AA, 0x1D7C2 },      { 0x1D7C4, 0x1D7CB },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A }, +    { 0x1E030, 0x1E06D },      { 0x1E100, 0x1E12C },      { 0x1E137, 0x1E13D },      { 0x1E14E, 0x1E14E },      { 0x1E290, 0x1E2AD },      { 0x1E2C0, 0x1E2EB }, +    { 0x1E4D0, 0x1E4EB },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -659,12 +669,13 @@      { 0x1EEA5, 0x1EEA9 },      { 0x1EEAB, 0x1EEBB },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D }, -    { 0x30000, 0x3134A } +    { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF }  #define PREDICATE(c) uc_is_property_id_start (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_ideographic.c b/tests/unictype/test-pr_ideographic.c index 8b8b511e..8221e37b 100644 --- a/tests/unictype/test-pr_ideographic.c +++ b/tests/unictype/test-pr_ideographic.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -30,12 +30,13 @@      { 0x18D00, 0x18D08 },      { 0x1B170, 0x1B2FB },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D }, -    { 0x30000, 0x3134A } +    { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF }  #define PREDICATE(c) uc_is_property_ideographic (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_ids_binary_operator.c b/tests/unictype/test-pr_ids_binary_operator.c index 782e48c6..50722c30 100644 --- a/tests/unictype/test-pr_ids_binary_operator.c +++ b/tests/unictype/test-pr_ids_binary_operator.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_ids_trinary_operator.c b/tests/unictype/test-pr_ids_trinary_operator.c index 26b6df34..bce8bc4a 100644 --- a/tests/unictype/test-pr_ids_trinary_operator.c +++ b/tests/unictype/test-pr_ids_trinary_operator.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_ignorable_control.c b/tests/unictype/test-pr_ignorable_control.c index 326397dc..f37e657a 100644 --- a/tests/unictype/test-pr_ignorable_control.c +++ b/tests/unictype/test-pr_ignorable_control.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -37,7 +37,7 @@      { 0xFFF9, 0xFFFB },      { 0x110BD, 0x110BD },      { 0x110CD, 0x110CD }, -    { 0x13430, 0x13438 }, +    { 0x13430, 0x1343F },      { 0x1BCA0, 0x1BCA3 },      { 0x1D173, 0x1D17A },      { 0xE0001, 0xE0001 }, diff --git a/tests/unictype/test-pr_iso_control.c b/tests/unictype/test-pr_iso_control.c index d1525285..725e220a 100644 --- a/tests/unictype/test-pr_iso_control.c +++ b/tests/unictype/test-pr_iso_control.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_join_control.c b/tests/unictype/test-pr_join_control.c index 48935623..71e11fc3 100644 --- a/tests/unictype/test-pr_join_control.c +++ b/tests/unictype/test-pr_join_control.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_left_of_pair.c b/tests/unictype/test-pr_left_of_pair.c index 4560be31..b35a7248 100644 --- a/tests/unictype/test-pr_left_of_pair.c +++ b/tests/unictype/test-pr_left_of_pair.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_line_separator.c b/tests/unictype/test-pr_line_separator.c index db743b98..80ebf303 100644 --- a/tests/unictype/test-pr_line_separator.c +++ b/tests/unictype/test-pr_line_separator.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_logical_order_exception.c b/tests/unictype/test-pr_logical_order_exception.c index e658136d..a24f4688 100644 --- a/tests/unictype/test-pr_logical_order_exception.c +++ b/tests/unictype/test-pr_logical_order_exception.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_lowercase.c b/tests/unictype/test-pr_lowercase.c index 02417bdd..226f6371 100644 --- a/tests/unictype/test-pr_lowercase.c +++ b/tests/unictype/test-pr_lowercase.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -293,7 +293,7 @@      { 0x052F, 0x052F },      { 0x0560, 0x0588 },      { 0x10D0, 0x10FA }, -    { 0x10FD, 0x10FF }, +    { 0x10FC, 0x10FF },      { 0x13F8, 0x13FD },      { 0x1C80, 0x1C88 },      { 0x1D00, 0x1DBF }, @@ -633,10 +633,11 @@      { 0xA7D5, 0xA7D5 },      { 0xA7D7, 0xA7D7 },      { 0xA7D9, 0xA7D9 }, +    { 0xA7F2, 0xA7F4 },      { 0xA7F6, 0xA7F6 },      { 0xA7F8, 0xA7FA },      { 0xAB30, 0xAB5A }, -    { 0xAB5C, 0xAB68 }, +    { 0xAB5C, 0xAB69 },      { 0xAB70, 0xABBF },      { 0xFB00, 0xFB06 },      { 0xFB13, 0xFB17 }, @@ -684,6 +685,8 @@      { 0x1D7CB, 0x1D7CB },      { 0x1DF00, 0x1DF09 },      { 0x1DF0B, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A }, +    { 0x1E030, 0x1E06D },      { 0x1E922, 0x1E943 }  #define PREDICATE(c) uc_is_property_lowercase (c) diff --git a/tests/unictype/test-pr_math.c b/tests/unictype/test-pr_math.c index ecc7bdcc..fb6e4d56 100644 --- a/tests/unictype/test-pr_math.c +++ b/tests/unictype/test-pr_math.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_non_break.c b/tests/unictype/test-pr_non_break.c index 9792e7a3..9dd2fccb 100644 --- a/tests/unictype/test-pr_non_break.c +++ b/tests/unictype/test-pr_non_break.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_not_a_character.c b/tests/unictype/test-pr_not_a_character.c index cb974150..259416dd 100644 --- a/tests/unictype/test-pr_not_a_character.c +++ b/tests/unictype/test-pr_not_a_character.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_numeric.c b/tests/unictype/test-pr_numeric.c index 0c75b977..c86261cb 100644 --- a/tests/unictype/test-pr_numeric.c +++ b/tests/unictype/test-pr_numeric.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -137,6 +137,7 @@      { 0x11C50, 0x11C6C },      { 0x11D50, 0x11D59 },      { 0x11DA0, 0x11DA9 }, +    { 0x11F50, 0x11F59 },      { 0x11FC0, 0x11FD4 },      { 0x12400, 0x1246E },      { 0x16A60, 0x16A69 }, @@ -144,11 +145,13 @@      { 0x16B50, 0x16B59 },      { 0x16B5B, 0x16B61 },      { 0x16E80, 0x16E96 }, +    { 0x1D2C0, 0x1D2D3 },      { 0x1D2E0, 0x1D2F3 },      { 0x1D360, 0x1D378 },      { 0x1D7CE, 0x1D7FF },      { 0x1E140, 0x1E149 },      { 0x1E2F0, 0x1E2F9 }, +    { 0x1E4F0, 0x1E4F9 },      { 0x1E8C7, 0x1E8CF },      { 0x1E950, 0x1E959 },      { 0x1EC71, 0x1ECAB }, diff --git a/tests/unictype/test-pr_other_alphabetic.c b/tests/unictype/test-pr_other_alphabetic.c index 1fd50d89..cf0476e5 100644 --- a/tests/unictype/test-pr_other_alphabetic.c +++ b/tests/unictype/test-pr_other_alphabetic.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -76,7 +76,7 @@      { 0x0BC6, 0x0BC8 },      { 0x0BCA, 0x0BCC },      { 0x0BD7, 0x0BD7 }, -    { 0x0C00, 0x0C03 }, +    { 0x0C00, 0x0C04 },      { 0x0C3E, 0x0C44 },      { 0x0C46, 0x0C48 },      { 0x0C4A, 0x0C4C }, @@ -88,6 +88,7 @@      { 0x0CCA, 0x0CCC },      { 0x0CD5, 0x0CD6 },      { 0x0CE2, 0x0CE3 }, +    { 0x0CF3, 0x0CF3 },      { 0x0D00, 0x0D03 },      { 0x0D3E, 0x0D44 },      { 0x0D46, 0x0D48 }, @@ -106,7 +107,7 @@      { 0x0EB4, 0x0EB9 },      { 0x0EBB, 0x0EBC },      { 0x0ECD, 0x0ECD }, -    { 0x0F71, 0x0F81 }, +    { 0x0F71, 0x0F83 },      { 0x0F8D, 0x0F97 },      { 0x0F99, 0x0FBC },      { 0x102B, 0x1036 }, @@ -179,7 +180,7 @@      { 0x11000, 0x11002 },      { 0x11038, 0x11045 },      { 0x11073, 0x11074 }, -    { 0x11082, 0x11082 }, +    { 0x11080, 0x11082 },      { 0x110B0, 0x110B8 },      { 0x110C2, 0x110C2 },      { 0x11100, 0x11102 }, @@ -191,6 +192,7 @@      { 0x1122C, 0x11234 },      { 0x11237, 0x11237 },      { 0x1123E, 0x1123E }, +    { 0x11241, 0x11241 },      { 0x112DF, 0x112E8 },      { 0x11300, 0x11303 },      { 0x1133E, 0x11344 }, @@ -236,6 +238,10 @@      { 0x11D90, 0x11D91 },      { 0x11D93, 0x11D96 },      { 0x11EF3, 0x11EF6 }, +    { 0x11F00, 0x11F01 }, +    { 0x11F03, 0x11F03 }, +    { 0x11F34, 0x11F3A }, +    { 0x11F3E, 0x11F40 },      { 0x16F4F, 0x16F4F },      { 0x16F51, 0x16F87 },      { 0x16F8F, 0x16F92 }, @@ -246,6 +252,7 @@      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E08F, 0x1E08F },      { 0x1E947, 0x1E947 },      { 0x1F130, 0x1F149 },      { 0x1F150, 0x1F169 }, diff --git a/tests/unictype/test-pr_other_default_ignorable_code_point.c b/tests/unictype/test-pr_other_default_ignorable_code_point.c index 426724d5..b51db935 100644 --- a/tests/unictype/test-pr_other_default_ignorable_code_point.c +++ b/tests/unictype/test-pr_other_default_ignorable_code_point.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_other_grapheme_extend.c b/tests/unictype/test-pr_other_grapheme_extend.c index f26afc8c..50bc89c2 100644 --- a/tests/unictype/test-pr_other_grapheme_extend.c +++ b/tests/unictype/test-pr_other_grapheme_extend.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_other_id_continue.c b/tests/unictype/test-pr_other_id_continue.c index 56422e3c..ce4bcaeb 100644 --- a/tests/unictype/test-pr_other_id_continue.c +++ b/tests/unictype/test-pr_other_id_continue.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_other_id_start.c b/tests/unictype/test-pr_other_id_start.c index 0e5a68c0..c9b8efc5 100644 --- a/tests/unictype/test-pr_other_id_start.c +++ b/tests/unictype/test-pr_other_id_start.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_other_lowercase.c b/tests/unictype/test-pr_other_lowercase.c index 2858b8cf..3d7ba197 100644 --- a/tests/unictype/test-pr_other_lowercase.c +++ b/tests/unictype/test-pr_other_lowercase.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -24,6 +24,7 @@      { 0x02E0, 0x02E4 },      { 0x0345, 0x0345 },      { 0x037A, 0x037A }, +    { 0x10FC, 0x10FC },      { 0x1D2C, 0x1D6A },      { 0x1D78, 0x1D78 },      { 0x1D9B, 0x1DBF }, @@ -35,12 +36,15 @@      { 0x2C7C, 0x2C7D },      { 0xA69C, 0xA69D },      { 0xA770, 0xA770 }, +    { 0xA7F2, 0xA7F4 },      { 0xA7F8, 0xA7F9 },      { 0xAB5C, 0xAB5F }, +    { 0xAB69, 0xAB69 },      { 0x10780, 0x10780 },      { 0x10783, 0x10785 },      { 0x10787, 0x107B0 }, -    { 0x107B2, 0x107BA } +    { 0x107B2, 0x107BA }, +    { 0x1E030, 0x1E06D }  #define PREDICATE(c) uc_is_property_other_lowercase (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_other_math.c b/tests/unictype/test-pr_other_math.c index b11c9081..b0715985 100644 --- a/tests/unictype/test-pr_other_math.c +++ b/tests/unictype/test-pr_other_math.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_other_uppercase.c b/tests/unictype/test-pr_other_uppercase.c index 7eab0cb4..6f5063f3 100644 --- a/tests/unictype/test-pr_other_uppercase.c +++ b/tests/unictype/test-pr_other_uppercase.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_paired_punctuation.c b/tests/unictype/test-pr_paired_punctuation.c index 100c87b3..a2f6671f 100644 --- a/tests/unictype/test-pr_paired_punctuation.c +++ b/tests/unictype/test-pr_paired_punctuation.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_paragraph_separator.c b/tests/unictype/test-pr_paragraph_separator.c index 366ba016..7cc3de9e 100644 --- a/tests/unictype/test-pr_paragraph_separator.c +++ b/tests/unictype/test-pr_paragraph_separator.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_pattern_syntax.c b/tests/unictype/test-pr_pattern_syntax.c index 2e7c9926..d265854b 100644 --- a/tests/unictype/test-pr_pattern_syntax.c +++ b/tests/unictype/test-pr_pattern_syntax.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_pattern_white_space.c b/tests/unictype/test-pr_pattern_white_space.c index 49f53fbd..b95978dd 100644 --- a/tests/unictype/test-pr_pattern_white_space.c +++ b/tests/unictype/test-pr_pattern_white_space.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_private_use.c b/tests/unictype/test-pr_private_use.c index 5dc5098f..c5c96c0e 100644 --- a/tests/unictype/test-pr_private_use.c +++ b/tests/unictype/test-pr_private_use.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_punctuation.c b/tests/unictype/test-pr_punctuation.c index 450f34ef..3d0d45bf 100644 --- a/tests/unictype/test-pr_punctuation.c +++ b/tests/unictype/test-pr_punctuation.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -191,9 +191,11 @@      { 0x11A3F, 0x11A46 },      { 0x11A9A, 0x11A9C },      { 0x11A9E, 0x11AA2 }, +    { 0x11B00, 0x11B09 },      { 0x11C41, 0x11C45 },      { 0x11C70, 0x11C71 },      { 0x11EF7, 0x11EF8 }, +    { 0x11F43, 0x11F4F },      { 0x11FFF, 0x11FFF },      { 0x12470, 0x12474 },      { 0x12FF1, 0x12FF2 }, diff --git a/tests/unictype/test-pr_quotation_mark.c b/tests/unictype/test-pr_quotation_mark.c index 8229c05f..b0fc20ff 100644 --- a/tests/unictype/test-pr_quotation_mark.c +++ b/tests/unictype/test-pr_quotation_mark.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_radical.c b/tests/unictype/test-pr_radical.c index ca22df9f..d732588a 100644 --- a/tests/unictype/test-pr_radical.c +++ b/tests/unictype/test-pr_radical.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_regional_indicator.c b/tests/unictype/test-pr_regional_indicator.c index 648e75eb..2f912578 100644 --- a/tests/unictype/test-pr_regional_indicator.c +++ b/tests/unictype/test-pr_regional_indicator.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_sentence_terminal.c b/tests/unictype/test-pr_sentence_terminal.c index f4e9b412..e2d1d3fd 100644 --- a/tests/unictype/test-pr_sentence_terminal.c +++ b/tests/unictype/test-pr_sentence_terminal.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -89,6 +89,7 @@      { 0x11A9B, 0x11A9C },      { 0x11C41, 0x11C42 },      { 0x11EF7, 0x11EF8 }, +    { 0x11F43, 0x11F44 },      { 0x16A6E, 0x16A6F },      { 0x16AF5, 0x16AF5 },      { 0x16B37, 0x16B38 }, diff --git a/tests/unictype/test-pr_soft_dotted.c b/tests/unictype/test-pr_soft_dotted.c index 97f7ef0e..a4b9212c 100644 --- a/tests/unictype/test-pr_soft_dotted.c +++ b/tests/unictype/test-pr_soft_dotted.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -48,7 +48,9 @@      { 0x1D62A, 0x1D62B },      { 0x1D65E, 0x1D65F },      { 0x1D692, 0x1D693 }, -    { 0x1DF1A, 0x1DF1A } +    { 0x1DF1A, 0x1DF1A }, +    { 0x1E04C, 0x1E04D }, +    { 0x1E068, 0x1E068 }  #define PREDICATE(c) uc_is_property_soft_dotted (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_space.c b/tests/unictype/test-pr_space.c index 0b3ccf4e..6530990b 100644 --- a/tests/unictype/test-pr_space.c +++ b/tests/unictype/test-pr_space.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_terminal_punctuation.c b/tests/unictype/test-pr_terminal_punctuation.c index b5a8ecdc..65ccbc8e 100644 --- a/tests/unictype/test-pr_terminal_punctuation.c +++ b/tests/unictype/test-pr_terminal_punctuation.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -116,6 +116,7 @@      { 0x11C41, 0x11C43 },      { 0x11C71, 0x11C71 },      { 0x11EF7, 0x11EF8 }, +    { 0x11F43, 0x11F44 },      { 0x12470, 0x12474 },      { 0x16A6E, 0x16A6F },      { 0x16AF5, 0x16AF5 }, diff --git a/tests/unictype/test-pr_test.c b/tests/unictype/test-pr_test.c index 773c90ee..c08c32c8 100644 --- a/tests/unictype/test-pr_test.c +++ b/tests/unictype/test-pr_test.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-pr_titlecase.c b/tests/unictype/test-pr_titlecase.c index 68f4d155..e9e26b22 100644 --- a/tests/unictype/test-pr_titlecase.c +++ b/tests/unictype/test-pr_titlecase.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_unassigned_code_value.c b/tests/unictype/test-pr_unassigned_code_value.c index 81d8a9ab..607e938d 100644 --- a/tests/unictype/test-pr_unassigned_code_value.c +++ b/tests/unictype/test-pr_unassigned_code_value.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -138,7 +138,7 @@      { 0x0CDF, 0x0CDF },      { 0x0CE4, 0x0CE5 },      { 0x0CF0, 0x0CF0 }, -    { 0x0CF3, 0x0CFF }, +    { 0x0CF4, 0x0CFF },      { 0x0D0D, 0x0D0D },      { 0x0D11, 0x0D11 },      { 0x0D45, 0x0D45 }, @@ -168,7 +168,7 @@      { 0x0EBE, 0x0EBF },      { 0x0EC5, 0x0EC5 },      { 0x0EC7, 0x0EC7 }, -    { 0x0ECE, 0x0ECF }, +    { 0x0ECF, 0x0ECF },      { 0x0EDA, 0x0EDB },      { 0x0EE0, 0x0EFF },      { 0x0F48, 0x0F48 }, @@ -436,7 +436,7 @@      { 0x10E7F, 0x10E7F },      { 0x10EAA, 0x10EAA },      { 0x10EAE, 0x10EAF }, -    { 0x10EB2, 0x10EFF }, +    { 0x10EB2, 0x10EFC },      { 0x10F28, 0x10F2F },      { 0x10F5A, 0x10F6F },      { 0x10F8A, 0x10FAF }, @@ -454,7 +454,7 @@      { 0x111E0, 0x111E0 },      { 0x111F5, 0x111FF },      { 0x11212, 0x11212 }, -    { 0x1123F, 0x1127F }, +    { 0x11242, 0x1127F },      { 0x11287, 0x11287 },      { 0x11289, 0x11289 },      { 0x1128E, 0x1128E }, @@ -506,7 +506,8 @@      { 0x119E5, 0x119FF },      { 0x11A48, 0x11A4F },      { 0x11AA3, 0x11AAF }, -    { 0x11AF9, 0x11BFF }, +    { 0x11AF9, 0x11AFF }, +    { 0x11B0A, 0x11BFF },      { 0x11C09, 0x11C09 },      { 0x11C37, 0x11C37 },      { 0x11C46, 0x11C4F }, @@ -527,7 +528,10 @@      { 0x11D92, 0x11D92 },      { 0x11D99, 0x11D9F },      { 0x11DAA, 0x11EDF }, -    { 0x11EF9, 0x11FAF }, +    { 0x11EF9, 0x11EFF }, +    { 0x11F11, 0x11F11 }, +    { 0x11F3B, 0x11F3D }, +    { 0x11F5A, 0x11FAF },      { 0x11FB1, 0x11FBF },      { 0x11FF2, 0x11FFE },      { 0x1239A, 0x123FF }, @@ -535,8 +539,7 @@      { 0x12475, 0x1247F },      { 0x12544, 0x12F8F },      { 0x12FF3, 0x12FFF }, -    { 0x1342F, 0x1342F }, -    { 0x13439, 0x143FF }, +    { 0x13456, 0x143FF },      { 0x14647, 0x167FF },      { 0x16A39, 0x16A3F },      { 0x16A5F, 0x16A5F }, @@ -562,8 +565,10 @@      { 0x1AFF4, 0x1AFF4 },      { 0x1AFFC, 0x1AFFC },      { 0x1AFFF, 0x1AFFF }, -    { 0x1B123, 0x1B14F }, -    { 0x1B153, 0x1B163 }, +    { 0x1B123, 0x1B131 }, +    { 0x1B133, 0x1B14F }, +    { 0x1B153, 0x1B154 }, +    { 0x1B156, 0x1B163 },      { 0x1B168, 0x1B16F },      { 0x1B2FC, 0x1BBFF },      { 0x1BC6B, 0x1BC6F }, @@ -577,7 +582,8 @@      { 0x1D0F6, 0x1D0FF },      { 0x1D127, 0x1D128 },      { 0x1D1EB, 0x1D1FF }, -    { 0x1D246, 0x1D2DF }, +    { 0x1D246, 0x1D2BF }, +    { 0x1D2D4, 0x1D2DF },      { 0x1D2F4, 0x1D2FF },      { 0x1D357, 0x1D35F },      { 0x1D379, 0x1D3FF }, @@ -604,19 +610,23 @@      { 0x1DA8C, 0x1DA9A },      { 0x1DAA0, 0x1DAA0 },      { 0x1DAB0, 0x1DEFF }, -    { 0x1DF1F, 0x1DFFF }, +    { 0x1DF1F, 0x1DF24 }, +    { 0x1DF2B, 0x1DFFF },      { 0x1E007, 0x1E007 },      { 0x1E019, 0x1E01A },      { 0x1E022, 0x1E022 },      { 0x1E025, 0x1E025 }, -    { 0x1E02B, 0x1E0FF }, +    { 0x1E02B, 0x1E02F }, +    { 0x1E06E, 0x1E08E }, +    { 0x1E090, 0x1E0FF },      { 0x1E12D, 0x1E12F },      { 0x1E13E, 0x1E13F },      { 0x1E14A, 0x1E14D },      { 0x1E150, 0x1E28F },      { 0x1E2AF, 0x1E2BF },      { 0x1E2FA, 0x1E2FE }, -    { 0x1E300, 0x1E7DF }, +    { 0x1E300, 0x1E4CF }, +    { 0x1E4FA, 0x1E7DF },      { 0x1E7E7, 0x1E7E7 },      { 0x1E7EC, 0x1E7EC },      { 0x1E7EF, 0x1E7EF }, @@ -674,11 +684,11 @@      { 0x1F249, 0x1F24F },      { 0x1F252, 0x1F25F },      { 0x1F266, 0x1F2FF }, -    { 0x1F6D8, 0x1F6DC }, +    { 0x1F6D8, 0x1F6DB },      { 0x1F6ED, 0x1F6EF },      { 0x1F6FD, 0x1F6FF }, -    { 0x1F774, 0x1F77F }, -    { 0x1F7D9, 0x1F7DF }, +    { 0x1F777, 0x1F77A }, +    { 0x1F7DA, 0x1F7DF },      { 0x1F7EC, 0x1F7EF },      { 0x1F7F1, 0x1F7FF },      { 0x1F80C, 0x1F80F }, @@ -689,25 +699,24 @@      { 0x1F8B2, 0x1F8FF },      { 0x1FA54, 0x1FA5F },      { 0x1FA6E, 0x1FA6F }, -    { 0x1FA75, 0x1FA77 },      { 0x1FA7D, 0x1FA7F }, -    { 0x1FA87, 0x1FA8F }, -    { 0x1FAAD, 0x1FAAF }, -    { 0x1FABB, 0x1FABF }, -    { 0x1FAC6, 0x1FACF }, -    { 0x1FADA, 0x1FADF }, -    { 0x1FAE8, 0x1FAEF }, -    { 0x1FAF7, 0x1FAFF }, +    { 0x1FA89, 0x1FA8F }, +    { 0x1FABE, 0x1FABE }, +    { 0x1FAC6, 0x1FACD }, +    { 0x1FADC, 0x1FADF }, +    { 0x1FAE9, 0x1FAEF }, +    { 0x1FAF9, 0x1FAFF },      { 0x1FB93, 0x1FB93 },      { 0x1FBCB, 0x1FBEF },      { 0x1FBFA, 0x1FFFD },      { 0x2A6E0, 0x2A6FF }, -    { 0x2B739, 0x2B73F }, +    { 0x2B73A, 0x2B73F },      { 0x2B81E, 0x2B81F },      { 0x2CEA2, 0x2CEAF },      { 0x2EBE1, 0x2F7FF },      { 0x2FA1E, 0x2FFFD }, -    { 0x3134B, 0x3FFFD }, +    { 0x3134B, 0x3134F }, +    { 0x323B0, 0x3FFFD },      { 0x40000, 0x4FFFD },      { 0x50000, 0x5FFFD },      { 0x60000, 0x6FFFD }, diff --git a/tests/unictype/test-pr_unified_ideograph.c b/tests/unictype/test-pr_unified_ideograph.c index f4ddd2bb..234014a7 100644 --- a/tests/unictype/test-pr_unified_ideograph.c +++ b/tests/unictype/test-pr_unified_ideograph.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -27,11 +27,12 @@      { 0xFA23, 0xFA24 },      { 0xFA27, 0xFA29 },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 }, -    { 0x30000, 0x3134A } +    { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF }  #define PREDICATE(c) uc_is_property_unified_ideograph (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_uppercase.c b/tests/unictype/test-pr_uppercase.c index 325d3bf3..03a6b490 100644 --- a/tests/unictype/test-pr_uppercase.c +++ b/tests/unictype/test-pr_uppercase.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_variation_selector.c b/tests/unictype/test-pr_variation_selector.c index d34a4166..98f81fef 100644 --- a/tests/unictype/test-pr_variation_selector.c +++ b/tests/unictype/test-pr_variation_selector.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_white_space.c b/tests/unictype/test-pr_white_space.c index 721c587b..91367da2 100644 --- a/tests/unictype/test-pr_white_space.c +++ b/tests/unictype/test-pr_white_space.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-pr_xid_continue.c b/tests/unictype/test-pr_xid_continue.c index 9f2fbe5f..34d4708b 100644 --- a/tests/unictype/test-pr_xid_continue.c +++ b/tests/unictype/test-pr_xid_continue.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -175,7 +175,7 @@      { 0x0CDD, 0x0CDE },      { 0x0CE0, 0x0CE3 },      { 0x0CE6, 0x0CEF }, -    { 0x0CF1, 0x0CF2 }, +    { 0x0CF1, 0x0CF3 },      { 0x0D00, 0x0D0C },      { 0x0D0E, 0x0D10 },      { 0x0D12, 0x0D44 }, @@ -208,7 +208,7 @@      { 0x0EA7, 0x0EBD },      { 0x0EC0, 0x0EC4 },      { 0x0EC6, 0x0EC6 }, -    { 0x0EC8, 0x0ECD }, +    { 0x0EC8, 0x0ECE },      { 0x0ED0, 0x0ED9 },      { 0x0EDC, 0x0EDF },      { 0x0F00, 0x0F00 }, @@ -528,7 +528,7 @@      { 0x10E80, 0x10EA9 },      { 0x10EAB, 0x10EAC },      { 0x10EB0, 0x10EB1 }, -    { 0x10F00, 0x10F1C }, +    { 0x10EFD, 0x10F1C },      { 0x10F27, 0x10F27 },      { 0x10F30, 0x10F50 },      { 0x10F70, 0x10F85 }, @@ -551,7 +551,7 @@      { 0x111DC, 0x111DC },      { 0x11200, 0x11211 },      { 0x11213, 0x11237 }, -    { 0x1123E, 0x1123E }, +    { 0x1123E, 0x11241 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -632,12 +632,17 @@      { 0x11D93, 0x11D98 },      { 0x11DA0, 0x11DA9 },      { 0x11EE0, 0x11EF6 }, +    { 0x11F00, 0x11F10 }, +    { 0x11F12, 0x11F3A }, +    { 0x11F3E, 0x11F42 }, +    { 0x11F50, 0x11F59 },      { 0x11FB0, 0x11FB0 },      { 0x12000, 0x12399 },      { 0x12400, 0x1246E },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF0 }, -    { 0x13000, 0x1342E }, +    { 0x13000, 0x1342F }, +    { 0x13440, 0x13455 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -665,7 +670,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -719,17 +726,21 @@      { 0x1DA9B, 0x1DA9F },      { 0x1DAA1, 0x1DAAF },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A },      { 0x1E000, 0x1E006 },      { 0x1E008, 0x1E018 },      { 0x1E01B, 0x1E021 },      { 0x1E023, 0x1E024 },      { 0x1E026, 0x1E02A }, +    { 0x1E030, 0x1E06D }, +    { 0x1E08F, 0x1E08F },      { 0x1E100, 0x1E12C },      { 0x1E130, 0x1E13D },      { 0x1E140, 0x1E149 },      { 0x1E14E, 0x1E14E },      { 0x1E290, 0x1E2AE },      { 0x1E2C0, 0x1E2F9 }, +    { 0x1E4D0, 0x1E4F9 },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -773,12 +784,13 @@      { 0x1EEAB, 0x1EEBB },      { 0x1FBF0, 0x1FBF9 },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D },      { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF },      { 0xE0100, 0xE01EF }  #define PREDICATE(c) uc_is_property_xid_continue (c) diff --git a/tests/unictype/test-pr_xid_start.c b/tests/unictype/test-pr_xid_start.c index 5c759c62..0e4f7d31 100644 --- a/tests/unictype/test-pr_xid_start.c +++ b/tests/unictype/test-pr_xid_start.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -492,6 +492,7 @@      { 0x111DC, 0x111DC },      { 0x11200, 0x11211 },      { 0x11213, 0x1122B }, +    { 0x1123F, 0x11240 },      { 0x11280, 0x11286 },      { 0x11288, 0x11288 },      { 0x1128A, 0x1128D }, @@ -554,12 +555,16 @@      { 0x11D6A, 0x11D89 },      { 0x11D98, 0x11D98 },      { 0x11EE0, 0x11EF2 }, +    { 0x11F02, 0x11F02 }, +    { 0x11F04, 0x11F10 }, +    { 0x11F12, 0x11F33 },      { 0x11FB0, 0x11FB0 },      { 0x12000, 0x12399 },      { 0x12400, 0x1246E },      { 0x12480, 0x12543 },      { 0x12F90, 0x12FF0 }, -    { 0x13000, 0x1342E }, +    { 0x13000, 0x1342F }, +    { 0x13441, 0x13446 },      { 0x14400, 0x14646 },      { 0x16800, 0x16A38 },      { 0x16A40, 0x16A5E }, @@ -582,7 +587,9 @@      { 0x1AFF5, 0x1AFFB },      { 0x1AFFD, 0x1AFFE },      { 0x1B000, 0x1B122 }, +    { 0x1B132, 0x1B132 },      { 0x1B150, 0x1B152 }, +    { 0x1B155, 0x1B155 },      { 0x1B164, 0x1B167 },      { 0x1B170, 0x1B2FB },      { 0x1BC00, 0x1BC6A }, @@ -620,11 +627,14 @@      { 0x1D7AA, 0x1D7C2 },      { 0x1D7C4, 0x1D7CB },      { 0x1DF00, 0x1DF1E }, +    { 0x1DF25, 0x1DF2A }, +    { 0x1E030, 0x1E06D },      { 0x1E100, 0x1E12C },      { 0x1E137, 0x1E13D },      { 0x1E14E, 0x1E14E },      { 0x1E290, 0x1E2AD },      { 0x1E2C0, 0x1E2EB }, +    { 0x1E4D0, 0x1E4EB },      { 0x1E7E0, 0x1E7E6 },      { 0x1E7E8, 0x1E7EB },      { 0x1E7ED, 0x1E7EE }, @@ -666,12 +676,13 @@      { 0x1EEA5, 0x1EEA9 },      { 0x1EEAB, 0x1EEBB },      { 0x20000, 0x2A6DF }, -    { 0x2A700, 0x2B738 }, +    { 0x2A700, 0x2B739 },      { 0x2B740, 0x2B81D },      { 0x2B820, 0x2CEA1 },      { 0x2CEB0, 0x2EBE0 },      { 0x2F800, 0x2FA1D }, -    { 0x30000, 0x3134A } +    { 0x30000, 0x3134A }, +    { 0x31350, 0x323AF }  #define PREDICATE(c) uc_is_property_xid_start (c)  #include "test-predicate-part2.h" diff --git a/tests/unictype/test-pr_zero_width.c b/tests/unictype/test-pr_zero_width.c index 52481856..a8eef5ec 100644 --- a/tests/unictype/test-pr_zero_width.c +++ b/tests/unictype/test-pr_zero_width.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -33,7 +33,7 @@      { 0xFFF9, 0xFFFB },      { 0x110BD, 0x110BD },      { 0x110CD, 0x110CD }, -    { 0x13430, 0x13438 }, +    { 0x13430, 0x1343F },      { 0x1BCA0, 0x1BCA3 },      { 0x1D173, 0x1D17A },      { 0xE0001, 0xE0001 }, diff --git a/tests/unictype/test-predicate-part1.h b/tests/unictype/test-predicate-part1.h index db3c5d7f..76de3a78 100644 --- a/tests/unictype/test-predicate-part1.h +++ b/tests/unictype/test-predicate-part1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-predicate-part2.h b/tests/unictype/test-predicate-part2.h index 52ff253e..d42921ab 100644 --- a/tests/unictype/test-predicate-part2.h +++ b/tests/unictype/test-predicate-part2.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-scripts.c b/tests/unictype/test-scripts.c index 3bdbd212..059006e1 100644 --- a/tests/unictype/test-scripts.c +++ b/tests/unictype/test-scripts.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-sy_c_ident.c b/tests/unictype/test-sy_c_ident.c index b8e22959..baf8b106 100644 --- a/tests/unictype/test-sy_c_ident.c +++ b/tests/unictype/test-sy_c_ident.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-sy_c_whitespace.c b/tests/unictype/test-sy_c_whitespace.c index 4afb502a..1d047752 100644 --- a/tests/unictype/test-sy_c_whitespace.c +++ b/tests/unictype/test-sy_c_whitespace.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unictype/test-sy_java_ident.c b/tests/unictype/test-sy_java_ident.c index b65c8f35..206d3940 100644 --- a/tests/unictype/test-sy_java_ident.c +++ b/tests/unictype/test-sy_java_ident.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unictype/test-sy_java_whitespace.c b/tests/unictype/test-sy_java_whitespace.c index 3f72a662..4ce5982a 100644 --- a/tests/unictype/test-sy_java_whitespace.c +++ b/tests/unictype/test-sy_java_whitespace.c @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/unigbrk/GraphemeBreakTest.txt b/tests/unigbrk/GraphemeBreakTest.txt index eff2fd33..3c73f97b 100644 --- a/tests/unigbrk/GraphemeBreakTest.txt +++ b/tests/unigbrk/GraphemeBreakTest.txt @@ -1,11 +1,11 @@ -# GraphemeBreakTest-14.0.0.txt -# Date: 2021-03-08, 06:22:32 GMT -# © 2021 Unicode®, Inc. +# GraphemeBreakTest-15.0.0.txt +# Date: 2022-02-26, 00:38:37 GMT +# © 2022 Unicode®, Inc.  # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see http://www.unicode.org/terms_of_use.html +# For terms of use, see https://www.unicode.org/terms_of_use.html  #  # Unicode Character Database -#   For documentation, see http://www.unicode.org/reports/tr44/ +#   For documentation, see https://www.unicode.org/reports/tr44/  #  # Default Grapheme_Cluster_Break Test  # diff --git a/tests/unigbrk/test-u16-grapheme-breaks.c b/tests/unigbrk/test-u16-grapheme-breaks.c index f315054a..a1cb80da 100644 --- a/tests/unigbrk/test-u16-grapheme-breaks.c +++ b/tests/unigbrk/test-u16-grapheme-breaks.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unigbrk/test-u16-grapheme-next.c b/tests/unigbrk/test-u16-grapheme-next.c index e30597f9..bb7aba65 100644 --- a/tests/unigbrk/test-u16-grapheme-next.c +++ b/tests/unigbrk/test-u16-grapheme-next.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unigbrk/test-u16-grapheme-prev.c b/tests/unigbrk/test-u16-grapheme-prev.c index c475dee8..986b5ddf 100644 --- a/tests/unigbrk/test-u16-grapheme-prev.c +++ b/tests/unigbrk/test-u16-grapheme-prev.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unigbrk/test-u32-grapheme-breaks.c b/tests/unigbrk/test-u32-grapheme-breaks.c index 252df622..7af266e8 100644 --- a/tests/unigbrk/test-u32-grapheme-breaks.c +++ b/tests/unigbrk/test-u32-grapheme-breaks.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unigbrk/test-u32-grapheme-next.c b/tests/unigbrk/test-u32-grapheme-next.c index 85a17df5..1762378c 100644 --- a/tests/unigbrk/test-u32-grapheme-next.c +++ b/tests/unigbrk/test-u32-grapheme-next.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unigbrk/test-u32-grapheme-prev.c b/tests/unigbrk/test-u32-grapheme-prev.c index beeeef76..d3838f52 100644 --- a/tests/unigbrk/test-u32-grapheme-prev.c +++ b/tests/unigbrk/test-u32-grapheme-prev.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unigbrk/test-u8-grapheme-breaks.c b/tests/unigbrk/test-u8-grapheme-breaks.c index d6f3d55a..fdc0d505 100644 --- a/tests/unigbrk/test-u8-grapheme-breaks.c +++ b/tests/unigbrk/test-u8-grapheme-breaks.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unigbrk/test-u8-grapheme-next.c b/tests/unigbrk/test-u8-grapheme-next.c index a58ecf0f..5c61d847 100644 --- a/tests/unigbrk/test-u8-grapheme-next.c +++ b/tests/unigbrk/test-u8-grapheme-next.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unigbrk/test-u8-grapheme-prev.c b/tests/unigbrk/test-u8-grapheme-prev.c index 668e04b5..a59e264d 100644 --- a/tests/unigbrk/test-u8-grapheme-prev.c +++ b/tests/unigbrk/test-u8-grapheme-prev.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unigbrk/test-uc-gbrk-prop.c b/tests/unigbrk/test-uc-gbrk-prop.c index 1e7d2dfb..605d83dc 100644 --- a/tests/unigbrk/test-uc-gbrk-prop.c +++ b/tests/unigbrk/test-uc-gbrk-prop.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unigbrk/test-uc-gbrk-prop.h b/tests/unigbrk/test-uc-gbrk-prop.h index 752db2f8..d975a1e4 100644 --- a/tests/unigbrk/test-uc-gbrk-prop.h +++ b/tests/unigbrk/test-uc-gbrk-prop.h @@ -4,7 +4,7 @@     This file 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, +   by the Free Software Foundation, either version 3 of the License,     or (at your option) any later version.     This file is distributed in the hope that it will be useful, @@ -228,6 +228,8 @@  { 0x0CD7, GBP_EXTEND },  { 0x0CE2, GBP_OTHER },  { 0x0CE4, GBP_EXTEND }, +{ 0x0CF3, GBP_OTHER }, +{ 0x0CF4, GBP_SPACINGMARK },  { 0x0D00, GBP_OTHER },  { 0x0D02, GBP_EXTEND },  { 0x0D04, GBP_SPACINGMARK }, @@ -276,7 +278,7 @@  { 0x0EB4, GBP_SPACINGMARK },  { 0x0EBD, GBP_EXTEND },  { 0x0EC8, GBP_OTHER }, -{ 0x0ECE, GBP_EXTEND }, +{ 0x0ECF, GBP_EXTEND },  { 0x0F18, GBP_OTHER },  { 0x0F1A, GBP_EXTEND },  { 0x0F35, GBP_OTHER }, @@ -1384,6 +1386,8 @@  { 0x10D28, GBP_EXTEND },  { 0x10EAB, GBP_OTHER },  { 0x10EAD, GBP_EXTEND }, +{ 0x10EFD, GBP_OTHER }, +{ 0x10F00, GBP_EXTEND },  { 0x10F46, GBP_OTHER },  { 0x10F51, GBP_EXTEND },  { 0x10F82, GBP_OTHER }, @@ -1445,6 +1449,8 @@  { 0x11238, GBP_EXTEND },  { 0x1123E, GBP_OTHER },  { 0x1123F, GBP_EXTEND }, +{ 0x11241, GBP_OTHER }, +{ 0x11242, GBP_EXTEND },  { 0x112DF, GBP_OTHER },  { 0x112E0, GBP_EXTEND },  { 0x112E3, GBP_SPACINGMARK }, @@ -1608,8 +1614,23 @@  { 0x11EF3, GBP_OTHER },  { 0x11EF5, GBP_EXTEND },  { 0x11EF7, GBP_SPACINGMARK }, +{ 0x11F00, GBP_OTHER }, +{ 0x11F02, GBP_EXTEND }, +{ 0x11F03, GBP_PREPEND }, +{ 0x11F04, GBP_SPACINGMARK }, +{ 0x11F34, GBP_OTHER }, +{ 0x11F36, GBP_SPACINGMARK }, +{ 0x11F3B, GBP_EXTEND }, +{ 0x11F3E, GBP_OTHER }, +{ 0x11F40, GBP_SPACINGMARK }, +{ 0x11F41, GBP_EXTEND }, +{ 0x11F42, GBP_SPACINGMARK }, +{ 0x11F43, GBP_EXTEND },  { 0x13430, GBP_OTHER }, -{ 0x13439, GBP_CONTROL }, +{ 0x13440, GBP_CONTROL }, +{ 0x13441, GBP_EXTEND }, +{ 0x13447, GBP_OTHER }, +{ 0x13456, GBP_EXTEND },  { 0x16AF0, GBP_OTHER },  { 0x16AF5, GBP_EXTEND },  { 0x16B30, GBP_OTHER }, @@ -1669,12 +1690,16 @@  { 0x1E025, GBP_EXTEND },  { 0x1E026, GBP_OTHER },  { 0x1E02B, GBP_EXTEND }, +{ 0x1E08F, GBP_OTHER }, +{ 0x1E090, GBP_EXTEND },  { 0x1E130, GBP_OTHER },  { 0x1E137, GBP_EXTEND },  { 0x1E2AE, GBP_OTHER },  { 0x1E2AF, GBP_EXTEND },  { 0x1E2EC, GBP_OTHER },  { 0x1E2F0, GBP_EXTEND }, +{ 0x1E4EC, GBP_OTHER }, +{ 0x1E4F0, GBP_EXTEND },  { 0x1E8D0, GBP_OTHER },  { 0x1E8D7, GBP_EXTEND },  { 0x1E944, GBP_OTHER }, diff --git a/tests/unigbrk/test-uc-grapheme-breaks.c b/tests/unigbrk/test-uc-grapheme-breaks.c index dad6bf36..1e3b1ee8 100644 --- a/tests/unigbrk/test-uc-grapheme-breaks.c +++ b/tests/unigbrk/test-uc-grapheme-breaks.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/unigbrk/test-uc-is-grapheme-break.c b/tests/unigbrk/test-uc-is-grapheme-break.c index 70bd5197..433ba686 100644 --- a/tests/unigbrk/test-uc-is-grapheme-break.c +++ b/tests/unigbrk/test-uc-is-grapheme-break.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, @@ -21,7 +21,6 @@  /* Specification. */  #include <unigbrk.h> -#include <stdbool.h>  #include <stdio.h>  #include <stdlib.h>  #include <string.h> diff --git a/tests/unigbrk/test-ulc-grapheme-breaks.c b/tests/unigbrk/test-ulc-grapheme-breaks.c index dae68758..8ef608fe 100644 --- a/tests/unigbrk/test-ulc-grapheme-breaks.c +++ b/tests/unigbrk/test-ulc-grapheme-breaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unigbrk/test-ulc-grapheme-breaks.sh b/tests/unigbrk/test-ulc-grapheme-breaks.sh index 0cad7608..119228ef 100755 --- a/tests/unigbrk/test-ulc-grapheme-breaks.sh +++ b/tests/unigbrk/test-ulc-grapheme-breaks.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test in an ISO-8895-6 locale. -: ${LOCALE_AR=ar_SA} +: "${LOCALE_AR=ar_SA}"  if test $LOCALE_AR = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no traditional Arabic locale is installed" diff --git a/tests/unilbrk/test-u16-possible-linebreaks.c b/tests/unilbrk/test-u16-possible-linebreaks.c index 1d897a20..0156d455 100644 --- a/tests/unilbrk/test-u16-possible-linebreaks.c +++ b/tests/unilbrk/test-u16-possible-linebreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unilbrk/test-u16-width-linebreaks.c b/tests/unilbrk/test-u16-width-linebreaks.c index a6a209fa..c9605447 100644 --- a/tests/unilbrk/test-u16-width-linebreaks.c +++ b/tests/unilbrk/test-u16-width-linebreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unilbrk/test-u32-possible-linebreaks.c b/tests/unilbrk/test-u32-possible-linebreaks.c index 50e59109..5c08c974 100644 --- a/tests/unilbrk/test-u32-possible-linebreaks.c +++ b/tests/unilbrk/test-u32-possible-linebreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unilbrk/test-u32-width-linebreaks.c b/tests/unilbrk/test-u32-width-linebreaks.c index 1543f313..fa9c09b6 100644 --- a/tests/unilbrk/test-u32-width-linebreaks.c +++ b/tests/unilbrk/test-u32-width-linebreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unilbrk/test-u8-possible-linebreaks.c b/tests/unilbrk/test-u8-possible-linebreaks.c index 3640e560..37f27067 100644 --- a/tests/unilbrk/test-u8-possible-linebreaks.c +++ b/tests/unilbrk/test-u8-possible-linebreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unilbrk/test-u8-width-linebreaks.c b/tests/unilbrk/test-u8-width-linebreaks.c index 4fb97436..e9552350 100644 --- a/tests/unilbrk/test-u8-width-linebreaks.c +++ b/tests/unilbrk/test-u8-width-linebreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unilbrk/test-ulc-possible-linebreaks.c b/tests/unilbrk/test-ulc-possible-linebreaks.c index 5e4381ef..e6859277 100644 --- a/tests/unilbrk/test-ulc-possible-linebreaks.c +++ b/tests/unilbrk/test-ulc-possible-linebreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unilbrk/test-ulc-width-linebreaks.c b/tests/unilbrk/test-ulc-width-linebreaks.c index ed4909b1..0fffe3ae 100644 --- a/tests/unilbrk/test-ulc-width-linebreaks.c +++ b/tests/unilbrk/test-ulc-width-linebreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniname/NameAliases.txt b/tests/uniname/NameAliases.txt index 8519284d..db3a863a 100644 --- a/tests/uniname/NameAliases.txt +++ b/tests/uniname/NameAliases.txt @@ -1,10 +1,10 @@ -# NameAliases-14.0.0.txt -# Date: 2020-10-21, 22:28:00 GMT [KW, LI] -# © 2020 Unicode®, Inc. -# For terms of use, see http://www.unicode.org/terms_of_use.html +# NameAliases-15.0.0.txt +# Date: 2022-07-26, 20:13:00 GMT [KW] +# © 2022 Unicode®, Inc. +# For terms of use, see https://www.unicode.org/terms_of_use.html  #  # Unicode Character Database -# For documentation, see http://www.unicode.org/reports/tr44/ +# For documentation, see https://www.unicode.org/reports/tr44/  #  # This file is a normative contributory data file in the  # Unicode Character Database. @@ -40,7 +40,7 @@  # control codes (which for historical reasons have no Unicode character name)  # or for format characters.  # -# For documentation, see NamesList.html and http://www.unicode.org/reports/tr44/ +# For documentation, see NamesList.html and https://www.unicode.org/reports/tr44/  #  # FORMAT  # @@ -135,6 +135,7 @@  0018;CAN;abbreviation  0019;END OF MEDIUM;control  0019;EOM;abbreviation +0019;EM;abbreviation  001A;SUBSTITUTE;control  001A;SUB;abbreviation  001B;ESCAPE;control @@ -163,7 +164,7 @@  # (and corresponding abbreviations) for these code  # points are included here because these names leaked  # out from the draft documents and were published in -# at least one RFC whose names for code points was +# at least one RFC whose names for code points were  # implemented in Perl regex expressions.  0080;PADDING CHARACTER;figment @@ -254,6 +255,7 @@  01A2;LATIN CAPITAL LETTER GHA;correction  01A3;LATIN SMALL LETTER GHA;correction  034F;CGJ;abbreviation +0616;ARABIC SMALL HIGH LIGATURE ALEF WITH YEH BARREE;correction  061C;ALM;abbreviation  0709;SYRIAC SUBLINEAR COLON SKEWED LEFT;correction  0CDE;KANNADA LETTER LLLA;correction @@ -271,6 +273,7 @@  180D;FVS3;abbreviation  180E;MVS;abbreviation  180F;FVS4;abbreviation +1BBD;SUNDANESE LETTER ARCHAIC I;correction  200B;ZWSP;abbreviation  200C;ZWNJ;abbreviation  200D;ZWJ;abbreviation diff --git a/tests/uniname/UnicodeData.txt b/tests/uniname/UnicodeData.txt index b5abef7e..ea963a71 100644 --- a/tests/uniname/UnicodeData.txt +++ b/tests/uniname/UnicodeData.txt @@ -2975,6 +2975,7 @@  0CEF;KANNADA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;  0CF1;KANNADA SIGN JIHVAMULIYA;Lo;0;L;;;;;N;;;;;  0CF2;KANNADA SIGN UPADHMANIYA;Lo;0;L;;;;;N;;;;; +0CF3;KANNADA SIGN COMBINING ANUSVARA ABOVE RIGHT;Mc;0;L;;;;;N;;;;;  0D00;MALAYALAM SIGN COMBINING ANUSVARA ABOVE;Mn;0;NSM;;;;;N;;;;;  0D01;MALAYALAM SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;;  0D02;MALAYALAM SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; @@ -3339,6 +3340,7 @@  0ECB;LAO TONE MAI CATAWA;Mn;122;NSM;;;;;N;;;;;  0ECC;LAO CANCELLATION MARK;Mn;0;NSM;;;;;N;;;;;  0ECD;LAO NIGGAHITA;Mn;0;NSM;;;;;N;;;;; +0ECE;LAO YAMAKKAN;Mn;0;NSM;;;;;N;;;;;  0ED0;LAO DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;  0ED1;LAO DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;  0ED2;LAO DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; @@ -19393,6 +19395,9 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  10EAD;YEZIDI HYPHENATION MARK;Pd;0;R;;;;;N;;;;;  10EB0;YEZIDI LETTER LAM WITH DOT ABOVE;Lo;0;R;;;;;N;;;;;  10EB1;YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE;Lo;0;R;;;;;N;;;;; +10EFD;ARABIC SMALL LOW WORD SAKTA;Mn;220;NSM;;;;;N;;;;; +10EFE;ARABIC SMALL LOW WORD QASR;Mn;220;NSM;;;;;N;;;;; +10EFF;ARABIC SMALL LOW WORD MADDA;Mn;220;NSM;;;;;N;;;;;  10F00;OLD SOGDIAN LETTER ALEPH;Lo;0;R;;;;;N;;;;;  10F01;OLD SOGDIAN LETTER FINAL ALEPH;Lo;0;R;;;;;N;;;;;  10F02;OLD SOGDIAN LETTER BETH;Lo;0;R;;;;;N;;;;; @@ -20058,6 +20063,9 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1123C;KHOJKI DOUBLE SECTION MARK;Po;0;L;;;;;N;;;;;  1123D;KHOJKI ABBREVIATION SIGN;Po;0;L;;;;;N;;;;;  1123E;KHOJKI SIGN SUKUN;Mn;0;NSM;;;;;N;;;;; +1123F;KHOJKI LETTER QA;Lo;0;L;;;;;N;;;;; +11240;KHOJKI LETTER SHORT I;Lo;0;L;;;;;N;;;;; +11241;KHOJKI VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;;  11280;MULTANI LETTER A;Lo;0;L;;;;;N;;;;;  11281;MULTANI LETTER I;Lo;0;L;;;;;N;;;;;  11282;MULTANI LETTER U;Lo;0;L;;;;;N;;;;; @@ -21256,6 +21264,16 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  11AF6;PAU CIN HAU LOW-FALLING TONE LONG FINAL;Lo;0;L;;;;;N;;;;;  11AF7;PAU CIN HAU LOW-FALLING TONE FINAL;Lo;0;L;;;;;N;;;;;  11AF8;PAU CIN HAU GLOTTAL STOP FINAL;Lo;0;L;;;;;N;;;;; +11B00;DEVANAGARI HEAD MARK;Po;0;L;;;;;N;;;;; +11B01;DEVANAGARI HEAD MARK WITH HEADSTROKE;Po;0;L;;;;;N;;;;; +11B02;DEVANAGARI SIGN BHALE;Po;0;L;;;;;N;;;;; +11B03;DEVANAGARI SIGN BHALE WITH HOOK;Po;0;L;;;;;N;;;;; +11B04;DEVANAGARI SIGN EXTENDED BHALE;Po;0;L;;;;;N;;;;; +11B05;DEVANAGARI SIGN EXTENDED BHALE WITH HOOK;Po;0;L;;;;;N;;;;; +11B06;DEVANAGARI SIGN WESTERN FIVE-LIKE BHALE;Po;0;L;;;;;N;;;;; +11B07;DEVANAGARI SIGN WESTERN NINE-LIKE BHALE;Po;0;L;;;;;N;;;;; +11B08;DEVANAGARI SIGN REVERSED NINE-LIKE BHALE;Po;0;L;;;;;N;;;;; +11B09;DEVANAGARI SIGN MINDU;Po;0;L;;;;;N;;;;;  11C00;BHAIKSUKI LETTER A;Lo;0;L;;;;;N;;;;;  11C01;BHAIKSUKI LETTER AA;Lo;0;L;;;;;N;;;;;  11C02;BHAIKSUKI LETTER I;Lo;0;L;;;;;N;;;;; @@ -21584,6 +21602,92 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  11EF6;MAKASAR VOWEL SIGN O;Mc;0;L;;;;;N;;;;;  11EF7;MAKASAR PASSIMBANG;Po;0;L;;;;;N;;;;;  11EF8;MAKASAR END OF SECTION;Po;0;L;;;;;N;;;;; +11F00;KAWI SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;; +11F01;KAWI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; +11F02;KAWI SIGN REPHA;Lo;0;L;;;;;N;;;;; +11F03;KAWI SIGN VISARGA;Mc;0;L;;;;;N;;;;; +11F04;KAWI LETTER A;Lo;0;L;;;;;N;;;;; +11F05;KAWI LETTER AA;Lo;0;L;;;;;N;;;;; +11F06;KAWI LETTER I;Lo;0;L;;;;;N;;;;; +11F07;KAWI LETTER II;Lo;0;L;;;;;N;;;;; +11F08;KAWI LETTER U;Lo;0;L;;;;;N;;;;; +11F09;KAWI LETTER UU;Lo;0;L;;;;;N;;;;; +11F0A;KAWI LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; +11F0B;KAWI LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; +11F0C;KAWI LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; +11F0D;KAWI LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; +11F0E;KAWI LETTER E;Lo;0;L;;;;;N;;;;; +11F0F;KAWI LETTER AI;Lo;0;L;;;;;N;;;;; +11F10;KAWI LETTER O;Lo;0;L;;;;;N;;;;; +11F12;KAWI LETTER KA;Lo;0;L;;;;;N;;;;; +11F13;KAWI LETTER KHA;Lo;0;L;;;;;N;;;;; +11F14;KAWI LETTER GA;Lo;0;L;;;;;N;;;;; +11F15;KAWI LETTER GHA;Lo;0;L;;;;;N;;;;; +11F16;KAWI LETTER NGA;Lo;0;L;;;;;N;;;;; +11F17;KAWI LETTER CA;Lo;0;L;;;;;N;;;;; +11F18;KAWI LETTER CHA;Lo;0;L;;;;;N;;;;; +11F19;KAWI LETTER JA;Lo;0;L;;;;;N;;;;; +11F1A;KAWI LETTER JHA;Lo;0;L;;;;;N;;;;; +11F1B;KAWI LETTER NYA;Lo;0;L;;;;;N;;;;; +11F1C;KAWI LETTER TTA;Lo;0;L;;;;;N;;;;; +11F1D;KAWI LETTER TTHA;Lo;0;L;;;;;N;;;;; +11F1E;KAWI LETTER DDA;Lo;0;L;;;;;N;;;;; +11F1F;KAWI LETTER DDHA;Lo;0;L;;;;;N;;;;; +11F20;KAWI LETTER NNA;Lo;0;L;;;;;N;;;;; +11F21;KAWI LETTER TA;Lo;0;L;;;;;N;;;;; +11F22;KAWI LETTER THA;Lo;0;L;;;;;N;;;;; +11F23;KAWI LETTER DA;Lo;0;L;;;;;N;;;;; +11F24;KAWI LETTER DHA;Lo;0;L;;;;;N;;;;; +11F25;KAWI LETTER NA;Lo;0;L;;;;;N;;;;; +11F26;KAWI LETTER PA;Lo;0;L;;;;;N;;;;; +11F27;KAWI LETTER PHA;Lo;0;L;;;;;N;;;;; +11F28;KAWI LETTER BA;Lo;0;L;;;;;N;;;;; +11F29;KAWI LETTER BHA;Lo;0;L;;;;;N;;;;; +11F2A;KAWI LETTER MA;Lo;0;L;;;;;N;;;;; +11F2B;KAWI LETTER YA;Lo;0;L;;;;;N;;;;; +11F2C;KAWI LETTER RA;Lo;0;L;;;;;N;;;;; +11F2D;KAWI LETTER LA;Lo;0;L;;;;;N;;;;; +11F2E;KAWI LETTER WA;Lo;0;L;;;;;N;;;;; +11F2F;KAWI LETTER SHA;Lo;0;L;;;;;N;;;;; +11F30;KAWI LETTER SSA;Lo;0;L;;;;;N;;;;; +11F31;KAWI LETTER SA;Lo;0;L;;;;;N;;;;; +11F32;KAWI LETTER HA;Lo;0;L;;;;;N;;;;; +11F33;KAWI LETTER JNYA;Lo;0;L;;;;;N;;;;; +11F34;KAWI VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; +11F35;KAWI VOWEL SIGN ALTERNATE AA;Mc;0;L;;;;;N;;;;; +11F36;KAWI VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; +11F37;KAWI VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; +11F38;KAWI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; +11F39;KAWI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; +11F3A;KAWI VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;; +11F3E;KAWI VOWEL SIGN E;Mc;0;L;;;;;N;;;;; +11F3F;KAWI VOWEL SIGN AI;Mc;0;L;;;;;N;;;;; +11F40;KAWI VOWEL SIGN EU;Mn;0;NSM;;;;;N;;;;; +11F41;KAWI SIGN KILLER;Mc;9;L;;;;;N;;;;; +11F42;KAWI CONJOINER;Mn;9;NSM;;;;;N;;;;; +11F43;KAWI DANDA;Po;0;L;;;;;N;;;;; +11F44;KAWI DOUBLE DANDA;Po;0;L;;;;;N;;;;; +11F45;KAWI PUNCTUATION SECTION MARKER;Po;0;L;;;;;N;;;;; +11F46;KAWI PUNCTUATION ALTERNATE SECTION MARKER;Po;0;L;;;;;N;;;;; +11F47;KAWI PUNCTUATION FLOWER;Po;0;L;;;;;N;;;;; +11F48;KAWI PUNCTUATION SPACE FILLER;Po;0;L;;;;;N;;;;; +11F49;KAWI PUNCTUATION DOT;Po;0;L;;;;;N;;;;; +11F4A;KAWI PUNCTUATION DOUBLE DOT;Po;0;L;;;;;N;;;;; +11F4B;KAWI PUNCTUATION TRIPLE DOT;Po;0;L;;;;;N;;;;; +11F4C;KAWI PUNCTUATION CIRCLE;Po;0;L;;;;;N;;;;; +11F4D;KAWI PUNCTUATION FILLED CIRCLE;Po;0;L;;;;;N;;;;; +11F4E;KAWI PUNCTUATION SPIRAL;Po;0;L;;;;;N;;;;; +11F4F;KAWI PUNCTUATION CLOSING SPIRAL;Po;0;L;;;;;N;;;;; +11F50;KAWI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +11F51;KAWI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +11F52;KAWI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +11F53;KAWI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +11F54;KAWI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +11F55;KAWI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +11F56;KAWI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +11F57;KAWI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +11F58;KAWI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +11F59;KAWI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;  11FB0;LISU LETTER YHA;Lo;0;L;;;;;N;;;;;  11FC0;TAMIL FRACTION ONE THREE-HUNDRED-AND-TWENTIETH;No;0;L;;;;1/320;N;;;;;  11FC1;TAMIL FRACTION ONE ONE-HUNDRED-AND-SIXTIETH;No;0;L;;;;1/160;N;;;;; @@ -24040,6 +24144,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1342C;EGYPTIAN HIEROGLYPH AA030;Lo;0;L;;;;;N;;;;;  1342D;EGYPTIAN HIEROGLYPH AA031;Lo;0;L;;;;;N;;;;;  1342E;EGYPTIAN HIEROGLYPH AA032;Lo;0;L;;;;;N;;;;; +1342F;EGYPTIAN HIEROGLYPH V011D;Lo;0;L;;;;;N;;;;;  13430;EGYPTIAN HIEROGLYPH VERTICAL JOINER;Cf;0;L;;;;;N;;;;;  13431;EGYPTIAN HIEROGLYPH HORIZONTAL JOINER;Cf;0;L;;;;;N;;;;;  13432;EGYPTIAN HIEROGLYPH INSERT AT TOP START;Cf;0;L;;;;;N;;;;; @@ -24049,6 +24154,35 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  13436;EGYPTIAN HIEROGLYPH OVERLAY MIDDLE;Cf;0;L;;;;;N;;;;;  13437;EGYPTIAN HIEROGLYPH BEGIN SEGMENT;Cf;0;L;;;;;N;;;;;  13438;EGYPTIAN HIEROGLYPH END SEGMENT;Cf;0;L;;;;;N;;;;; +13439;EGYPTIAN HIEROGLYPH INSERT AT MIDDLE;Cf;0;L;;;;;N;;;;; +1343A;EGYPTIAN HIEROGLYPH INSERT AT TOP;Cf;0;L;;;;;N;;;;; +1343B;EGYPTIAN HIEROGLYPH INSERT AT BOTTOM;Cf;0;L;;;;;N;;;;; +1343C;EGYPTIAN HIEROGLYPH BEGIN ENCLOSURE;Cf;0;L;;;;;N;;;;; +1343D;EGYPTIAN HIEROGLYPH END ENCLOSURE;Cf;0;L;;;;;N;;;;; +1343E;EGYPTIAN HIEROGLYPH BEGIN WALLED ENCLOSURE;Cf;0;L;;;;;N;;;;; +1343F;EGYPTIAN HIEROGLYPH END WALLED ENCLOSURE;Cf;0;L;;;;;N;;;;; +13440;EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY;Mn;0;NSM;;;;;N;;;;; +13441;EGYPTIAN HIEROGLYPH FULL BLANK;Lo;0;L;;;;;N;;;;; +13442;EGYPTIAN HIEROGLYPH HALF BLANK;Lo;0;L;;;;;N;;;;; +13443;EGYPTIAN HIEROGLYPH LOST SIGN;Lo;0;L;;;;;N;;;;; +13444;EGYPTIAN HIEROGLYPH HALF LOST SIGN;Lo;0;L;;;;;N;;;;; +13445;EGYPTIAN HIEROGLYPH TALL LOST SIGN;Lo;0;L;;;;;N;;;;; +13446;EGYPTIAN HIEROGLYPH WIDE LOST SIGN;Lo;0;L;;;;;N;;;;; +13447;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START;Mn;0;NSM;;;;;N;;;;; +13448;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT BOTTOM START;Mn;0;NSM;;;;;N;;;;; +13449;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT START;Mn;0;NSM;;;;;N;;;;; +1344A;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP END;Mn;0;NSM;;;;;N;;;;; +1344B;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP;Mn;0;NSM;;;;;N;;;;; +1344C;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT BOTTOM START AND TOP END;Mn;0;NSM;;;;;N;;;;; +1344D;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT START AND TOP;Mn;0;NSM;;;;;N;;;;; +1344E;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT BOTTOM END;Mn;0;NSM;;;;;N;;;;; +1344F;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START AND BOTTOM END;Mn;0;NSM;;;;;N;;;;; +13450;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT BOTTOM;Mn;0;NSM;;;;;N;;;;; +13451;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT START AND BOTTOM;Mn;0;NSM;;;;;N;;;;; +13452;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT END;Mn;0;NSM;;;;;N;;;;; +13453;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP AND END;Mn;0;NSM;;;;;N;;;;; +13454;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT BOTTOM AND END;Mn;0;NSM;;;;;N;;;;; +13455;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED;Mn;0;NSM;;;;;N;;;;;  14400;ANATOLIAN HIEROGLYPH A001;Lo;0;L;;;;;N;;;;;  14401;ANATOLIAN HIEROGLYPH A002;Lo;0;L;;;;;N;;;;;  14402;ANATOLIAN HIEROGLYPH A003;Lo;0;L;;;;;N;;;;; @@ -27289,9 +27423,11 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1B120;KATAKANA LETTER ARCHAIC YI;Lo;0;L;;;;;N;;;;;  1B121;KATAKANA LETTER ARCHAIC YE;Lo;0;L;;;;;N;;;;;  1B122;KATAKANA LETTER ARCHAIC WU;Lo;0;L;;;;;N;;;;; +1B132;HIRAGANA LETTER SMALL KO;Lo;0;L;;;;;N;;;;;  1B150;HIRAGANA LETTER SMALL WI;Lo;0;L;;;;;N;;;;;  1B151;HIRAGANA LETTER SMALL WE;Lo;0;L;;;;;N;;;;;  1B152;HIRAGANA LETTER SMALL WO;Lo;0;L;;;;;N;;;;; +1B155;KATAKANA LETTER SMALL KO;Lo;0;L;;;;;N;;;;;  1B164;KATAKANA LETTER SMALL WI;Lo;0;L;;;;;N;;;;;  1B165;KATAKANA LETTER SMALL WE;Lo;0;L;;;;;N;;;;;  1B166;KATAKANA LETTER SMALL WO;Lo;0;L;;;;;N;;;;; @@ -28573,6 +28709,26 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1D243;COMBINING GREEK MUSICAL TETRASEME;Mn;230;NSM;;;;;N;;;;;  1D244;COMBINING GREEK MUSICAL PENTASEME;Mn;230;NSM;;;;;N;;;;;  1D245;GREEK MUSICAL LEIMMA;So;0;ON;;;;;N;;;;; +1D2C0;KAKTOVIK NUMERAL ZERO;No;0;L;;;;0;N;;;;; +1D2C1;KAKTOVIK NUMERAL ONE;No;0;L;;;;1;N;;;;; +1D2C2;KAKTOVIK NUMERAL TWO;No;0;L;;;;2;N;;;;; +1D2C3;KAKTOVIK NUMERAL THREE;No;0;L;;;;3;N;;;;; +1D2C4;KAKTOVIK NUMERAL FOUR;No;0;L;;;;4;N;;;;; +1D2C5;KAKTOVIK NUMERAL FIVE;No;0;L;;;;5;N;;;;; +1D2C6;KAKTOVIK NUMERAL SIX;No;0;L;;;;6;N;;;;; +1D2C7;KAKTOVIK NUMERAL SEVEN;No;0;L;;;;7;N;;;;; +1D2C8;KAKTOVIK NUMERAL EIGHT;No;0;L;;;;8;N;;;;; +1D2C9;KAKTOVIK NUMERAL NINE;No;0;L;;;;9;N;;;;; +1D2CA;KAKTOVIK NUMERAL TEN;No;0;L;;;;10;N;;;;; +1D2CB;KAKTOVIK NUMERAL ELEVEN;No;0;L;;;;11;N;;;;; +1D2CC;KAKTOVIK NUMERAL TWELVE;No;0;L;;;;12;N;;;;; +1D2CD;KAKTOVIK NUMERAL THIRTEEN;No;0;L;;;;13;N;;;;; +1D2CE;KAKTOVIK NUMERAL FOURTEEN;No;0;L;;;;14;N;;;;; +1D2CF;KAKTOVIK NUMERAL FIFTEEN;No;0;L;;;;15;N;;;;; +1D2D0;KAKTOVIK NUMERAL SIXTEEN;No;0;L;;;;16;N;;;;; +1D2D1;KAKTOVIK NUMERAL SEVENTEEN;No;0;L;;;;17;N;;;;; +1D2D2;KAKTOVIK NUMERAL EIGHTEEN;No;0;L;;;;18;N;;;;; +1D2D3;KAKTOVIK NUMERAL NINETEEN;No;0;L;;;;19;N;;;;;  1D2E0;MAYAN NUMERAL ZERO;No;0;L;;;;0;N;;;;;  1D2E1;MAYAN NUMERAL ONE;No;0;L;;;;1;N;;;;;  1D2E2;MAYAN NUMERAL TWO;No;0;L;;;;2;N;;;;; @@ -30404,6 +30560,12 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1DF1C;LATIN SMALL LETTER TESH DIGRAPH WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;;  1DF1D;LATIN SMALL LETTER C WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;;  1DF1E;LATIN SMALL LETTER S WITH CURL;Ll;0;L;;;;;N;;;;; +1DF25;LATIN SMALL LETTER D WITH MID-HEIGHT LEFT HOOK;Ll;0;L;;;;;N;;;;; +1DF26;LATIN SMALL LETTER L WITH MID-HEIGHT LEFT HOOK;Ll;0;L;;;;;N;;;;; +1DF27;LATIN SMALL LETTER N WITH MID-HEIGHT LEFT HOOK;Ll;0;L;;;;;N;;;;; +1DF28;LATIN SMALL LETTER R WITH MID-HEIGHT LEFT HOOK;Ll;0;L;;;;;N;;;;; +1DF29;LATIN SMALL LETTER S WITH MID-HEIGHT LEFT HOOK;Ll;0;L;;;;;N;;;;; +1DF2A;LATIN SMALL LETTER T WITH MID-HEIGHT LEFT HOOK;Ll;0;L;;;;;N;;;;;  1E000;COMBINING GLAGOLITIC LETTER AZU;Mn;230;NSM;;;;;N;;;;;  1E001;COMBINING GLAGOLITIC LETTER BUKY;Mn;230;NSM;;;;;N;;;;;  1E002;COMBINING GLAGOLITIC LETTER VEDE;Mn;230;NSM;;;;;N;;;;; @@ -30442,6 +30604,69 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1E028;COMBINING GLAGOLITIC LETTER BIG YUS;Mn;230;NSM;;;;;N;;;;;  1E029;COMBINING GLAGOLITIC LETTER IOTATED BIG YUS;Mn;230;NSM;;;;;N;;;;;  1E02A;COMBINING GLAGOLITIC LETTER FITA;Mn;230;NSM;;;;;N;;;;; +1E030;MODIFIER LETTER CYRILLIC SMALL A;Lm;0;L;<super> 0430;;;;N;;;;; +1E031;MODIFIER LETTER CYRILLIC SMALL BE;Lm;0;L;<super> 0431;;;;N;;;;; +1E032;MODIFIER LETTER CYRILLIC SMALL VE;Lm;0;L;<super> 0432;;;;N;;;;; +1E033;MODIFIER LETTER CYRILLIC SMALL GHE;Lm;0;L;<super> 0433;;;;N;;;;; +1E034;MODIFIER LETTER CYRILLIC SMALL DE;Lm;0;L;<super> 0434;;;;N;;;;; +1E035;MODIFIER LETTER CYRILLIC SMALL IE;Lm;0;L;<super> 0435;;;;N;;;;; +1E036;MODIFIER LETTER CYRILLIC SMALL ZHE;Lm;0;L;<super> 0436;;;;N;;;;; +1E037;MODIFIER LETTER CYRILLIC SMALL ZE;Lm;0;L;<super> 0437;;;;N;;;;; +1E038;MODIFIER LETTER CYRILLIC SMALL I;Lm;0;L;<super> 0438;;;;N;;;;; +1E039;MODIFIER LETTER CYRILLIC SMALL KA;Lm;0;L;<super> 043A;;;;N;;;;; +1E03A;MODIFIER LETTER CYRILLIC SMALL EL;Lm;0;L;<super> 043B;;;;N;;;;; +1E03B;MODIFIER LETTER CYRILLIC SMALL EM;Lm;0;L;<super> 043C;;;;N;;;;; +1E03C;MODIFIER LETTER CYRILLIC SMALL O;Lm;0;L;<super> 043E;;;;N;;;;; +1E03D;MODIFIER LETTER CYRILLIC SMALL PE;Lm;0;L;<super> 043F;;;;N;;;;; +1E03E;MODIFIER LETTER CYRILLIC SMALL ER;Lm;0;L;<super> 0440;;;;N;;;;; +1E03F;MODIFIER LETTER CYRILLIC SMALL ES;Lm;0;L;<super> 0441;;;;N;;;;; +1E040;MODIFIER LETTER CYRILLIC SMALL TE;Lm;0;L;<super> 0442;;;;N;;;;; +1E041;MODIFIER LETTER CYRILLIC SMALL U;Lm;0;L;<super> 0443;;;;N;;;;; +1E042;MODIFIER LETTER CYRILLIC SMALL EF;Lm;0;L;<super> 0444;;;;N;;;;; +1E043;MODIFIER LETTER CYRILLIC SMALL HA;Lm;0;L;<super> 0445;;;;N;;;;; +1E044;MODIFIER LETTER CYRILLIC SMALL TSE;Lm;0;L;<super> 0446;;;;N;;;;; +1E045;MODIFIER LETTER CYRILLIC SMALL CHE;Lm;0;L;<super> 0447;;;;N;;;;; +1E046;MODIFIER LETTER CYRILLIC SMALL SHA;Lm;0;L;<super> 0448;;;;N;;;;; +1E047;MODIFIER LETTER CYRILLIC SMALL YERU;Lm;0;L;<super> 044B;;;;N;;;;; +1E048;MODIFIER LETTER CYRILLIC SMALL E;Lm;0;L;<super> 044D;;;;N;;;;; +1E049;MODIFIER LETTER CYRILLIC SMALL YU;Lm;0;L;<super> 044E;;;;N;;;;; +1E04A;MODIFIER LETTER CYRILLIC SMALL DZZE;Lm;0;L;<super> A689;;;;N;;;;; +1E04B;MODIFIER LETTER CYRILLIC SMALL SCHWA;Lm;0;L;<super> 04D9;;;;N;;;;; +1E04C;MODIFIER LETTER CYRILLIC SMALL BYELORUSSIAN-UKRAINIAN I;Lm;0;L;<super> 0456;;;;N;;;;; +1E04D;MODIFIER LETTER CYRILLIC SMALL JE;Lm;0;L;<super> 0458;;;;N;;;;; +1E04E;MODIFIER LETTER CYRILLIC SMALL BARRED O;Lm;0;L;<super> 04E9;;;;N;;;;; +1E04F;MODIFIER LETTER CYRILLIC SMALL STRAIGHT U;Lm;0;L;<super> 04AF;;;;N;;;;; +1E050;MODIFIER LETTER CYRILLIC SMALL PALOCHKA;Lm;0;L;<super> 04CF;;;;N;;;;; +1E051;CYRILLIC SUBSCRIPT SMALL LETTER A;Lm;0;L;<sub> 0430;;;;N;;;;; +1E052;CYRILLIC SUBSCRIPT SMALL LETTER BE;Lm;0;L;<sub> 0431;;;;N;;;;; +1E053;CYRILLIC SUBSCRIPT SMALL LETTER VE;Lm;0;L;<sub> 0432;;;;N;;;;; +1E054;CYRILLIC SUBSCRIPT SMALL LETTER GHE;Lm;0;L;<sub> 0433;;;;N;;;;; +1E055;CYRILLIC SUBSCRIPT SMALL LETTER DE;Lm;0;L;<sub> 0434;;;;N;;;;; +1E056;CYRILLIC SUBSCRIPT SMALL LETTER IE;Lm;0;L;<sub> 0435;;;;N;;;;; +1E057;CYRILLIC SUBSCRIPT SMALL LETTER ZHE;Lm;0;L;<sub> 0436;;;;N;;;;; +1E058;CYRILLIC SUBSCRIPT SMALL LETTER ZE;Lm;0;L;<sub> 0437;;;;N;;;;; +1E059;CYRILLIC SUBSCRIPT SMALL LETTER I;Lm;0;L;<sub> 0438;;;;N;;;;; +1E05A;CYRILLIC SUBSCRIPT SMALL LETTER KA;Lm;0;L;<sub> 043A;;;;N;;;;; +1E05B;CYRILLIC SUBSCRIPT SMALL LETTER EL;Lm;0;L;<sub> 043B;;;;N;;;;; +1E05C;CYRILLIC SUBSCRIPT SMALL LETTER O;Lm;0;L;<sub> 043E;;;;N;;;;; +1E05D;CYRILLIC SUBSCRIPT SMALL LETTER PE;Lm;0;L;<sub> 043F;;;;N;;;;; +1E05E;CYRILLIC SUBSCRIPT SMALL LETTER ES;Lm;0;L;<sub> 0441;;;;N;;;;; +1E05F;CYRILLIC SUBSCRIPT SMALL LETTER U;Lm;0;L;<sub> 0443;;;;N;;;;; +1E060;CYRILLIC SUBSCRIPT SMALL LETTER EF;Lm;0;L;<sub> 0444;;;;N;;;;; +1E061;CYRILLIC SUBSCRIPT SMALL LETTER HA;Lm;0;L;<sub> 0445;;;;N;;;;; +1E062;CYRILLIC SUBSCRIPT SMALL LETTER TSE;Lm;0;L;<sub> 0446;;;;N;;;;; +1E063;CYRILLIC SUBSCRIPT SMALL LETTER CHE;Lm;0;L;<sub> 0447;;;;N;;;;; +1E064;CYRILLIC SUBSCRIPT SMALL LETTER SHA;Lm;0;L;<sub> 0448;;;;N;;;;; +1E065;CYRILLIC SUBSCRIPT SMALL LETTER HARD SIGN;Lm;0;L;<sub> 044A;;;;N;;;;; +1E066;CYRILLIC SUBSCRIPT SMALL LETTER YERU;Lm;0;L;<sub> 044B;;;;N;;;;; +1E067;CYRILLIC SUBSCRIPT SMALL LETTER GHE WITH UPTURN;Lm;0;L;<sub> 0491;;;;N;;;;; +1E068;CYRILLIC SUBSCRIPT SMALL LETTER BYELORUSSIAN-UKRAINIAN I;Lm;0;L;<sub> 0456;;;;N;;;;; +1E069;CYRILLIC SUBSCRIPT SMALL LETTER DZE;Lm;0;L;<sub> 0455;;;;N;;;;; +1E06A;CYRILLIC SUBSCRIPT SMALL LETTER DZHE;Lm;0;L;<sub> 045F;;;;N;;;;; +1E06B;MODIFIER LETTER CYRILLIC SMALL ES WITH DESCENDER;Lm;0;L;<super> 04AB;;;;N;;;;; +1E06C;MODIFIER LETTER CYRILLIC SMALL YERU WITH BACK YER;Lm;0;L;<super> A651;;;;N;;;;; +1E06D;MODIFIER LETTER CYRILLIC SMALL STRAIGHT U WITH STROKE;Lm;0;L;<super> 04B1;;;;N;;;;; +1E08F;COMBINING CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I;Mn;230;NSM;;;;;N;;;;;  1E100;NYIAKENG PUACHUE HMONG LETTER MA;Lo;0;L;;;;;N;;;;;  1E101;NYIAKENG PUACHUE HMONG LETTER TSA;Lo;0;L;;;;;N;;;;;  1E102;NYIAKENG PUACHUE HMONG LETTER NTA;Lo;0;L;;;;;N;;;;; @@ -30603,6 +30828,48 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1E2F8;WANCHO DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;;  1E2F9;WANCHO DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;  1E2FF;WANCHO NGUN SIGN;Sc;0;ET;;;;;N;;;;; +1E4D0;NAG MUNDARI LETTER O;Lo;0;L;;;;;N;;;;; +1E4D1;NAG MUNDARI LETTER OP;Lo;0;L;;;;;N;;;;; +1E4D2;NAG MUNDARI LETTER OL;Lo;0;L;;;;;N;;;;; +1E4D3;NAG MUNDARI LETTER OY;Lo;0;L;;;;;N;;;;; +1E4D4;NAG MUNDARI LETTER ONG;Lo;0;L;;;;;N;;;;; +1E4D5;NAG MUNDARI LETTER A;Lo;0;L;;;;;N;;;;; +1E4D6;NAG MUNDARI LETTER AJ;Lo;0;L;;;;;N;;;;; +1E4D7;NAG MUNDARI LETTER AB;Lo;0;L;;;;;N;;;;; +1E4D8;NAG MUNDARI LETTER ANY;Lo;0;L;;;;;N;;;;; +1E4D9;NAG MUNDARI LETTER AH;Lo;0;L;;;;;N;;;;; +1E4DA;NAG MUNDARI LETTER I;Lo;0;L;;;;;N;;;;; +1E4DB;NAG MUNDARI LETTER IS;Lo;0;L;;;;;N;;;;; +1E4DC;NAG MUNDARI LETTER IDD;Lo;0;L;;;;;N;;;;; +1E4DD;NAG MUNDARI LETTER IT;Lo;0;L;;;;;N;;;;; +1E4DE;NAG MUNDARI LETTER IH;Lo;0;L;;;;;N;;;;; +1E4DF;NAG MUNDARI LETTER U;Lo;0;L;;;;;N;;;;; +1E4E0;NAG MUNDARI LETTER UC;Lo;0;L;;;;;N;;;;; +1E4E1;NAG MUNDARI LETTER UD;Lo;0;L;;;;;N;;;;; +1E4E2;NAG MUNDARI LETTER UK;Lo;0;L;;;;;N;;;;; +1E4E3;NAG MUNDARI LETTER UR;Lo;0;L;;;;;N;;;;; +1E4E4;NAG MUNDARI LETTER E;Lo;0;L;;;;;N;;;;; +1E4E5;NAG MUNDARI LETTER ENN;Lo;0;L;;;;;N;;;;; +1E4E6;NAG MUNDARI LETTER EG;Lo;0;L;;;;;N;;;;; +1E4E7;NAG MUNDARI LETTER EM;Lo;0;L;;;;;N;;;;; +1E4E8;NAG MUNDARI LETTER EN;Lo;0;L;;;;;N;;;;; +1E4E9;NAG MUNDARI LETTER ETT;Lo;0;L;;;;;N;;;;; +1E4EA;NAG MUNDARI LETTER ELL;Lo;0;L;;;;;N;;;;; +1E4EB;NAG MUNDARI SIGN OJOD;Lm;0;L;;;;;N;;;;; +1E4EC;NAG MUNDARI SIGN MUHOR;Mn;232;NSM;;;;;N;;;;; +1E4ED;NAG MUNDARI SIGN TOYOR;Mn;232;NSM;;;;;N;;;;; +1E4EE;NAG MUNDARI SIGN IKIR;Mn;220;NSM;;;;;N;;;;; +1E4EF;NAG MUNDARI SIGN SUTUH;Mn;230;NSM;;;;;N;;;;; +1E4F0;NAG MUNDARI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +1E4F1;NAG MUNDARI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +1E4F2;NAG MUNDARI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +1E4F3;NAG MUNDARI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +1E4F4;NAG MUNDARI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +1E4F5;NAG MUNDARI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +1E4F6;NAG MUNDARI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +1E4F7;NAG MUNDARI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +1E4F8;NAG MUNDARI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +1E4F9;NAG MUNDARI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;;  1E7E0;ETHIOPIC SYLLABLE HHYA;Lo;0;L;;;;;N;;;;;  1E7E1;ETHIOPIC SYLLABLE HHYU;Lo;0;L;;;;;N;;;;;  1E7E2;ETHIOPIC SYLLABLE HHYI;Lo;0;L;;;;;N;;;;; @@ -32678,6 +32945,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1F6D5;HINDU TEMPLE;So;0;ON;;;;;N;;;;;  1F6D6;HUT;So;0;ON;;;;;N;;;;;  1F6D7;ELEVATOR;So;0;ON;;;;;N;;;;; +1F6DC;WIRELESS;So;0;ON;;;;;N;;;;;  1F6DD;PLAYGROUND SLIDE;So;0;ON;;;;;N;;;;;  1F6DE;WHEEL;So;0;ON;;;;;N;;;;;  1F6DF;RING BUOY;So;0;ON;;;;;N;;;;; @@ -32823,6 +33091,14 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1F771;ALCHEMICAL SYMBOL FOR MONTH;So;0;ON;;;;;N;;;;;  1F772;ALCHEMICAL SYMBOL FOR HALF DRAM;So;0;ON;;;;;N;;;;;  1F773;ALCHEMICAL SYMBOL FOR HALF OUNCE;So;0;ON;;;;;N;;;;; +1F774;LOT OF FORTUNE;So;0;ON;;;;;N;;;;; +1F775;OCCULTATION;So;0;ON;;;;;N;;;;; +1F776;LUNAR ECLIPSE;So;0;ON;;;;;N;;;;; +1F77B;HAUMEA;So;0;ON;;;;;N;;;;; +1F77C;MAKEMAKE;So;0;ON;;;;;N;;;;; +1F77D;GONGGONG;So;0;ON;;;;;N;;;;; +1F77E;QUAOAR;So;0;ON;;;;;N;;;;; +1F77F;ORCUS;So;0;ON;;;;;N;;;;;  1F780;BLACK LEFT-POINTING ISOSCELES RIGHT TRIANGLE;So;0;ON;;;;;N;;;;;  1F781;BLACK UP-POINTING ISOSCELES RIGHT TRIANGLE;So;0;ON;;;;;N;;;;;  1F782;BLACK RIGHT-POINTING ISOSCELES RIGHT TRIANGLE;So;0;ON;;;;;N;;;;; @@ -32912,6 +33188,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1F7D6;NEGATIVE CIRCLED TRIANGLE;So;0;ON;;;;;N;;;;;  1F7D7;CIRCLED SQUARE;So;0;ON;;;;;N;;;;;  1F7D8;NEGATIVE CIRCLED SQUARE;So;0;ON;;;;;N;;;;; +1F7D9;NINE POINTED WHITE STAR;So;0;ON;;;;;N;;;;;  1F7E0;LARGE ORANGE CIRCLE;So;0;ON;;;;;N;;;;;  1F7E1;LARGE YELLOW CIRCLE;So;0;ON;;;;;N;;;;;  1F7E2;LARGE GREEN CIRCLE;So;0;ON;;;;;N;;;;; @@ -33434,6 +33711,9 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1FA72;BRIEFS;So;0;ON;;;;;N;;;;;  1FA73;SHORTS;So;0;ON;;;;;N;;;;;  1FA74;THONG SANDAL;So;0;ON;;;;;N;;;;; +1FA75;LIGHT BLUE HEART;So;0;ON;;;;;N;;;;; +1FA76;GREY HEART;So;0;ON;;;;;N;;;;; +1FA77;PINK HEART;So;0;ON;;;;;N;;;;;  1FA78;DROP OF BLOOD;So;0;ON;;;;;N;;;;;  1FA79;ADHESIVE BANDAGE;So;0;ON;;;;;N;;;;;  1FA7A;STETHOSCOPE;So;0;ON;;;;;N;;;;; @@ -33446,6 +33726,8 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1FA84;MAGIC WAND;So;0;ON;;;;;N;;;;;  1FA85;PINATA;So;0;ON;;;;;N;;;;;  1FA86;NESTING DOLLS;So;0;ON;;;;;N;;;;; +1FA87;MARACAS;So;0;ON;;;;;N;;;;; +1FA88;FLUTE;So;0;ON;;;;;N;;;;;  1FA90;RINGED PLANET;So;0;ON;;;;;N;;;;;  1FA91;CHAIR;So;0;ON;;;;;N;;;;;  1FA92;RAZOR;So;0;ON;;;;;N;;;;; @@ -33475,6 +33757,9 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1FAAA;IDENTIFICATION CARD;So;0;ON;;;;;N;;;;;  1FAAB;LOW BATTERY;So;0;ON;;;;;N;;;;;  1FAAC;HAMSA;So;0;ON;;;;;N;;;;; +1FAAD;FOLDING HAND FAN;So;0;ON;;;;;N;;;;; +1FAAE;HAIR PICK;So;0;ON;;;;;N;;;;; +1FAAF;KHANDA;So;0;ON;;;;;N;;;;;  1FAB0;FLY;So;0;ON;;;;;N;;;;;  1FAB1;WORM;So;0;ON;;;;;N;;;;;  1FAB2;BEETLE;So;0;ON;;;;;N;;;;; @@ -33486,12 +33771,18 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1FAB8;CORAL;So;0;ON;;;;;N;;;;;  1FAB9;EMPTY NEST;So;0;ON;;;;;N;;;;;  1FABA;NEST WITH EGGS;So;0;ON;;;;;N;;;;; +1FABB;HYACINTH;So;0;ON;;;;;N;;;;; +1FABC;JELLYFISH;So;0;ON;;;;;N;;;;; +1FABD;WING;So;0;ON;;;;;N;;;;; +1FABF;GOOSE;So;0;ON;;;;;N;;;;;  1FAC0;ANATOMICAL HEART;So;0;ON;;;;;N;;;;;  1FAC1;LUNGS;So;0;ON;;;;;N;;;;;  1FAC2;PEOPLE HUGGING;So;0;ON;;;;;N;;;;;  1FAC3;PREGNANT MAN;So;0;ON;;;;;N;;;;;  1FAC4;PREGNANT PERSON;So;0;ON;;;;;N;;;;;  1FAC5;PERSON WITH CROWN;So;0;ON;;;;;N;;;;; +1FACE;MOOSE;So;0;ON;;;;;N;;;;; +1FACF;DONKEY;So;0;ON;;;;;N;;;;;  1FAD0;BLUEBERRIES;So;0;ON;;;;;N;;;;;  1FAD1;BELL PEPPER;So;0;ON;;;;;N;;;;;  1FAD2;OLIVE;So;0;ON;;;;;N;;;;; @@ -33502,6 +33793,8 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1FAD7;POURING LIQUID;So;0;ON;;;;;N;;;;;  1FAD8;BEANS;So;0;ON;;;;;N;;;;;  1FAD9;JAR;So;0;ON;;;;;N;;;;; +1FADA;GINGER ROOT;So;0;ON;;;;;N;;;;; +1FADB;PEA POD;So;0;ON;;;;;N;;;;;  1FAE0;MELTING FACE;So;0;ON;;;;;N;;;;;  1FAE1;SALUTING FACE;So;0;ON;;;;;N;;;;;  1FAE2;FACE WITH OPEN EYES AND HAND OVER MOUTH;So;0;ON;;;;;N;;;;; @@ -33510,6 +33803,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1FAE5;DOTTED LINE FACE;So;0;ON;;;;;N;;;;;  1FAE6;BITING LIP;So;0;ON;;;;;N;;;;;  1FAE7;BUBBLES;So;0;ON;;;;;N;;;;; +1FAE8;SHAKING FACE;So;0;ON;;;;;N;;;;;  1FAF0;HAND WITH INDEX FINGER AND THUMB CROSSED;So;0;ON;;;;;N;;;;;  1FAF1;RIGHTWARDS HAND;So;0;ON;;;;;N;;;;;  1FAF2;LEFTWARDS HAND;So;0;ON;;;;;N;;;;; @@ -33517,6 +33811,8 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  1FAF4;PALM UP HAND;So;0;ON;;;;;N;;;;;  1FAF5;INDEX POINTING AT THE VIEWER;So;0;ON;;;;;N;;;;;  1FAF6;HEART HANDS;So;0;ON;;;;;N;;;;; +1FAF7;LEFTWARDS PUSHING HAND;So;0;ON;;;;;N;;;;; +1FAF8;RIGHTWARDS PUSHING HAND;So;0;ON;;;;;N;;;;;  1FB00;BLOCK SEXTANT-1;So;0;ON;;;;;N;;;;;  1FB01;BLOCK SEXTANT-2;So;0;ON;;;;;N;;;;;  1FB02;BLOCK SEXTANT-12;So;0;ON;;;;;N;;;;; @@ -33732,7 +34028,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  20000;<CJK Ideograph Extension B, First>;Lo;0;L;;;;;N;;;;;  2A6DF;<CJK Ideograph Extension B, Last>;Lo;0;L;;;;;N;;;;;  2A700;<CJK Ideograph Extension C, First>;Lo;0;L;;;;;N;;;;; -2B738;<CJK Ideograph Extension C, Last>;Lo;0;L;;;;;N;;;;; +2B739;<CJK Ideograph Extension C, Last>;Lo;0;L;;;;;N;;;;;  2B740;<CJK Ideograph Extension D, First>;Lo;0;L;;;;;N;;;;;  2B81D;<CJK Ideograph Extension D, Last>;Lo;0;L;;;;;N;;;;;  2B820;<CJK Ideograph Extension E, First>;Lo;0;L;;;;;N;;;;; @@ -34283,6 +34579,8 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;;  2FA1D;CJK COMPATIBILITY IDEOGRAPH-2FA1D;Lo;0;L;2A600;;;;N;;;;;  30000;<CJK Ideograph Extension G, First>;Lo;0;L;;;;;N;;;;;  3134A;<CJK Ideograph Extension G, Last>;Lo;0;L;;;;;N;;;;; +31350;<CJK Ideograph Extension H, First>;Lo;0;L;;;;;N;;;;; +323AF;<CJK Ideograph Extension H, Last>;Lo;0;L;;;;;N;;;;;  E0001;LANGUAGE TAG;Cf;0;BN;;;;;N;;;;;  E0020;TAG SPACE;Cf;0;BN;;;;;N;;;;;  E0021;TAG EXCLAMATION MARK;Cf;0;BN;;;;;N;;;;; diff --git a/tests/uniname/test-uninames.c b/tests/uniname/test-uninames.c index 6da5205f..c85c9af6 100644 --- a/tests/uniname/test-uninames.c +++ b/tests/uniname/test-uninames.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/uninorm/NormalizationTest.txt b/tests/uninorm/NormalizationTest.txt index 302c35f3..e75b4801 100644 --- a/tests/uninorm/NormalizationTest.txt +++ b/tests/uninorm/NormalizationTest.txt @@ -1,11 +1,11 @@ -# NormalizationTest-14.0.0.txt -# Date: 2021-05-28, 21:49:12 GMT -# © 2021 Unicode®, Inc. +# NormalizationTest-15.0.0.txt +# Date: 2022-04-02, 01:29:09 GMT +# © 2022 Unicode®, Inc.  # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see http://www.unicode.org/terms_of_use.html +# For terms of use, see https://www.unicode.org/terms_of_use.html  #  # Unicode Character Database -#   For documentation, see http://www.unicode.org/reports/tr44/ +#   For documentation, see https://www.unicode.org/reports/tr44/  #  # Normalization Test Suite  # Format: @@ -16208,6 +16208,68 @@ FFEE;FFEE;FFEE;25CB;25CB; # (○; ○; ○; ○; ○; ) HALFWIDTH WHITE CIRCLE  1D7FD;1D7FD;1D7FD;0037;0037; # (𝟽; 𝟽; 𝟽; 7; 7; ) MATHEMATICAL MONOSPACE DIGIT SEVEN  1D7FE;1D7FE;1D7FE;0038;0038; # (𝟾; 𝟾; 𝟾; 8; 8; ) MATHEMATICAL MONOSPACE DIGIT EIGHT  1D7FF;1D7FF;1D7FF;0039;0039; # (𝟿; 𝟿; 𝟿; 9; 9; ) MATHEMATICAL MONOSPACE DIGIT NINE +1E030;1E030;1E030;0430;0430; # (𞀰; 𞀰; 𞀰; а; а; ) MODIFIER LETTER CYRILLIC SMALL A +1E031;1E031;1E031;0431;0431; # (𞀱; 𞀱; 𞀱; б; б; ) MODIFIER LETTER CYRILLIC SMALL BE +1E032;1E032;1E032;0432;0432; # (𞀲; 𞀲; 𞀲; в; в; ) MODIFIER LETTER CYRILLIC SMALL VE +1E033;1E033;1E033;0433;0433; # (𞀳; 𞀳; 𞀳; г; г; ) MODIFIER LETTER CYRILLIC SMALL GHE +1E034;1E034;1E034;0434;0434; # (𞀴; 𞀴; 𞀴; д; д; ) MODIFIER LETTER CYRILLIC SMALL DE +1E035;1E035;1E035;0435;0435; # (𞀵; 𞀵; 𞀵; е; е; ) MODIFIER LETTER CYRILLIC SMALL IE +1E036;1E036;1E036;0436;0436; # (𞀶; 𞀶; 𞀶; ж; ж; ) MODIFIER LETTER CYRILLIC SMALL ZHE +1E037;1E037;1E037;0437;0437; # (𞀷; 𞀷; 𞀷; з; з; ) MODIFIER LETTER CYRILLIC SMALL ZE +1E038;1E038;1E038;0438;0438; # (𞀸; 𞀸; 𞀸; и; и; ) MODIFIER LETTER CYRILLIC SMALL I +1E039;1E039;1E039;043A;043A; # (𞀹; 𞀹; 𞀹; к; к; ) MODIFIER LETTER CYRILLIC SMALL KA +1E03A;1E03A;1E03A;043B;043B; # (𞀺; 𞀺; 𞀺; л; л; ) MODIFIER LETTER CYRILLIC SMALL EL +1E03B;1E03B;1E03B;043C;043C; # (𞀻; 𞀻; 𞀻; м; м; ) MODIFIER LETTER CYRILLIC SMALL EM +1E03C;1E03C;1E03C;043E;043E; # (𞀼; 𞀼; 𞀼; о; о; ) MODIFIER LETTER CYRILLIC SMALL O +1E03D;1E03D;1E03D;043F;043F; # (𞀽; 𞀽; 𞀽; п; п; ) MODIFIER LETTER CYRILLIC SMALL PE +1E03E;1E03E;1E03E;0440;0440; # (𞀾; 𞀾; 𞀾; р; р; ) MODIFIER LETTER CYRILLIC SMALL ER +1E03F;1E03F;1E03F;0441;0441; # (𞀿; 𞀿; 𞀿; с; с; ) MODIFIER LETTER CYRILLIC SMALL ES +1E040;1E040;1E040;0442;0442; # (𞁀; 𞁀; 𞁀; т; т; ) MODIFIER LETTER CYRILLIC SMALL TE +1E041;1E041;1E041;0443;0443; # (𞁁; 𞁁; 𞁁; у; у; ) MODIFIER LETTER CYRILLIC SMALL U +1E042;1E042;1E042;0444;0444; # (𞁂; 𞁂; 𞁂; ф; ф; ) MODIFIER LETTER CYRILLIC SMALL EF +1E043;1E043;1E043;0445;0445; # (𞁃; 𞁃; 𞁃; х; х; ) MODIFIER LETTER CYRILLIC SMALL HA +1E044;1E044;1E044;0446;0446; # (𞁄; 𞁄; 𞁄; ц; ц; ) MODIFIER LETTER CYRILLIC SMALL TSE +1E045;1E045;1E045;0447;0447; # (𞁅; 𞁅; 𞁅; ч; ч; ) MODIFIER LETTER CYRILLIC SMALL CHE +1E046;1E046;1E046;0448;0448; # (𞁆; 𞁆; 𞁆; ш; ш; ) MODIFIER LETTER CYRILLIC SMALL SHA +1E047;1E047;1E047;044B;044B; # (𞁇; 𞁇; 𞁇; ы; ы; ) MODIFIER LETTER CYRILLIC SMALL YERU +1E048;1E048;1E048;044D;044D; # (𞁈; 𞁈; 𞁈; э; э; ) MODIFIER LETTER CYRILLIC SMALL E +1E049;1E049;1E049;044E;044E; # (𞁉; 𞁉; 𞁉; ю; ю; ) MODIFIER LETTER CYRILLIC SMALL YU +1E04A;1E04A;1E04A;A689;A689; # (𞁊; 𞁊; 𞁊; ꚉ; ꚉ; ) MODIFIER LETTER CYRILLIC SMALL DZZE +1E04B;1E04B;1E04B;04D9;04D9; # (𞁋; 𞁋; 𞁋; ә; ә; ) MODIFIER LETTER CYRILLIC SMALL SCHWA +1E04C;1E04C;1E04C;0456;0456; # (𞁌; 𞁌; 𞁌; і; і; ) MODIFIER LETTER CYRILLIC SMALL BYELORUSSIAN-UKRAINIAN I +1E04D;1E04D;1E04D;0458;0458; # (𞁍; 𞁍; 𞁍; ј; ј; ) MODIFIER LETTER CYRILLIC SMALL JE +1E04E;1E04E;1E04E;04E9;04E9; # (𞁎; 𞁎; 𞁎; ө; ө; ) MODIFIER LETTER CYRILLIC SMALL BARRED O +1E04F;1E04F;1E04F;04AF;04AF; # (𞁏; 𞁏; 𞁏; ү; ү; ) MODIFIER LETTER CYRILLIC SMALL STRAIGHT U +1E050;1E050;1E050;04CF;04CF; # (𞁐; 𞁐; 𞁐; ӏ; ӏ; ) MODIFIER LETTER CYRILLIC SMALL PALOCHKA +1E051;1E051;1E051;0430;0430; # (𞁑; 𞁑; 𞁑; а; а; ) CYRILLIC SUBSCRIPT SMALL LETTER A +1E052;1E052;1E052;0431;0431; # (𞁒; 𞁒; 𞁒; б; б; ) CYRILLIC SUBSCRIPT SMALL LETTER BE +1E053;1E053;1E053;0432;0432; # (𞁓; 𞁓; 𞁓; в; в; ) CYRILLIC SUBSCRIPT SMALL LETTER VE +1E054;1E054;1E054;0433;0433; # (𞁔; 𞁔; 𞁔; г; г; ) CYRILLIC SUBSCRIPT SMALL LETTER GHE +1E055;1E055;1E055;0434;0434; # (𞁕; 𞁕; 𞁕; д; д; ) CYRILLIC SUBSCRIPT SMALL LETTER DE +1E056;1E056;1E056;0435;0435; # (𞁖; 𞁖; 𞁖; е; е; ) CYRILLIC SUBSCRIPT SMALL LETTER IE +1E057;1E057;1E057;0436;0436; # (𞁗; 𞁗; 𞁗; ж; ж; ) CYRILLIC SUBSCRIPT SMALL LETTER ZHE +1E058;1E058;1E058;0437;0437; # (𞁘; 𞁘; 𞁘; з; з; ) CYRILLIC SUBSCRIPT SMALL LETTER ZE +1E059;1E059;1E059;0438;0438; # (𞁙; 𞁙; 𞁙; и; и; ) CYRILLIC SUBSCRIPT SMALL LETTER I +1E05A;1E05A;1E05A;043A;043A; # (𞁚; 𞁚; 𞁚; к; к; ) CYRILLIC SUBSCRIPT SMALL LETTER KA +1E05B;1E05B;1E05B;043B;043B; # (𞁛; 𞁛; 𞁛; л; л; ) CYRILLIC SUBSCRIPT SMALL LETTER EL +1E05C;1E05C;1E05C;043E;043E; # (𞁜; 𞁜; 𞁜; о; о; ) CYRILLIC SUBSCRIPT SMALL LETTER O +1E05D;1E05D;1E05D;043F;043F; # (𞁝; 𞁝; 𞁝; п; п; ) CYRILLIC SUBSCRIPT SMALL LETTER PE +1E05E;1E05E;1E05E;0441;0441; # (𞁞; 𞁞; 𞁞; с; с; ) CYRILLIC SUBSCRIPT SMALL LETTER ES +1E05F;1E05F;1E05F;0443;0443; # (𞁟; 𞁟; 𞁟; у; у; ) CYRILLIC SUBSCRIPT SMALL LETTER U +1E060;1E060;1E060;0444;0444; # (𞁠; 𞁠; 𞁠; ф; ф; ) CYRILLIC SUBSCRIPT SMALL LETTER EF +1E061;1E061;1E061;0445;0445; # (𞁡; 𞁡; 𞁡; х; х; ) CYRILLIC SUBSCRIPT SMALL LETTER HA +1E062;1E062;1E062;0446;0446; # (𞁢; 𞁢; 𞁢; ц; ц; ) CYRILLIC SUBSCRIPT SMALL LETTER TSE +1E063;1E063;1E063;0447;0447; # (𞁣; 𞁣; 𞁣; ч; ч; ) CYRILLIC SUBSCRIPT SMALL LETTER CHE +1E064;1E064;1E064;0448;0448; # (𞁤; 𞁤; 𞁤; ш; ш; ) CYRILLIC SUBSCRIPT SMALL LETTER SHA +1E065;1E065;1E065;044A;044A; # (𞁥; 𞁥; 𞁥; ъ; ъ; ) CYRILLIC SUBSCRIPT SMALL LETTER HARD SIGN +1E066;1E066;1E066;044B;044B; # (𞁦; 𞁦; 𞁦; ы; ы; ) CYRILLIC SUBSCRIPT SMALL LETTER YERU +1E067;1E067;1E067;0491;0491; # (𞁧; 𞁧; 𞁧; ґ; ґ; ) CYRILLIC SUBSCRIPT SMALL LETTER GHE WITH UPTURN +1E068;1E068;1E068;0456;0456; # (𞁨; 𞁨; 𞁨; і; і; ) CYRILLIC SUBSCRIPT SMALL LETTER BYELORUSSIAN-UKRAINIAN I +1E069;1E069;1E069;0455;0455; # (𞁩; 𞁩; 𞁩; ѕ; ѕ; ) CYRILLIC SUBSCRIPT SMALL LETTER DZE +1E06A;1E06A;1E06A;045F;045F; # (𞁪; 𞁪; 𞁪; џ; џ; ) CYRILLIC SUBSCRIPT SMALL LETTER DZHE +1E06B;1E06B;1E06B;04AB;04AB; # (𞁫; 𞁫; 𞁫; ҫ; ҫ; ) MODIFIER LETTER CYRILLIC SMALL ES WITH DESCENDER +1E06C;1E06C;1E06C;A651;A651; # (𞁬; 𞁬; 𞁬; ꙑ; ꙑ; ) MODIFIER LETTER CYRILLIC SMALL YERU WITH BACK YER +1E06D;1E06D;1E06D;04B1;04B1; # (𞁭; 𞁭; 𞁭; ұ; ұ; ) MODIFIER LETTER CYRILLIC SMALL STRAIGHT U WITH STROKE  1EE00;1EE00;1EE00;0627;0627; # (𞸀; 𞸀; 𞸀; ا; ا; ) ARABIC MATHEMATICAL ALEF  1EE01;1EE01;1EE01;0628;0628; # (𞸁; 𞸁; 𞸁; ب; ب; ) ARABIC MATHEMATICAL BEH  1EE02;1EE02;1EE02;062C;062C; # (𞸂; 𞸂; 𞸂; ج; ج; ) ARABIC MATHEMATICAL JEEM @@ -18496,6 +18558,12 @@ FFEE;FFEE;FFEE;25CB;25CB; # (○; ○; ○; ○; ○; ) HALFWIDTH WHITE CIRCLE  0061 10EAB 0315 0300 05AE 0062;0061 05AE 10EAB 0300 0315 0062;0061 05AE 10EAB 0300 0315 0062;0061 05AE 10EAB 0300 0315 0062;0061 05AE 10EAB 0300 0315 0062; # (a◌𐺫◌̕◌̀◌֮b; a◌֮◌𐺫◌̀◌̕b; a◌֮◌𐺫◌̀◌̕b; a◌֮◌𐺫◌̀◌̕b; a◌֮◌𐺫◌̀◌̕b; ) LATIN SMALL LETTER A, YEZIDI COMBINING HAMZA MARK, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B  0061 0315 0300 05AE 10EAC 0062;00E0 05AE 10EAC 0315 0062;0061 05AE 0300 10EAC 0315 0062;00E0 05AE 10EAC 0315 0062;0061 05AE 0300 10EAC 0315 0062; # (a◌̕◌̀◌֮◌𐺬b; à◌֮◌𐺬◌̕b; a◌֮◌̀◌𐺬◌̕b; à◌֮◌𐺬◌̕b; a◌֮◌̀◌𐺬◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, YEZIDI COMBINING MADDA MARK, LATIN SMALL LETTER B  0061 10EAC 0315 0300 05AE 0062;0061 05AE 10EAC 0300 0315 0062;0061 05AE 10EAC 0300 0315 0062;0061 05AE 10EAC 0300 0315 0062;0061 05AE 10EAC 0300 0315 0062; # (a◌𐺬◌̕◌̀◌֮b; a◌֮◌𐺬◌̀◌̕b; a◌֮◌𐺬◌̀◌̕b; a◌֮◌𐺬◌̀◌̕b; a◌֮◌𐺬◌̀◌̕b; ) LATIN SMALL LETTER A, YEZIDI COMBINING MADDA MARK, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 059A 0316 1DFA 10EFD 0062;0061 1DFA 0316 10EFD 059A 0062;0061 1DFA 0316 10EFD 059A 0062;0061 1DFA 0316 10EFD 059A 0062;0061 1DFA 0316 10EFD 059A 0062; # (a◌֚◌̖◌᷺◌𐻽b; a◌᷺◌̖◌𐻽◌֚b; a◌᷺◌̖◌𐻽◌֚b; a◌᷺◌̖◌𐻽◌֚b; a◌᷺◌̖◌𐻽◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, ARABIC SMALL LOW WORD SAKTA, LATIN SMALL LETTER B +0061 10EFD 059A 0316 1DFA 0062;0061 1DFA 10EFD 0316 059A 0062;0061 1DFA 10EFD 0316 059A 0062;0061 1DFA 10EFD 0316 059A 0062;0061 1DFA 10EFD 0316 059A 0062; # (a◌𐻽◌֚◌̖◌᷺b; a◌᷺◌𐻽◌̖◌֚b; a◌᷺◌𐻽◌̖◌֚b; a◌᷺◌𐻽◌̖◌֚b; a◌᷺◌𐻽◌̖◌֚b; ) LATIN SMALL LETTER A, ARABIC SMALL LOW WORD SAKTA, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, LATIN SMALL LETTER B +0061 059A 0316 1DFA 10EFE 0062;0061 1DFA 0316 10EFE 059A 0062;0061 1DFA 0316 10EFE 059A 0062;0061 1DFA 0316 10EFE 059A 0062;0061 1DFA 0316 10EFE 059A 0062; # (a◌֚◌̖◌᷺◌𐻾b; a◌᷺◌̖◌𐻾◌֚b; a◌᷺◌̖◌𐻾◌֚b; a◌᷺◌̖◌𐻾◌֚b; a◌᷺◌̖◌𐻾◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, ARABIC SMALL LOW WORD QASR, LATIN SMALL LETTER B +0061 10EFE 059A 0316 1DFA 0062;0061 1DFA 10EFE 0316 059A 0062;0061 1DFA 10EFE 0316 059A 0062;0061 1DFA 10EFE 0316 059A 0062;0061 1DFA 10EFE 0316 059A 0062; # (a◌𐻾◌֚◌̖◌᷺b; a◌᷺◌𐻾◌̖◌֚b; a◌᷺◌𐻾◌̖◌֚b; a◌᷺◌𐻾◌̖◌֚b; a◌᷺◌𐻾◌̖◌֚b; ) LATIN SMALL LETTER A, ARABIC SMALL LOW WORD QASR, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, LATIN SMALL LETTER B +0061 059A 0316 1DFA 10EFF 0062;0061 1DFA 0316 10EFF 059A 0062;0061 1DFA 0316 10EFF 059A 0062;0061 1DFA 0316 10EFF 059A 0062;0061 1DFA 0316 10EFF 059A 0062; # (a◌֚◌̖◌᷺◌𐻿b; a◌᷺◌̖◌𐻿◌֚b; a◌᷺◌̖◌𐻿◌֚b; a◌᷺◌̖◌𐻿◌֚b; a◌᷺◌̖◌𐻿◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, ARABIC SMALL LOW WORD MADDA, LATIN SMALL LETTER B +0061 10EFF 059A 0316 1DFA 0062;0061 1DFA 10EFF 0316 059A 0062;0061 1DFA 10EFF 0316 059A 0062;0061 1DFA 10EFF 0316 059A 0062;0061 1DFA 10EFF 0316 059A 0062; # (a◌𐻿◌֚◌̖◌᷺b; a◌᷺◌𐻿◌̖◌֚b; a◌᷺◌𐻿◌̖◌֚b; a◌᷺◌𐻿◌̖◌֚b; a◌᷺◌𐻿◌̖◌֚b; ) LATIN SMALL LETTER A, ARABIC SMALL LOW WORD MADDA, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, LATIN SMALL LETTER B  0061 059A 0316 1DFA 10F46 0062;0061 1DFA 0316 10F46 059A 0062;0061 1DFA 0316 10F46 059A 0062;0061 1DFA 0316 10F46 059A 0062;0061 1DFA 0316 10F46 059A 0062; # (a◌֚◌̖◌᷺◌𐽆b; a◌᷺◌̖◌𐽆◌֚b; a◌᷺◌̖◌𐽆◌֚b; a◌᷺◌̖◌𐽆◌֚b; a◌᷺◌̖◌𐽆◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, SOGDIAN COMBINING DOT BELOW, LATIN SMALL LETTER B  0061 10F46 059A 0316 1DFA 0062;0061 1DFA 10F46 0316 059A 0062;0061 1DFA 10F46 0316 059A 0062;0061 1DFA 10F46 0316 059A 0062;0061 1DFA 10F46 0316 059A 0062; # (a◌𐽆◌֚◌̖◌᷺b; a◌᷺◌𐽆◌̖◌֚b; a◌᷺◌𐽆◌̖◌֚b; a◌᷺◌𐽆◌̖◌֚b; a◌᷺◌𐽆◌̖◌֚b; ) LATIN SMALL LETTER A, SOGDIAN COMBINING DOT BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, LATIN SMALL LETTER B  0061 059A 0316 1DFA 10F47 0062;0061 1DFA 0316 10F47 059A 0062;0061 1DFA 0316 10F47 059A 0062;0061 1DFA 0316 10F47 059A 0062;0061 1DFA 0316 10F47 059A 0062; # (a◌֚◌̖◌᷺◌𐽇b; a◌᷺◌̖◌𐽇◌֚b; a◌᷺◌̖◌𐽇◌֚b; a◌᷺◌̖◌𐽇◌֚b; a◌᷺◌̖◌𐽇◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, SOGDIAN COMBINING TWO DOTS BELOW, LATIN SMALL LETTER B @@ -18640,6 +18708,10 @@ FFEE;FFEE;FFEE;25CB;25CB; # (○; ○; ○; ○; ○; ) HALFWIDTH WHITE CIRCLE  0061 11D45 05B0 094D 3099 0062;0061 3099 11D45 094D 05B0 0062;0061 3099 11D45 094D 05B0 0062;0061 3099 11D45 094D 05B0 0062;0061 3099 11D45 094D 05B0 0062; # (a◌𑵅◌ְ◌्◌゙b; a◌゙◌𑵅◌्◌ְb; a◌゙◌𑵅◌्◌ְb; a◌゙◌𑵅◌्◌ְb; a◌゙◌𑵅◌्◌ְb; ) LATIN SMALL LETTER A, MASARAM GONDI VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B  0061 05B0 094D 3099 11D97 0062;0061 3099 094D 11D97 05B0 0062;0061 3099 094D 11D97 05B0 0062;0061 3099 094D 11D97 05B0 0062;0061 3099 094D 11D97 05B0 0062; # (a◌ְ◌्◌゙◌𑶗b; a◌゙◌्◌𑶗◌ְb; a◌゙◌्◌𑶗◌ְb; a◌゙◌्◌𑶗◌ְb; a◌゙◌्◌𑶗◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, GUNJALA GONDI VIRAMA, LATIN SMALL LETTER B  0061 11D97 05B0 094D 3099 0062;0061 3099 11D97 094D 05B0 0062;0061 3099 11D97 094D 05B0 0062;0061 3099 11D97 094D 05B0 0062;0061 3099 11D97 094D 05B0 0062; # (a◌𑶗◌ְ◌्◌゙b; a◌゙◌𑶗◌्◌ְb; a◌゙◌𑶗◌्◌ְb; a◌゙◌𑶗◌्◌ְb; a◌゙◌𑶗◌्◌ְb; ) LATIN SMALL LETTER A, GUNJALA GONDI VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B +0061 05B0 094D 3099 11F41 0062;0061 3099 094D 11F41 05B0 0062;0061 3099 094D 11F41 05B0 0062;0061 3099 094D 11F41 05B0 0062;0061 3099 094D 11F41 05B0 0062; # (a◌ְ◌्◌゙𑽁b; a◌゙◌्𑽁◌ְb; a◌゙◌्𑽁◌ְb; a◌゙◌्𑽁◌ְb; a◌゙◌्𑽁◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, KAWI SIGN KILLER, LATIN SMALL LETTER B +0061 11F41 05B0 094D 3099 0062;0061 3099 11F41 094D 05B0 0062;0061 3099 11F41 094D 05B0 0062;0061 3099 11F41 094D 05B0 0062;0061 3099 11F41 094D 05B0 0062; # (a𑽁◌ְ◌्◌゙b; a◌゙𑽁◌्◌ְb; a◌゙𑽁◌्◌ְb; a◌゙𑽁◌्◌ְb; a◌゙𑽁◌्◌ְb; ) LATIN SMALL LETTER A, KAWI SIGN KILLER, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B +0061 05B0 094D 3099 11F42 0062;0061 3099 094D 11F42 05B0 0062;0061 3099 094D 11F42 05B0 0062;0061 3099 094D 11F42 05B0 0062;0061 3099 094D 11F42 05B0 0062; # (a◌ְ◌्◌゙◌𑽂b; a◌゙◌्◌𑽂◌ְb; a◌゙◌्◌𑽂◌ְb; a◌゙◌्◌𑽂◌ְb; a◌゙◌्◌𑽂◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, KAWI CONJOINER, LATIN SMALL LETTER B +0061 11F42 05B0 094D 3099 0062;0061 3099 11F42 094D 05B0 0062;0061 3099 11F42 094D 05B0 0062;0061 3099 11F42 094D 05B0 0062;0061 3099 11F42 094D 05B0 0062; # (a◌𑽂◌ְ◌्◌゙b; a◌゙◌𑽂◌्◌ְb; a◌゙◌𑽂◌्◌ְb; a◌゙◌𑽂◌्◌ְb; a◌゙◌𑽂◌्◌ְb; ) LATIN SMALL LETTER A, KAWI CONJOINER, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B  0061 16FF0 0334 16AF0 0062;0061 0334 16AF0 16FF0 0062;0061 0334 16AF0 16FF0 0062;0061 0334 16AF0 16FF0 0062;0061 0334 16AF0 16FF0 0062; # (a𖿰◌̴◌𖫰b; a◌̴◌𖫰𖿰b; a◌̴◌𖫰𖿰b; a◌̴◌𖫰𖿰b; a◌̴◌𖫰𖿰b; ) LATIN SMALL LETTER A, VIETNAMESE ALTERNATE READING MARK CA, COMBINING TILDE OVERLAY, BASSA VAH COMBINING HIGH TONE, LATIN SMALL LETTER B  0061 16AF0 16FF0 0334 0062;0061 16AF0 0334 16FF0 0062;0061 16AF0 0334 16FF0 0062;0061 16AF0 0334 16FF0 0062;0061 16AF0 0334 16FF0 0062; # (a◌𖫰𖿰◌̴b; a◌𖫰◌̴𖿰b; a◌𖫰◌̴𖿰b; a◌𖫰◌̴𖿰b; a◌𖫰◌̴𖿰b; ) LATIN SMALL LETTER A, BASSA VAH COMBINING HIGH TONE, VIETNAMESE ALTERNATE READING MARK CA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B  0061 16FF0 0334 16AF1 0062;0061 0334 16AF1 16FF0 0062;0061 0334 16AF1 16FF0 0062;0061 0334 16AF1 16FF0 0062;0061 0334 16AF1 16FF0 0062; # (a𖿰◌̴◌𖫱b; a◌̴◌𖫱𖿰b; a◌̴◌𖫱𖿰b; a◌̴◌𖫱𖿰b; a◌̴◌𖫱𖿰b; ) LATIN SMALL LETTER A, VIETNAMESE ALTERNATE READING MARK CA, COMBINING TILDE OVERLAY, BASSA VAH COMBINING LOW TONE, LATIN SMALL LETTER B @@ -18812,6 +18884,8 @@ FFEE;FFEE;FFEE;25CB;25CB; # (○; ○; ○; ○; ○; ) HALFWIDTH WHITE CIRCLE  0061 1E029 0315 0300 05AE 0062;0061 05AE 1E029 0300 0315 0062;0061 05AE 1E029 0300 0315 0062;0061 05AE 1E029 0300 0315 0062;0061 05AE 1E029 0300 0315 0062; # (a◌𞀩◌̕◌̀◌֮b; a◌֮◌𞀩◌̀◌̕b; a◌֮◌𞀩◌̀◌̕b; a◌֮◌𞀩◌̀◌̕b; a◌֮◌𞀩◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GLAGOLITIC LETTER IOTATED BIG YUS, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B  0061 0315 0300 05AE 1E02A 0062;00E0 05AE 1E02A 0315 0062;0061 05AE 0300 1E02A 0315 0062;00E0 05AE 1E02A 0315 0062;0061 05AE 0300 1E02A 0315 0062; # (a◌̕◌̀◌֮◌𞀪b; à◌֮◌𞀪◌̕b; a◌֮◌̀◌𞀪◌̕b; à◌֮◌𞀪◌̕b; a◌֮◌̀◌𞀪◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GLAGOLITIC LETTER FITA, LATIN SMALL LETTER B  0061 1E02A 0315 0300 05AE 0062;0061 05AE 1E02A 0300 0315 0062;0061 05AE 1E02A 0300 0315 0062;0061 05AE 1E02A 0300 0315 0062;0061 05AE 1E02A 0300 0315 0062; # (a◌𞀪◌̕◌̀◌֮b; a◌֮◌𞀪◌̀◌̕b; a◌֮◌𞀪◌̀◌̕b; a◌֮◌𞀪◌̀◌̕b; a◌֮◌𞀪◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GLAGOLITIC LETTER FITA, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E08F 0062;00E0 05AE 1E08F 0315 0062;0061 05AE 0300 1E08F 0315 0062;00E0 05AE 1E08F 0315 0062;0061 05AE 0300 1E08F 0315 0062; # (a◌̕◌̀◌֮◌𞂏b; à◌֮◌𞂏◌̕b; a◌֮◌̀◌𞂏◌̕b; à◌֮◌𞂏◌̕b; a◌֮◌̀◌𞂏◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I, LATIN SMALL LETTER B +0061 1E08F 0315 0300 05AE 0062;0061 05AE 1E08F 0300 0315 0062;0061 05AE 1E08F 0300 0315 0062;0061 05AE 1E08F 0300 0315 0062;0061 05AE 1E08F 0300 0315 0062; # (a◌𞂏◌̕◌̀◌֮b; a◌֮◌𞂏◌̀◌̕b; a◌֮◌𞂏◌̀◌̕b; a◌֮◌𞂏◌̀◌̕b; a◌֮◌𞂏◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B  0061 0315 0300 05AE 1E130 0062;00E0 05AE 1E130 0315 0062;0061 05AE 0300 1E130 0315 0062;00E0 05AE 1E130 0315 0062;0061 05AE 0300 1E130 0315 0062; # (a◌̕◌̀◌֮◌𞄰b; à◌֮◌𞄰◌̕b; a◌֮◌̀◌𞄰◌̕b; à◌֮◌𞄰◌̕b; a◌֮◌̀◌𞄰◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, NYIAKENG PUACHUE HMONG TONE-B, LATIN SMALL LETTER B  0061 1E130 0315 0300 05AE 0062;0061 05AE 1E130 0300 0315 0062;0061 05AE 1E130 0300 0315 0062;0061 05AE 1E130 0300 0315 0062;0061 05AE 1E130 0300 0315 0062; # (a◌𞄰◌̕◌̀◌֮b; a◌֮◌𞄰◌̀◌̕b; a◌֮◌𞄰◌̀◌̕b; a◌֮◌𞄰◌̀◌̕b; a◌֮◌𞄰◌̀◌̕b; ) LATIN SMALL LETTER A, NYIAKENG PUACHUE HMONG TONE-B, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B  0061 0315 0300 05AE 1E131 0062;00E0 05AE 1E131 0315 0062;0061 05AE 0300 1E131 0315 0062;00E0 05AE 1E131 0315 0062;0061 05AE 0300 1E131 0315 0062; # (a◌̕◌̀◌֮◌𞄱b; à◌֮◌𞄱◌̕b; a◌֮◌̀◌𞄱◌̕b; à◌֮◌𞄱◌̕b; a◌֮◌̀◌𞄱◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, NYIAKENG PUACHUE HMONG TONE-M, LATIN SMALL LETTER B @@ -18836,6 +18910,14 @@ FFEE;FFEE;FFEE;25CB;25CB; # (○; ○; ○; ○; ○; ) HALFWIDTH WHITE CIRCLE  0061 1E2EE 0315 0300 05AE 0062;0061 05AE 1E2EE 0300 0315 0062;0061 05AE 1E2EE 0300 0315 0062;0061 05AE 1E2EE 0300 0315 0062;0061 05AE 1E2EE 0300 0315 0062; # (a◌𞋮◌̕◌̀◌֮b; a◌֮◌𞋮◌̀◌̕b; a◌֮◌𞋮◌̀◌̕b; a◌֮◌𞋮◌̀◌̕b; a◌֮◌𞋮◌̀◌̕b; ) LATIN SMALL LETTER A, WANCHO TONE KOI, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B  0061 0315 0300 05AE 1E2EF 0062;00E0 05AE 1E2EF 0315 0062;0061 05AE 0300 1E2EF 0315 0062;00E0 05AE 1E2EF 0315 0062;0061 05AE 0300 1E2EF 0315 0062; # (a◌̕◌̀◌֮◌𞋯b; à◌֮◌𞋯◌̕b; a◌֮◌̀◌𞋯◌̕b; à◌֮◌𞋯◌̕b; a◌֮◌̀◌𞋯◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, WANCHO TONE KOINI, LATIN SMALL LETTER B  0061 1E2EF 0315 0300 05AE 0062;0061 05AE 1E2EF 0300 0315 0062;0061 05AE 1E2EF 0300 0315 0062;0061 05AE 1E2EF 0300 0315 0062;0061 05AE 1E2EF 0300 0315 0062; # (a◌𞋯◌̕◌̀◌֮b; a◌֮◌𞋯◌̀◌̕b; a◌֮◌𞋯◌̀◌̕b; a◌֮◌𞋯◌̀◌̕b; a◌֮◌𞋯◌̀◌̕b; ) LATIN SMALL LETTER A, WANCHO TONE KOINI, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 035C 0315 0300 1E4EC 0062;00E0 0315 1E4EC 035C 0062;0061 0300 0315 1E4EC 035C 0062;00E0 0315 1E4EC 035C 0062;0061 0300 0315 1E4EC 035C 0062; # (a◌͜◌̕◌̀◌𞓬b; à◌̕◌𞓬◌͜b; a◌̀◌̕◌𞓬◌͜b; à◌̕◌𞓬◌͜b; a◌̀◌̕◌𞓬◌͜b; ) LATIN SMALL LETTER A, COMBINING DOUBLE BREVE BELOW, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, NAG MUNDARI SIGN MUHOR, LATIN SMALL LETTER B +0061 1E4EC 035C 0315 0300 0062;00E0 1E4EC 0315 035C 0062;0061 0300 1E4EC 0315 035C 0062;00E0 1E4EC 0315 035C 0062;0061 0300 1E4EC 0315 035C 0062; # (a◌𞓬◌͜◌̕◌̀b; à◌𞓬◌̕◌͜b; a◌̀◌𞓬◌̕◌͜b; à◌𞓬◌̕◌͜b; a◌̀◌𞓬◌̕◌͜b; ) LATIN SMALL LETTER A, NAG MUNDARI SIGN MUHOR, COMBINING DOUBLE BREVE BELOW, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, LATIN SMALL LETTER B +0061 035C 0315 0300 1E4ED 0062;00E0 0315 1E4ED 035C 0062;0061 0300 0315 1E4ED 035C 0062;00E0 0315 1E4ED 035C 0062;0061 0300 0315 1E4ED 035C 0062; # (a◌͜◌̕◌̀◌𞓭b; à◌̕◌𞓭◌͜b; a◌̀◌̕◌𞓭◌͜b; à◌̕◌𞓭◌͜b; a◌̀◌̕◌𞓭◌͜b; ) LATIN SMALL LETTER A, COMBINING DOUBLE BREVE BELOW, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, NAG MUNDARI SIGN TOYOR, LATIN SMALL LETTER B +0061 1E4ED 035C 0315 0300 0062;00E0 1E4ED 0315 035C 0062;0061 0300 1E4ED 0315 035C 0062;00E0 1E4ED 0315 035C 0062;0061 0300 1E4ED 0315 035C 0062; # (a◌𞓭◌͜◌̕◌̀b; à◌𞓭◌̕◌͜b; a◌̀◌𞓭◌̕◌͜b; à◌𞓭◌̕◌͜b; a◌̀◌𞓭◌̕◌͜b; ) LATIN SMALL LETTER A, NAG MUNDARI SIGN TOYOR, COMBINING DOUBLE BREVE BELOW, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, LATIN SMALL LETTER B +0061 059A 0316 1DFA 1E4EE 0062;0061 1DFA 0316 1E4EE 059A 0062;0061 1DFA 0316 1E4EE 059A 0062;0061 1DFA 0316 1E4EE 059A 0062;0061 1DFA 0316 1E4EE 059A 0062; # (a◌֚◌̖◌᷺◌𞓮b; a◌᷺◌̖◌𞓮◌֚b; a◌᷺◌̖◌𞓮◌֚b; a◌᷺◌̖◌𞓮◌֚b; a◌᷺◌̖◌𞓮◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, NAG MUNDARI SIGN IKIR, LATIN SMALL LETTER B +0061 1E4EE 059A 0316 1DFA 0062;0061 1DFA 1E4EE 0316 059A 0062;0061 1DFA 1E4EE 0316 059A 0062;0061 1DFA 1E4EE 0316 059A 0062;0061 1DFA 1E4EE 0316 059A 0062; # (a◌𞓮◌֚◌̖◌᷺b; a◌᷺◌𞓮◌̖◌֚b; a◌᷺◌𞓮◌̖◌֚b; a◌᷺◌𞓮◌̖◌֚b; a◌᷺◌𞓮◌̖◌֚b; ) LATIN SMALL LETTER A, NAG MUNDARI SIGN IKIR, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E4EF 0062;00E0 05AE 1E4EF 0315 0062;0061 05AE 0300 1E4EF 0315 0062;00E0 05AE 1E4EF 0315 0062;0061 05AE 0300 1E4EF 0315 0062; # (a◌̕◌̀◌֮◌𞓯b; à◌֮◌𞓯◌̕b; a◌֮◌̀◌𞓯◌̕b; à◌֮◌𞓯◌̕b; a◌֮◌̀◌𞓯◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, NAG MUNDARI SIGN SUTUH, LATIN SMALL LETTER B +0061 1E4EF 0315 0300 05AE 0062;0061 05AE 1E4EF 0300 0315 0062;0061 05AE 1E4EF 0300 0315 0062;0061 05AE 1E4EF 0300 0315 0062;0061 05AE 1E4EF 0300 0315 0062; # (a◌𞓯◌̕◌̀◌֮b; a◌֮◌𞓯◌̀◌̕b; a◌֮◌𞓯◌̀◌̕b; a◌֮◌𞓯◌̀◌̕b; a◌֮◌𞓯◌̀◌̕b; ) LATIN SMALL LETTER A, NAG MUNDARI SIGN SUTUH, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B  0061 059A 0316 1DFA 1E8D0 0062;0061 1DFA 0316 1E8D0 059A 0062;0061 1DFA 0316 1E8D0 059A 0062;0061 1DFA 0316 1E8D0 059A 0062;0061 1DFA 0316 1E8D0 059A 0062; # (a◌֚◌̖◌᷺◌𞣐b; a◌᷺◌̖◌𞣐◌֚b; a◌᷺◌̖◌𞣐◌֚b; a◌᷺◌̖◌𞣐◌֚b; a◌᷺◌̖◌𞣐◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, MENDE KIKAKUI COMBINING NUMBER TEENS, LATIN SMALL LETTER B  0061 1E8D0 059A 0316 1DFA 0062;0061 1DFA 1E8D0 0316 059A 0062;0061 1DFA 1E8D0 0316 059A 0062;0061 1DFA 1E8D0 0316 059A 0062;0061 1DFA 1E8D0 0316 059A 0062; # (a◌𞣐◌֚◌̖◌᷺b; a◌᷺◌𞣐◌̖◌֚b; a◌᷺◌𞣐◌̖◌֚b; a◌᷺◌𞣐◌̖◌֚b; a◌᷺◌𞣐◌̖◌֚b; ) LATIN SMALL LETTER A, MENDE KIKAKUI COMBINING NUMBER TEENS, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, LATIN SMALL LETTER B  0061 059A 0316 1DFA 1E8D1 0062;0061 1DFA 0316 1E8D1 059A 0062;0061 1DFA 0316 1E8D1 059A 0062;0061 1DFA 0316 1E8D1 059A 0062;0061 1DFA 0316 1E8D1 059A 0062; # (a◌֚◌̖◌᷺◌𞣑b; a◌᷺◌̖◌𞣑◌֚b; a◌᷺◌̖◌𞣑◌֚b; a◌᷺◌̖◌𞣑◌֚b; a◌᷺◌̖◌𞣑◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, COMBINING DOT BELOW LEFT, MENDE KIKAKUI COMBINING NUMBER TENS, LATIN SMALL LETTER B diff --git a/tests/uninorm/test-canonical-decomposition.c b/tests/uninorm/test-canonical-decomposition.c index 06a66287..0e3fdbf4 100644 --- a/tests/uninorm/test-canonical-decomposition.c +++ b/tests/uninorm/test-canonical-decomposition.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-compat-decomposition.c b/tests/uninorm/test-compat-decomposition.c index e969426c..c0221310 100644 --- a/tests/uninorm/test-compat-decomposition.c +++ b/tests/uninorm/test-compat-decomposition.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-composition.c b/tests/uninorm/test-composition.c index 4b53cac6..e6bdc970 100644 --- a/tests/uninorm/test-composition.c +++ b/tests/uninorm/test-composition.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-decomposing-form.c b/tests/uninorm/test-decomposing-form.c index 10329fa9..17ad3bdb 100644 --- a/tests/uninorm/test-decomposing-form.c +++ b/tests/uninorm/test-decomposing-form.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-decomposition.c b/tests/uninorm/test-decomposition.c index f7e7e50a..d0e53e54 100644 --- a/tests/uninorm/test-decomposition.c +++ b/tests/uninorm/test-decomposition.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-nfc.c b/tests/uninorm/test-nfc.c index 39f71e78..db5b45d8 100644 --- a/tests/uninorm/test-nfc.c +++ b/tests/uninorm/test-nfc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-nfd.c b/tests/uninorm/test-nfd.c index a7c7e995..7d562e72 100644 --- a/tests/uninorm/test-nfd.c +++ b/tests/uninorm/test-nfd.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-nfkc.c b/tests/uninorm/test-nfkc.c index 365839bb..56a43e76 100644 --- a/tests/uninorm/test-nfkc.c +++ b/tests/uninorm/test-nfkc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-nfkd.c b/tests/uninorm/test-nfkd.c index 5c640611..88ca6b50 100644 --- a/tests/uninorm/test-nfkd.c +++ b/tests/uninorm/test-nfkd.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u16-nfc.c b/tests/uninorm/test-u16-nfc.c index 578a759f..fa3ebfcd 100644 --- a/tests/uninorm/test-u16-nfc.c +++ b/tests/uninorm/test-u16-nfc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u16-nfd.c b/tests/uninorm/test-u16-nfd.c index f1c08ebd..08b5c004 100644 --- a/tests/uninorm/test-u16-nfd.c +++ b/tests/uninorm/test-u16-nfd.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u16-nfkc.c b/tests/uninorm/test-u16-nfkc.c index a7023f56..7924d822 100644 --- a/tests/uninorm/test-u16-nfkc.c +++ b/tests/uninorm/test-u16-nfkc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u16-nfkd.c b/tests/uninorm/test-u16-nfkd.c index 940a90a7..1d78701d 100644 --- a/tests/uninorm/test-u16-nfkd.c +++ b/tests/uninorm/test-u16-nfkd.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u16-normcmp.c b/tests/uninorm/test-u16-normcmp.c index bb453f0a..9ebb94b2 100644 --- a/tests/uninorm/test-u16-normcmp.c +++ b/tests/uninorm/test-u16-normcmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u16-normcmp.h b/tests/uninorm/test-u16-normcmp.h index fff74c90..0c7ce100 100644 --- a/tests/uninorm/test-u16-normcmp.h +++ b/tests/uninorm/test-u16-normcmp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u16-normcoll.c b/tests/uninorm/test-u16-normcoll.c index 54c9fa2e..e0689a30 100644 --- a/tests/uninorm/test-u16-normcoll.c +++ b/tests/uninorm/test-u16-normcoll.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-nfc-big.c b/tests/uninorm/test-u32-nfc-big.c index 2a07fa83..b9f35e56 100644 --- a/tests/uninorm/test-u32-nfc-big.c +++ b/tests/uninorm/test-u32-nfc-big.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-nfc.c b/tests/uninorm/test-u32-nfc.c index 883d5cfa..57b6a194 100644 --- a/tests/uninorm/test-u32-nfc.c +++ b/tests/uninorm/test-u32-nfc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-nfd-big.c b/tests/uninorm/test-u32-nfd-big.c index 45694a27..683c768b 100644 --- a/tests/uninorm/test-u32-nfd-big.c +++ b/tests/uninorm/test-u32-nfd-big.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-nfd.c b/tests/uninorm/test-u32-nfd.c index ee07eed9..33f2c97d 100644 --- a/tests/uninorm/test-u32-nfd.c +++ b/tests/uninorm/test-u32-nfd.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-nfkc-big.c b/tests/uninorm/test-u32-nfkc-big.c index b68db996..84491129 100644 --- a/tests/uninorm/test-u32-nfkc-big.c +++ b/tests/uninorm/test-u32-nfkc-big.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-nfkc.c b/tests/uninorm/test-u32-nfkc.c index 3e6d68e6..7f8d472a 100644 --- a/tests/uninorm/test-u32-nfkc.c +++ b/tests/uninorm/test-u32-nfkc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-nfkd-big.c b/tests/uninorm/test-u32-nfkd-big.c index d5e42c3c..a2ca4673 100644 --- a/tests/uninorm/test-u32-nfkd-big.c +++ b/tests/uninorm/test-u32-nfkd-big.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-nfkd.c b/tests/uninorm/test-u32-nfkd.c index ca0069ec..3cbb5f7b 100644 --- a/tests/uninorm/test-u32-nfkd.c +++ b/tests/uninorm/test-u32-nfkd.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-normalize-big.c b/tests/uninorm/test-u32-normalize-big.c index 8758df59..40ef55cc 100644 --- a/tests/uninorm/test-u32-normalize-big.c +++ b/tests/uninorm/test-u32-normalize-big.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-normalize-big.h b/tests/uninorm/test-u32-normalize-big.h index c6c1988f..79b16264 100644 --- a/tests/uninorm/test-u32-normalize-big.h +++ b/tests/uninorm/test-u32-normalize-big.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-normcmp.c b/tests/uninorm/test-u32-normcmp.c index 8b3e17d4..577edf6b 100644 --- a/tests/uninorm/test-u32-normcmp.c +++ b/tests/uninorm/test-u32-normcmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-normcmp.h b/tests/uninorm/test-u32-normcmp.h index 0046606a..1597c88e 100644 --- a/tests/uninorm/test-u32-normcmp.h +++ b/tests/uninorm/test-u32-normcmp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u32-normcoll.c b/tests/uninorm/test-u32-normcoll.c index b0d3b56e..492475cc 100644 --- a/tests/uninorm/test-u32-normcoll.c +++ b/tests/uninorm/test-u32-normcoll.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/uninorm/test-u8-nfc.c b/tests/uninorm/test-u8-nfc.c index a9ee9faf..bfc56240 100644 --- a/tests/uninorm/test-u8-nfc.c +++ b/tests/uninorm/test-u8-nfc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u8-nfd.c b/tests/uninorm/test-u8-nfd.c index c3913dbb..e5e3ac69 100644 --- a/tests/uninorm/test-u8-nfd.c +++ b/tests/uninorm/test-u8-nfd.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u8-nfkc.c b/tests/uninorm/test-u8-nfkc.c index 32eb57a4..f59bc036 100644 --- a/tests/uninorm/test-u8-nfkc.c +++ b/tests/uninorm/test-u8-nfkc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u8-nfkd.c b/tests/uninorm/test-u8-nfkd.c index 5cb59c18..4fb89a5b 100644 --- a/tests/uninorm/test-u8-nfkd.c +++ b/tests/uninorm/test-u8-nfkd.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u8-normcmp.c b/tests/uninorm/test-u8-normcmp.c index 7abccc93..9d665e63 100644 --- a/tests/uninorm/test-u8-normcmp.c +++ b/tests/uninorm/test-u8-normcmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u8-normcmp.h b/tests/uninorm/test-u8-normcmp.h index b910eef4..c853c4a9 100644 --- a/tests/uninorm/test-u8-normcmp.h +++ b/tests/uninorm/test-u8-normcmp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uninorm/test-u8-normcoll.c b/tests/uninorm/test-u8-normcoll.c index bcf2595f..a113b4f5 100644 --- a/tests/uninorm/test-u8-normcoll.c +++ b/tests/uninorm/test-u8-normcoll.c @@ -4,7 +4,7 @@     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 +   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, diff --git a/tests/uninorm/test-uninorm-filter-nfc.c b/tests/uninorm/test-uninorm-filter-nfc.c index f5ff8e88..ea9cdc0a 100644 --- a/tests/uninorm/test-uninorm-filter-nfc.c +++ b/tests/uninorm/test-uninorm-filter-nfc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u16-asnprintf1.c b/tests/unistdio/test-u16-asnprintf1.c index cea73a98..a95e6bfc 100644 --- a/tests/unistdio/test-u16-asnprintf1.c +++ b/tests/unistdio/test-u16-asnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u16-asnprintf1.h b/tests/unistdio/test-u16-asnprintf1.h index a027ff65..4145ae87 100644 --- a/tests/unistdio/test-u16-asnprintf1.h +++ b/tests/unistdio/test-u16-asnprintf1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u16-printf1.h b/tests/unistdio/test-u16-printf1.h index c1460d27..7690978d 100644 --- a/tests/unistdio/test-u16-printf1.h +++ b/tests/unistdio/test-u16-printf1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u16-vasnprintf1.c b/tests/unistdio/test-u16-vasnprintf1.c index dc565141..de705ae6 100644 --- a/tests/unistdio/test-u16-vasnprintf1.c +++ b/tests/unistdio/test-u16-vasnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u16-vasnprintf2.c b/tests/unistdio/test-u16-vasnprintf2.c index 2bd6b222..ec5d790e 100644 --- a/tests/unistdio/test-u16-vasnprintf2.c +++ b/tests/unistdio/test-u16-vasnprintf2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u16-vasnprintf2.sh b/tests/unistdio/test-u16-vasnprintf2.sh index 714f1a4f..a3b949ac 100755 --- a/tests/unistdio/test-u16-vasnprintf2.sh +++ b/tests/unistdio/test-u16-vasnprintf2.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a traditional french locale is installed. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR != none; then    testlocale=$LOCALE_FR  else diff --git a/tests/unistdio/test-u16-vasnprintf3.c b/tests/unistdio/test-u16-vasnprintf3.c index 7f91442f..97f3c69d 100644 --- a/tests/unistdio/test-u16-vasnprintf3.c +++ b/tests/unistdio/test-u16-vasnprintf3.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u16-vasnprintf3.sh b/tests/unistdio/test-u16-vasnprintf3.sh index a5aa4a00..5134b884 100755 --- a/tests/unistdio/test-u16-vasnprintf3.sh +++ b/tests/unistdio/test-u16-vasnprintf3.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a french Unicode locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 != none; then    testlocale=$LOCALE_FR_UTF8  else diff --git a/tests/unistdio/test-u16-vasprintf1.c b/tests/unistdio/test-u16-vasprintf1.c index 39d7c8eb..1d00ec93 100644 --- a/tests/unistdio/test-u16-vasprintf1.c +++ b/tests/unistdio/test-u16-vasprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u16-vsnprintf1.c b/tests/unistdio/test-u16-vsnprintf1.c index a8a5ab79..27f3871a 100644 --- a/tests/unistdio/test-u16-vsnprintf1.c +++ b/tests/unistdio/test-u16-vsnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u16-vsprintf1.c b/tests/unistdio/test-u16-vsprintf1.c index 3930460f..ab4d9d57 100644 --- a/tests/unistdio/test-u16-vsprintf1.c +++ b/tests/unistdio/test-u16-vsprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u32-asnprintf1.c b/tests/unistdio/test-u32-asnprintf1.c index f3d56b76..aebc798e 100644 --- a/tests/unistdio/test-u32-asnprintf1.c +++ b/tests/unistdio/test-u32-asnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u32-asnprintf1.h b/tests/unistdio/test-u32-asnprintf1.h index 0ab81214..b654c59a 100644 --- a/tests/unistdio/test-u32-asnprintf1.h +++ b/tests/unistdio/test-u32-asnprintf1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u32-printf1.h b/tests/unistdio/test-u32-printf1.h index 97eafe03..d3e10e92 100644 --- a/tests/unistdio/test-u32-printf1.h +++ b/tests/unistdio/test-u32-printf1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u32-vasnprintf1.c b/tests/unistdio/test-u32-vasnprintf1.c index aa68017a..553ee2d5 100644 --- a/tests/unistdio/test-u32-vasnprintf1.c +++ b/tests/unistdio/test-u32-vasnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u32-vasnprintf2.c b/tests/unistdio/test-u32-vasnprintf2.c index 67bd1a69..7d82cfc6 100644 --- a/tests/unistdio/test-u32-vasnprintf2.c +++ b/tests/unistdio/test-u32-vasnprintf2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u32-vasnprintf2.sh b/tests/unistdio/test-u32-vasnprintf2.sh index 94800e6d..9bf796fb 100755 --- a/tests/unistdio/test-u32-vasnprintf2.sh +++ b/tests/unistdio/test-u32-vasnprintf2.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a traditional french locale is installed. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR != none; then    testlocale=$LOCALE_FR  else diff --git a/tests/unistdio/test-u32-vasnprintf3.c b/tests/unistdio/test-u32-vasnprintf3.c index bb47af21..3509f6ff 100644 --- a/tests/unistdio/test-u32-vasnprintf3.c +++ b/tests/unistdio/test-u32-vasnprintf3.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u32-vasnprintf3.sh b/tests/unistdio/test-u32-vasnprintf3.sh index 9b487a57..aef4d74c 100755 --- a/tests/unistdio/test-u32-vasnprintf3.sh +++ b/tests/unistdio/test-u32-vasnprintf3.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a french Unicode locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 != none; then    testlocale=$LOCALE_FR_UTF8  else diff --git a/tests/unistdio/test-u32-vasprintf1.c b/tests/unistdio/test-u32-vasprintf1.c index 14cb33f9..41084b6d 100644 --- a/tests/unistdio/test-u32-vasprintf1.c +++ b/tests/unistdio/test-u32-vasprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u32-vsnprintf1.c b/tests/unistdio/test-u32-vsnprintf1.c index bfc1a6e7..bae3adca 100644 --- a/tests/unistdio/test-u32-vsnprintf1.c +++ b/tests/unistdio/test-u32-vsnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u32-vsprintf1.c b/tests/unistdio/test-u32-vsprintf1.c index e4e5dd37..27b0065c 100644 --- a/tests/unistdio/test-u32-vsprintf1.c +++ b/tests/unistdio/test-u32-vsprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u8-asnprintf1.c b/tests/unistdio/test-u8-asnprintf1.c index 9793aa73..058b7714 100644 --- a/tests/unistdio/test-u8-asnprintf1.c +++ b/tests/unistdio/test-u8-asnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u8-asnprintf1.h b/tests/unistdio/test-u8-asnprintf1.h index 7d38fb45..6aeeae31 100644 --- a/tests/unistdio/test-u8-asnprintf1.h +++ b/tests/unistdio/test-u8-asnprintf1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u8-printf1.h b/tests/unistdio/test-u8-printf1.h index 87162d8f..5a820148 100644 --- a/tests/unistdio/test-u8-printf1.h +++ b/tests/unistdio/test-u8-printf1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u8-vasnprintf1.c b/tests/unistdio/test-u8-vasnprintf1.c index b026c6f4..94b9c8d7 100644 --- a/tests/unistdio/test-u8-vasnprintf1.c +++ b/tests/unistdio/test-u8-vasnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u8-vasnprintf2.c b/tests/unistdio/test-u8-vasnprintf2.c index 36b86413..745550b1 100644 --- a/tests/unistdio/test-u8-vasnprintf2.c +++ b/tests/unistdio/test-u8-vasnprintf2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u8-vasnprintf2.sh b/tests/unistdio/test-u8-vasnprintf2.sh index 3ea38950..2296d517 100755 --- a/tests/unistdio/test-u8-vasnprintf2.sh +++ b/tests/unistdio/test-u8-vasnprintf2.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a traditional french locale is installed. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR != none; then    testlocale=$LOCALE_FR  else diff --git a/tests/unistdio/test-u8-vasnprintf3.c b/tests/unistdio/test-u8-vasnprintf3.c index 2b069851..5f601abd 100644 --- a/tests/unistdio/test-u8-vasnprintf3.c +++ b/tests/unistdio/test-u8-vasnprintf3.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u8-vasnprintf3.sh b/tests/unistdio/test-u8-vasnprintf3.sh index aa46e11f..383ae12b 100755 --- a/tests/unistdio/test-u8-vasnprintf3.sh +++ b/tests/unistdio/test-u8-vasnprintf3.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a french Unicode locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 != none; then    testlocale=$LOCALE_FR_UTF8  else diff --git a/tests/unistdio/test-u8-vasprintf1.c b/tests/unistdio/test-u8-vasprintf1.c index 8d9d09ce..ec7e773f 100644 --- a/tests/unistdio/test-u8-vasprintf1.c +++ b/tests/unistdio/test-u8-vasprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u8-vsnprintf1.c b/tests/unistdio/test-u8-vsnprintf1.c index d4089756..89274aa0 100644 --- a/tests/unistdio/test-u8-vsnprintf1.c +++ b/tests/unistdio/test-u8-vsnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-u8-vsprintf1.c b/tests/unistdio/test-u8-vsprintf1.c index 2022cd58..821880be 100644 --- a/tests/unistdio/test-u8-vsprintf1.c +++ b/tests/unistdio/test-u8-vsprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-ulc-asnprintf1.c b/tests/unistdio/test-ulc-asnprintf1.c index 9d5519dc..4cad53d5 100644 --- a/tests/unistdio/test-ulc-asnprintf1.c +++ b/tests/unistdio/test-ulc-asnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-ulc-asnprintf1.h b/tests/unistdio/test-ulc-asnprintf1.h index 82128ea3..3631c26e 100644 --- a/tests/unistdio/test-ulc-asnprintf1.h +++ b/tests/unistdio/test-ulc-asnprintf1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-ulc-printf1.h b/tests/unistdio/test-ulc-printf1.h index 7d4dd749..a15effbb 100644 --- a/tests/unistdio/test-ulc-printf1.h +++ b/tests/unistdio/test-ulc-printf1.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-ulc-vasnprintf1.c b/tests/unistdio/test-ulc-vasnprintf1.c index ca393e9f..d6ea67dd 100644 --- a/tests/unistdio/test-ulc-vasnprintf1.c +++ b/tests/unistdio/test-ulc-vasnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-ulc-vasnprintf2.c b/tests/unistdio/test-ulc-vasnprintf2.c index cd4154db..f53ff50f 100644 --- a/tests/unistdio/test-ulc-vasnprintf2.c +++ b/tests/unistdio/test-ulc-vasnprintf2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-ulc-vasnprintf2.sh b/tests/unistdio/test-ulc-vasnprintf2.sh index dd4b31f4..73ddb80e 100755 --- a/tests/unistdio/test-ulc-vasnprintf2.sh +++ b/tests/unistdio/test-ulc-vasnprintf2.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a traditional french locale is installed. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR != none; then    testlocale=$LOCALE_FR  else diff --git a/tests/unistdio/test-ulc-vasnprintf3.c b/tests/unistdio/test-ulc-vasnprintf3.c index 86a0ac81..6bc2c9b5 100644 --- a/tests/unistdio/test-ulc-vasnprintf3.c +++ b/tests/unistdio/test-ulc-vasnprintf3.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-ulc-vasnprintf3.sh b/tests/unistdio/test-ulc-vasnprintf3.sh index 128c8a0c..1aacae9d 100755 --- a/tests/unistdio/test-ulc-vasnprintf3.sh +++ b/tests/unistdio/test-ulc-vasnprintf3.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test whether a french Unicode locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}"  if test $LOCALE_FR_UTF8 != none; then    testlocale=$LOCALE_FR_UTF8  else diff --git a/tests/unistdio/test-ulc-vasprintf1.c b/tests/unistdio/test-ulc-vasprintf1.c index e625b5c4..ec523ff4 100644 --- a/tests/unistdio/test-ulc-vasprintf1.c +++ b/tests/unistdio/test-ulc-vasprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-ulc-vsnprintf1.c b/tests/unistdio/test-ulc-vsnprintf1.c index 8a944a44..c282ff99 100644 --- a/tests/unistdio/test-ulc-vsnprintf1.c +++ b/tests/unistdio/test-ulc-vsnprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistdio/test-ulc-vsprintf1.c b/tests/unistdio/test-ulc-vsprintf1.c index b4699ead..9e9af160 100644 --- a/tests/unistdio/test-ulc-vsprintf1.c +++ b/tests/unistdio/test-ulc-vsprintf1.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-chr.h b/tests/unistr/test-chr.h index 0282b109..f8f87015 100644 --- a/tests/unistr/test-chr.h +++ b/tests/unistr/test-chr.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-cmp.h b/tests/unistr/test-cmp.h index a9aa0ae7..c7c92434 100644 --- a/tests/unistr/test-cmp.h +++ b/tests/unistr/test-cmp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-cmp2.h b/tests/unistr/test-cmp2.h index ed630896..8fe88c54 100644 --- a/tests/unistr/test-cmp2.h +++ b/tests/unistr/test-cmp2.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-cpy-alloc.h b/tests/unistr/test-cpy-alloc.h index 16741629..5fa46a74 100644 --- a/tests/unistr/test-cpy-alloc.h +++ b/tests/unistr/test-cpy-alloc.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-cpy.h b/tests/unistr/test-cpy.h index 3d2c5b32..12379bb2 100644 --- a/tests/unistr/test-cpy.h +++ b/tests/unistr/test-cpy.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-move.h b/tests/unistr/test-move.h index 6cf59ed5..fd13b4cc 100644 --- a/tests/unistr/test-move.h +++ b/tests/unistr/test-move.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-set.h b/tests/unistr/test-set.h index 9320868e..24330260 100644 --- a/tests/unistr/test-set.h +++ b/tests/unistr/test-set.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-stpcpy.h b/tests/unistr/test-stpcpy.h index 42ec2393..5b1d6615 100644 --- a/tests/unistr/test-stpcpy.h +++ b/tests/unistr/test-stpcpy.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-stpncpy.h b/tests/unistr/test-stpncpy.h index 686a704c..34503bd2 100644 --- a/tests/unistr/test-stpncpy.h +++ b/tests/unistr/test-stpncpy.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-strcat.h b/tests/unistr/test-strcat.h index 6eecccb1..906528ff 100644 --- a/tests/unistr/test-strcat.h +++ b/tests/unistr/test-strcat.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-strchr.h b/tests/unistr/test-strchr.h index b5d0a1f4..52768a4b 100644 --- a/tests/unistr/test-strchr.h +++ b/tests/unistr/test-strchr.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-strcmp.h b/tests/unistr/test-strcmp.h index 66d4a8c1..aeba3549 100644 --- a/tests/unistr/test-strcmp.h +++ b/tests/unistr/test-strcmp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-strcpy.h b/tests/unistr/test-strcpy.h index c16305a3..1f145032 100644 --- a/tests/unistr/test-strcpy.h +++ b/tests/unistr/test-strcpy.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-strdup.h b/tests/unistr/test-strdup.h index 456c2416..298a0459 100644 --- a/tests/unistr/test-strdup.h +++ b/tests/unistr/test-strdup.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-strncat.h b/tests/unistr/test-strncat.h index 3b470076..c66583ec 100644 --- a/tests/unistr/test-strncat.h +++ b/tests/unistr/test-strncat.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-strncmp.h b/tests/unistr/test-strncmp.h index ab3ee21a..8fdc4d99 100644 --- a/tests/unistr/test-strncmp.h +++ b/tests/unistr/test-strncmp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-strncpy.h b/tests/unistr/test-strncpy.h index 11cbf980..f2774fb0 100644 --- a/tests/unistr/test-strncpy.h +++ b/tests/unistr/test-strncpy.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-strnlen.h b/tests/unistr/test-strnlen.h index 6b3211db..ba3c0cfd 100644 --- a/tests/unistr/test-strnlen.h +++ b/tests/unistr/test-strnlen.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u-strstr.h b/tests/unistr/test-u-strstr.h index bbc66821..d53183e1 100644 --- a/tests/unistr/test-u-strstr.h +++ b/tests/unistr/test-u-strstr.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u-strtok.h b/tests/unistr/test-u-strtok.h index 72756c2e..15389ac1 100644 --- a/tests/unistr/test-u-strtok.h +++ b/tests/unistr/test-u-strtok.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-check.c b/tests/unistr/test-u16-check.c index 4c96f672..eb7b9988 100644 --- a/tests/unistr/test-u16-check.c +++ b/tests/unistr/test-u16-check.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-chr.c b/tests/unistr/test-u16-chr.c index eeefc067..6e6e1069 100644 --- a/tests/unistr/test-u16-chr.c +++ b/tests/unistr/test-u16-chr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-cmp.c b/tests/unistr/test-u16-cmp.c index 7d44d999..393fa9d7 100644 --- a/tests/unistr/test-u16-cmp.c +++ b/tests/unistr/test-u16-cmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-cmp2.c b/tests/unistr/test-u16-cmp2.c index 37cdf2e2..e25fe1a6 100644 --- a/tests/unistr/test-u16-cmp2.c +++ b/tests/unistr/test-u16-cmp2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-cpy-alloc.c b/tests/unistr/test-u16-cpy-alloc.c index 1ca76b5d..80e8999d 100644 --- a/tests/unistr/test-u16-cpy-alloc.c +++ b/tests/unistr/test-u16-cpy-alloc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-cpy.c b/tests/unistr/test-u16-cpy.c index d3c6a63f..be7f11aa 100644 --- a/tests/unistr/test-u16-cpy.c +++ b/tests/unistr/test-u16-cpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-mblen.c b/tests/unistr/test-u16-mblen.c index 88919999..603cfe1f 100644 --- a/tests/unistr/test-u16-mblen.c +++ b/tests/unistr/test-u16-mblen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-mbsnlen.c b/tests/unistr/test-u16-mbsnlen.c index cbce6819..02bf2030 100644 --- a/tests/unistr/test-u16-mbsnlen.c +++ b/tests/unistr/test-u16-mbsnlen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-mbtouc-unsafe.c b/tests/unistr/test-u16-mbtouc-unsafe.c index 17b12eaa..06d4e428 100644 --- a/tests/unistr/test-u16-mbtouc-unsafe.c +++ b/tests/unistr/test-u16-mbtouc-unsafe.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-mbtouc.c b/tests/unistr/test-u16-mbtouc.c index c8d434ee..57a2b663 100644 --- a/tests/unistr/test-u16-mbtouc.c +++ b/tests/unistr/test-u16-mbtouc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-mbtouc.h b/tests/unistr/test-u16-mbtouc.h index 32e3af48..a44a998d 100644 --- a/tests/unistr/test-u16-mbtouc.h +++ b/tests/unistr/test-u16-mbtouc.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-mbtoucr.c b/tests/unistr/test-u16-mbtoucr.c index 17d94654..dfdab67d 100644 --- a/tests/unistr/test-u16-mbtoucr.c +++ b/tests/unistr/test-u16-mbtoucr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-move.c b/tests/unistr/test-u16-move.c index e36518eb..8e050d44 100644 --- a/tests/unistr/test-u16-move.c +++ b/tests/unistr/test-u16-move.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-next.c b/tests/unistr/test-u16-next.c index ced2cb6c..e2022898 100644 --- a/tests/unistr/test-u16-next.c +++ b/tests/unistr/test-u16-next.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-prev.c b/tests/unistr/test-u16-prev.c index 960bd3f7..c7400dc5 100644 --- a/tests/unistr/test-u16-prev.c +++ b/tests/unistr/test-u16-prev.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-set.c b/tests/unistr/test-u16-set.c index 3656f289..a5270d10 100644 --- a/tests/unistr/test-u16-set.c +++ b/tests/unistr/test-u16-set.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-stpcpy.c b/tests/unistr/test-u16-stpcpy.c index 2512bde1..5f18e011 100644 --- a/tests/unistr/test-u16-stpcpy.c +++ b/tests/unistr/test-u16-stpcpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-stpncpy.c b/tests/unistr/test-u16-stpncpy.c index 901b0ef0..104ea16c 100644 --- a/tests/unistr/test-u16-stpncpy.c +++ b/tests/unistr/test-u16-stpncpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strcat.c b/tests/unistr/test-u16-strcat.c index 51ee87e7..de5448b2 100644 --- a/tests/unistr/test-u16-strcat.c +++ b/tests/unistr/test-u16-strcat.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strchr.c b/tests/unistr/test-u16-strchr.c index b5bc38da..f4ec6881 100644 --- a/tests/unistr/test-u16-strchr.c +++ b/tests/unistr/test-u16-strchr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strcmp.c b/tests/unistr/test-u16-strcmp.c index cad915ed..7ab3e831 100644 --- a/tests/unistr/test-u16-strcmp.c +++ b/tests/unistr/test-u16-strcmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strcmp.h b/tests/unistr/test-u16-strcmp.h index 221cb164..84b8d511 100644 --- a/tests/unistr/test-u16-strcmp.h +++ b/tests/unistr/test-u16-strcmp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strcoll.c b/tests/unistr/test-u16-strcoll.c index f7da67f6..9ea43bca 100644 --- a/tests/unistr/test-u16-strcoll.c +++ b/tests/unistr/test-u16-strcoll.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strcpy.c b/tests/unistr/test-u16-strcpy.c index eac03db1..7f0e01e6 100644 --- a/tests/unistr/test-u16-strcpy.c +++ b/tests/unistr/test-u16-strcpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strdup.c b/tests/unistr/test-u16-strdup.c index 5c67f731..798831e1 100644 --- a/tests/unistr/test-u16-strdup.c +++ b/tests/unistr/test-u16-strdup.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strlen.c b/tests/unistr/test-u16-strlen.c index bfb67d6b..68198a41 100644 --- a/tests/unistr/test-u16-strlen.c +++ b/tests/unistr/test-u16-strlen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strmblen.c b/tests/unistr/test-u16-strmblen.c index 59a0e7c7..f31d824c 100644 --- a/tests/unistr/test-u16-strmblen.c +++ b/tests/unistr/test-u16-strmblen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strmbtouc.c b/tests/unistr/test-u16-strmbtouc.c index 75d83493..bb7a5ca9 100644 --- a/tests/unistr/test-u16-strmbtouc.c +++ b/tests/unistr/test-u16-strmbtouc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strncat.c b/tests/unistr/test-u16-strncat.c index 6aac125c..9eda6e15 100644 --- a/tests/unistr/test-u16-strncat.c +++ b/tests/unistr/test-u16-strncat.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strncmp.c b/tests/unistr/test-u16-strncmp.c index 9bd95aea..3d03a7a2 100644 --- a/tests/unistr/test-u16-strncmp.c +++ b/tests/unistr/test-u16-strncmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strncpy.c b/tests/unistr/test-u16-strncpy.c index 81fe8697..184c6311 100644 --- a/tests/unistr/test-u16-strncpy.c +++ b/tests/unistr/test-u16-strncpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strnlen.c b/tests/unistr/test-u16-strnlen.c index 86411df4..9258b965 100644 --- a/tests/unistr/test-u16-strnlen.c +++ b/tests/unistr/test-u16-strnlen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strstr.c b/tests/unistr/test-u16-strstr.c index b300986b..bbad6c61 100644 --- a/tests/unistr/test-u16-strstr.c +++ b/tests/unistr/test-u16-strstr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-strtok.c b/tests/unistr/test-u16-strtok.c index 31041b07..e226393d 100644 --- a/tests/unistr/test-u16-strtok.c +++ b/tests/unistr/test-u16-strtok.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-to-u32.c b/tests/unistr/test-u16-to-u32.c index 96217f54..de19d5a6 100644 --- a/tests/unistr/test-u16-to-u32.c +++ b/tests/unistr/test-u16-to-u32.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-to-u8.c b/tests/unistr/test-u16-to-u8.c index f87d543f..acbad8ac 100644 --- a/tests/unistr/test-u16-to-u8.c +++ b/tests/unistr/test-u16-to-u8.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u16-uctomb.c b/tests/unistr/test-u16-uctomb.c index 69256bc1..3408cba3 100644 --- a/tests/unistr/test-u16-uctomb.c +++ b/tests/unistr/test-u16-uctomb.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-check.c b/tests/unistr/test-u32-check.c index 456b7381..9b43b03e 100644 --- a/tests/unistr/test-u32-check.c +++ b/tests/unistr/test-u32-check.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-chr.c b/tests/unistr/test-u32-chr.c index 23bf82f0..7cd3912d 100644 --- a/tests/unistr/test-u32-chr.c +++ b/tests/unistr/test-u32-chr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-cmp.c b/tests/unistr/test-u32-cmp.c index 891cc124..d76024a2 100644 --- a/tests/unistr/test-u32-cmp.c +++ b/tests/unistr/test-u32-cmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-cmp2.c b/tests/unistr/test-u32-cmp2.c index db63a1d5..b3d249da 100644 --- a/tests/unistr/test-u32-cmp2.c +++ b/tests/unistr/test-u32-cmp2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-cpy-alloc.c b/tests/unistr/test-u32-cpy-alloc.c index 21af0c15..f9123115 100644 --- a/tests/unistr/test-u32-cpy-alloc.c +++ b/tests/unistr/test-u32-cpy-alloc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-cpy.c b/tests/unistr/test-u32-cpy.c index fda511bb..b4f8f90a 100644 --- a/tests/unistr/test-u32-cpy.c +++ b/tests/unistr/test-u32-cpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-mblen.c b/tests/unistr/test-u32-mblen.c index 963de068..6cfb22a2 100644 --- a/tests/unistr/test-u32-mblen.c +++ b/tests/unistr/test-u32-mblen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-mbsnlen.c b/tests/unistr/test-u32-mbsnlen.c index 4492d245..4ef6e316 100644 --- a/tests/unistr/test-u32-mbsnlen.c +++ b/tests/unistr/test-u32-mbsnlen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-mbtouc-unsafe.c b/tests/unistr/test-u32-mbtouc-unsafe.c index babcb016..cfe0c4ca 100644 --- a/tests/unistr/test-u32-mbtouc-unsafe.c +++ b/tests/unistr/test-u32-mbtouc-unsafe.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-mbtouc.c b/tests/unistr/test-u32-mbtouc.c index 6d752e57..b45e61e2 100644 --- a/tests/unistr/test-u32-mbtouc.c +++ b/tests/unistr/test-u32-mbtouc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-mbtouc.h b/tests/unistr/test-u32-mbtouc.h index b76cbb7a..1b226a16 100644 --- a/tests/unistr/test-u32-mbtouc.h +++ b/tests/unistr/test-u32-mbtouc.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-mbtoucr.c b/tests/unistr/test-u32-mbtoucr.c index 06ebfb55..30c3ca29 100644 --- a/tests/unistr/test-u32-mbtoucr.c +++ b/tests/unistr/test-u32-mbtoucr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-move.c b/tests/unistr/test-u32-move.c index 5810e5ad..26b730bd 100644 --- a/tests/unistr/test-u32-move.c +++ b/tests/unistr/test-u32-move.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-next.c b/tests/unistr/test-u32-next.c index cbbb411e..42103347 100644 --- a/tests/unistr/test-u32-next.c +++ b/tests/unistr/test-u32-next.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-prev.c b/tests/unistr/test-u32-prev.c index 8558184c..5dd61f27 100644 --- a/tests/unistr/test-u32-prev.c +++ b/tests/unistr/test-u32-prev.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-set.c b/tests/unistr/test-u32-set.c index b02e9357..6551c9d5 100644 --- a/tests/unistr/test-u32-set.c +++ b/tests/unistr/test-u32-set.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-stpcpy.c b/tests/unistr/test-u32-stpcpy.c index 176b7db2..9bb5adfc 100644 --- a/tests/unistr/test-u32-stpcpy.c +++ b/tests/unistr/test-u32-stpcpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-stpncpy.c b/tests/unistr/test-u32-stpncpy.c index 16db556b..667fb221 100644 --- a/tests/unistr/test-u32-stpncpy.c +++ b/tests/unistr/test-u32-stpncpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strcat.c b/tests/unistr/test-u32-strcat.c index 0ef0f4bb..cf6ed7fe 100644 --- a/tests/unistr/test-u32-strcat.c +++ b/tests/unistr/test-u32-strcat.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strchr.c b/tests/unistr/test-u32-strchr.c index 25426780..1359e1a4 100644 --- a/tests/unistr/test-u32-strchr.c +++ b/tests/unistr/test-u32-strchr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strcmp.c b/tests/unistr/test-u32-strcmp.c index a2b2bbcd..e59bb93e 100644 --- a/tests/unistr/test-u32-strcmp.c +++ b/tests/unistr/test-u32-strcmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strcmp.h b/tests/unistr/test-u32-strcmp.h index 22ab321a..d32b8e04 100644 --- a/tests/unistr/test-u32-strcmp.h +++ b/tests/unistr/test-u32-strcmp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strcoll.c b/tests/unistr/test-u32-strcoll.c index e9b9f2e2..73fa65ae 100644 --- a/tests/unistr/test-u32-strcoll.c +++ b/tests/unistr/test-u32-strcoll.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strcpy.c b/tests/unistr/test-u32-strcpy.c index cb44401d..caf5d4af 100644 --- a/tests/unistr/test-u32-strcpy.c +++ b/tests/unistr/test-u32-strcpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strdup.c b/tests/unistr/test-u32-strdup.c index 4841a1aa..753e50c1 100644 --- a/tests/unistr/test-u32-strdup.c +++ b/tests/unistr/test-u32-strdup.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strlen.c b/tests/unistr/test-u32-strlen.c index 0f780b76..6eeb00c0 100644 --- a/tests/unistr/test-u32-strlen.c +++ b/tests/unistr/test-u32-strlen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strmblen.c b/tests/unistr/test-u32-strmblen.c index 6b848720..e1ced4e1 100644 --- a/tests/unistr/test-u32-strmblen.c +++ b/tests/unistr/test-u32-strmblen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strmbtouc.c b/tests/unistr/test-u32-strmbtouc.c index 67c8a0e7..29f18316 100644 --- a/tests/unistr/test-u32-strmbtouc.c +++ b/tests/unistr/test-u32-strmbtouc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strncat.c b/tests/unistr/test-u32-strncat.c index 210667a9..eac5119c 100644 --- a/tests/unistr/test-u32-strncat.c +++ b/tests/unistr/test-u32-strncat.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strncmp.c b/tests/unistr/test-u32-strncmp.c index 7f48beef..33b8d69e 100644 --- a/tests/unistr/test-u32-strncmp.c +++ b/tests/unistr/test-u32-strncmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strncpy.c b/tests/unistr/test-u32-strncpy.c index c1b71447..d65074dd 100644 --- a/tests/unistr/test-u32-strncpy.c +++ b/tests/unistr/test-u32-strncpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strnlen.c b/tests/unistr/test-u32-strnlen.c index 9948db6c..8138efe6 100644 --- a/tests/unistr/test-u32-strnlen.c +++ b/tests/unistr/test-u32-strnlen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strstr.c b/tests/unistr/test-u32-strstr.c index f017d650..6d29a69d 100644 --- a/tests/unistr/test-u32-strstr.c +++ b/tests/unistr/test-u32-strstr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-strtok.c b/tests/unistr/test-u32-strtok.c index d5134754..442bc1a2 100644 --- a/tests/unistr/test-u32-strtok.c +++ b/tests/unistr/test-u32-strtok.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-to-u16.c b/tests/unistr/test-u32-to-u16.c index de17bc36..ac850089 100644 --- a/tests/unistr/test-u32-to-u16.c +++ b/tests/unistr/test-u32-to-u16.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-to-u8.c b/tests/unistr/test-u32-to-u8.c index 829d9bef..1a02f795 100644 --- a/tests/unistr/test-u32-to-u8.c +++ b/tests/unistr/test-u32-to-u8.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u32-uctomb.c b/tests/unistr/test-u32-uctomb.c index 02129cdf..d3b1bb65 100644 --- a/tests/unistr/test-u32-uctomb.c +++ b/tests/unistr/test-u32-uctomb.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-check.c b/tests/unistr/test-u8-check.c index 0087eb98..8e361cc8 100644 --- a/tests/unistr/test-u8-check.c +++ b/tests/unistr/test-u8-check.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-chr.c b/tests/unistr/test-u8-chr.c index 86e0d028..a0a46d95 100644 --- a/tests/unistr/test-u8-chr.c +++ b/tests/unistr/test-u8-chr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-cmp.c b/tests/unistr/test-u8-cmp.c index 6f18a7e5..528e691e 100644 --- a/tests/unistr/test-u8-cmp.c +++ b/tests/unistr/test-u8-cmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-cmp2.c b/tests/unistr/test-u8-cmp2.c index 482684b3..9a3b99cf 100644 --- a/tests/unistr/test-u8-cmp2.c +++ b/tests/unistr/test-u8-cmp2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-cpy-alloc.c b/tests/unistr/test-u8-cpy-alloc.c index ec0aec40..726148e8 100644 --- a/tests/unistr/test-u8-cpy-alloc.c +++ b/tests/unistr/test-u8-cpy-alloc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-cpy.c b/tests/unistr/test-u8-cpy.c index 821b60ca..58cc5f81 100644 --- a/tests/unistr/test-u8-cpy.c +++ b/tests/unistr/test-u8-cpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-mblen.c b/tests/unistr/test-u8-mblen.c index af41fb42..54dbd4b5 100644 --- a/tests/unistr/test-u8-mblen.c +++ b/tests/unistr/test-u8-mblen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-mbsnlen.c b/tests/unistr/test-u8-mbsnlen.c index 94c10112..7b8f0292 100644 --- a/tests/unistr/test-u8-mbsnlen.c +++ b/tests/unistr/test-u8-mbsnlen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-mbtouc-unsafe.c b/tests/unistr/test-u8-mbtouc-unsafe.c index 382d4c05..1e29f8bc 100644 --- a/tests/unistr/test-u8-mbtouc-unsafe.c +++ b/tests/unistr/test-u8-mbtouc-unsafe.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-mbtouc.c b/tests/unistr/test-u8-mbtouc.c index 6327bb22..39bcaef9 100644 --- a/tests/unistr/test-u8-mbtouc.c +++ b/tests/unistr/test-u8-mbtouc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-mbtouc.h b/tests/unistr/test-u8-mbtouc.h index cce6f7e2..fcfe3df8 100644 --- a/tests/unistr/test-u8-mbtouc.h +++ b/tests/unistr/test-u8-mbtouc.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-mbtoucr.c b/tests/unistr/test-u8-mbtoucr.c index 9b96e000..e6102603 100644 --- a/tests/unistr/test-u8-mbtoucr.c +++ b/tests/unistr/test-u8-mbtoucr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-move.c b/tests/unistr/test-u8-move.c index d926d4b7..baf074ec 100644 --- a/tests/unistr/test-u8-move.c +++ b/tests/unistr/test-u8-move.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-next.c b/tests/unistr/test-u8-next.c index 6222deab..e3e43121 100644 --- a/tests/unistr/test-u8-next.c +++ b/tests/unistr/test-u8-next.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-prev.c b/tests/unistr/test-u8-prev.c index 9d2ea149..8b21ce29 100644 --- a/tests/unistr/test-u8-prev.c +++ b/tests/unistr/test-u8-prev.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-set.c b/tests/unistr/test-u8-set.c index 5aad7c40..223a5127 100644 --- a/tests/unistr/test-u8-set.c +++ b/tests/unistr/test-u8-set.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-stpcpy.c b/tests/unistr/test-u8-stpcpy.c index 371e445e..daeb6ae9 100644 --- a/tests/unistr/test-u8-stpcpy.c +++ b/tests/unistr/test-u8-stpcpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-stpncpy.c b/tests/unistr/test-u8-stpncpy.c index 30a8ff8f..a7987c31 100644 --- a/tests/unistr/test-u8-stpncpy.c +++ b/tests/unistr/test-u8-stpncpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strcat.c b/tests/unistr/test-u8-strcat.c index 2da8de4a..9dde531d 100644 --- a/tests/unistr/test-u8-strcat.c +++ b/tests/unistr/test-u8-strcat.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strchr.c b/tests/unistr/test-u8-strchr.c index 0141fc32..cfd40779 100644 --- a/tests/unistr/test-u8-strchr.c +++ b/tests/unistr/test-u8-strchr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strcmp.c b/tests/unistr/test-u8-strcmp.c index fb71d138..447c6162 100644 --- a/tests/unistr/test-u8-strcmp.c +++ b/tests/unistr/test-u8-strcmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strcmp.h b/tests/unistr/test-u8-strcmp.h index 1c1e4e77..7eaf2887 100644 --- a/tests/unistr/test-u8-strcmp.h +++ b/tests/unistr/test-u8-strcmp.h @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strcoll.c b/tests/unistr/test-u8-strcoll.c index e11494b8..7949e1a6 100644 --- a/tests/unistr/test-u8-strcoll.c +++ b/tests/unistr/test-u8-strcoll.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strcpy.c b/tests/unistr/test-u8-strcpy.c index 535df3f3..dd9b40bf 100644 --- a/tests/unistr/test-u8-strcpy.c +++ b/tests/unistr/test-u8-strcpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strdup.c b/tests/unistr/test-u8-strdup.c index 7ed0465a..84a35053 100644 --- a/tests/unistr/test-u8-strdup.c +++ b/tests/unistr/test-u8-strdup.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strlen.c b/tests/unistr/test-u8-strlen.c index 533ef38a..91a59663 100644 --- a/tests/unistr/test-u8-strlen.c +++ b/tests/unistr/test-u8-strlen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strmblen.c b/tests/unistr/test-u8-strmblen.c index 21041d36..735dd905 100644 --- a/tests/unistr/test-u8-strmblen.c +++ b/tests/unistr/test-u8-strmblen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strmbtouc.c b/tests/unistr/test-u8-strmbtouc.c index f947cc57..74a96c1b 100644 --- a/tests/unistr/test-u8-strmbtouc.c +++ b/tests/unistr/test-u8-strmbtouc.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strncat.c b/tests/unistr/test-u8-strncat.c index b4b320bf..d0c854c4 100644 --- a/tests/unistr/test-u8-strncat.c +++ b/tests/unistr/test-u8-strncat.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strncmp.c b/tests/unistr/test-u8-strncmp.c index a482a4b2..ada859ef 100644 --- a/tests/unistr/test-u8-strncmp.c +++ b/tests/unistr/test-u8-strncmp.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strncpy.c b/tests/unistr/test-u8-strncpy.c index 6557b148..824b85df 100644 --- a/tests/unistr/test-u8-strncpy.c +++ b/tests/unistr/test-u8-strncpy.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strnlen.c b/tests/unistr/test-u8-strnlen.c index 24ecb0fc..1a740d0d 100644 --- a/tests/unistr/test-u8-strnlen.c +++ b/tests/unistr/test-u8-strnlen.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strstr.c b/tests/unistr/test-u8-strstr.c index 50fa87b3..b3610e46 100644 --- a/tests/unistr/test-u8-strstr.c +++ b/tests/unistr/test-u8-strstr.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-strtok.c b/tests/unistr/test-u8-strtok.c index 78ede075..11c364e8 100644 --- a/tests/unistr/test-u8-strtok.c +++ b/tests/unistr/test-u8-strtok.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-to-u16.c b/tests/unistr/test-u8-to-u16.c index 311452d8..377cf38d 100644 --- a/tests/unistr/test-u8-to-u16.c +++ b/tests/unistr/test-u8-to-u16.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-to-u32.c b/tests/unistr/test-u8-to-u32.c index e4b4045a..384c9dc9 100644 --- a/tests/unistr/test-u8-to-u32.c +++ b/tests/unistr/test-u8-to-u32.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/unistr/test-u8-uctomb.c b/tests/unistr/test-u8-uctomb.c index 4e777028..cf37cb9b 100644 --- a/tests/unistr/test-u8-uctomb.c +++ b/tests/unistr/test-u8-uctomb.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwbrk/WordBreakTest.txt b/tests/uniwbrk/WordBreakTest.txt index 1d1435bf..27f64bfe 100644 --- a/tests/uniwbrk/WordBreakTest.txt +++ b/tests/uniwbrk/WordBreakTest.txt @@ -1,11 +1,11 @@ -# WordBreakTest-14.0.0.txt -# Date: 2021-03-08, 06:22:40 GMT -# © 2021 Unicode®, Inc. +# WordBreakTest-15.0.0.txt +# Date: 2022-02-26, 00:39:00 GMT +# © 2022 Unicode®, Inc.  # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see http://www.unicode.org/terms_of_use.html +# For terms of use, see https://www.unicode.org/terms_of_use.html  #  # Unicode Character Database -#   For documentation, see http://www.unicode.org/reports/tr44/ +#   For documentation, see https://www.unicode.org/reports/tr44/  #  # Default Word_Break Test  # diff --git a/tests/uniwbrk/test-u16-wordbreaks.c b/tests/uniwbrk/test-u16-wordbreaks.c index 592c942a..8ee67f6d 100644 --- a/tests/uniwbrk/test-u16-wordbreaks.c +++ b/tests/uniwbrk/test-u16-wordbreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwbrk/test-u32-wordbreaks.c b/tests/uniwbrk/test-u32-wordbreaks.c index cb2ffe16..57c37639 100644 --- a/tests/uniwbrk/test-u32-wordbreaks.c +++ b/tests/uniwbrk/test-u32-wordbreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwbrk/test-u8-wordbreaks.c b/tests/uniwbrk/test-u8-wordbreaks.c index 1e403d6a..74c546b0 100644 --- a/tests/uniwbrk/test-u8-wordbreaks.c +++ b/tests/uniwbrk/test-u8-wordbreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwbrk/test-uc-wordbreaks.c b/tests/uniwbrk/test-uc-wordbreaks.c index dacb7ddd..3bf1ff58 100644 --- a/tests/uniwbrk/test-uc-wordbreaks.c +++ b/tests/uniwbrk/test-uc-wordbreaks.c @@ -3,7 +3,7 @@     This program is free software: you can redistribute it and/or modify it     under the terms of the GNU Lesser General Public License as published -   by the Free Software Foundation; either version 3 of the License, or +   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, diff --git a/tests/uniwbrk/test-ulc-wordbreaks.c b/tests/uniwbrk/test-ulc-wordbreaks.c index 7b4d6176..6f3203fe 100644 --- a/tests/uniwbrk/test-ulc-wordbreaks.c +++ b/tests/uniwbrk/test-ulc-wordbreaks.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwbrk/test-ulc-wordbreaks.sh b/tests/uniwbrk/test-ulc-wordbreaks.sh index d7e067e6..224a90f0 100755 --- a/tests/uniwbrk/test-ulc-wordbreaks.sh +++ b/tests/uniwbrk/test-ulc-wordbreaks.sh @@ -1,7 +1,7 @@  #!/bin/sh  # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}"  if test $LOCALE_FR = none; then    if test -f /usr/bin/localedef; then      echo "Skipping test: no traditional french locale is installed" diff --git a/tests/uniwidth/test-u16-strwidth.c b/tests/uniwidth/test-u16-strwidth.c index 8fcb1327..a41d47c0 100644 --- a/tests/uniwidth/test-u16-strwidth.c +++ b/tests/uniwidth/test-u16-strwidth.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwidth/test-u16-width.c b/tests/uniwidth/test-u16-width.c index 1ab82ca3..c8dc1ad9 100644 --- a/tests/uniwidth/test-u16-width.c +++ b/tests/uniwidth/test-u16-width.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwidth/test-u32-strwidth.c b/tests/uniwidth/test-u32-strwidth.c index 7bbf9f2c..6e627a4b 100644 --- a/tests/uniwidth/test-u32-strwidth.c +++ b/tests/uniwidth/test-u32-strwidth.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwidth/test-u32-width.c b/tests/uniwidth/test-u32-width.c index b823829e..4c92c852 100644 --- a/tests/uniwidth/test-u32-width.c +++ b/tests/uniwidth/test-u32-width.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwidth/test-u8-strwidth.c b/tests/uniwidth/test-u8-strwidth.c index cc3e7ea3..90fa4369 100644 --- a/tests/uniwidth/test-u8-strwidth.c +++ b/tests/uniwidth/test-u8-strwidth.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwidth/test-u8-width.c b/tests/uniwidth/test-u8-width.c index 0570b995..eb56bc00 100644 --- a/tests/uniwidth/test-u8-width.c +++ b/tests/uniwidth/test-u8-width.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwidth/test-uc_width.c b/tests/uniwidth/test-uc_width.c index 4983ada2..86389b26 100644 --- a/tests/uniwidth/test-uc_width.c +++ b/tests/uniwidth/test-uc_width.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwidth/test-uc_width2.c b/tests/uniwidth/test-uc_width2.c index af744b1c..d088cf39 100644 --- a/tests/uniwidth/test-uc_width2.c +++ b/tests/uniwidth/test-uc_width2.c @@ -3,7 +3,7 @@     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 +   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, diff --git a/tests/uniwidth/test-uc_width2.sh b/tests/uniwidth/test-uc_width2.sh index c4263447..2833aef1 100755 --- a/tests/uniwidth/test-uc_width2.sh +++ b/tests/uniwidth/test-uc_width2.sh @@ -200,8 +200,8 @@ cat > uc_width.ok <<\EOF  0EB2..0EB3	A  0EB4..0EBC	0  0EBD..0EC7	A -0EC8..0ECD	0 -0ECE..0F17	A +0EC8..0ECE	0 +0ECF..0F17	A  0F18..0F19	0  0F1A..0F34	A  0F35		0 @@ -560,7 +560,9 @@ FFFC..101FC	1  10D24..10D27	0  10D28..10EAA	1  10EAB..10EAC	0 -10EAD..10F45	1 +10EAD..10EFC	1 +10EFD..10EFF	0 +10F00..10F45	1  10F46..10F50	0  10F51..10F81	1  10F82..10F85	0 @@ -608,7 +610,9 @@ FFFC..101FC	1  11236..11237	0  11238..1123D	1  1123E		0 -1123F..112DE	1 +1123F..11240	1 +11241		0 +11242..112DE	1  112DF		0  112E0..112E2	1  112E3..112EA	0 @@ -730,9 +734,19 @@ FFFC..101FC	1  11D97		0  11D98..11EF2	1  11EF3..11EF4	0 -11EF5..1342F	1 -13430..13438	0 -13439..16AEF	1 +11EF5..11EFF	1 +11F00..11F01	0 +11F02..11F35	1 +11F36..11F3A	0 +11F3B..11F3F	1 +11F40		0 +11F41		1 +11F42		0 +11F43..1342F	1 +13430..13440	0 +13441..13446	1 +13447..13455	0 +13456..16AEF	1  16AF0..16AF4	0  16AF5..16B2F	1  16B30..16B36	0 @@ -805,13 +819,17 @@ FFFC..101FC	1  1E023..1E024	0  1E025		1  1E026..1E02A	0 -1E02B..1E12F	1 +1E02B..1E08E	1 +1E08F		0 +1E090..1E12F	1  1E130..1E136	0  1E137..1E2AD	1  1E2AE		0  1E2AF..1E2EB	1  1E2EC..1E2EF	0 -1E2F0..1E8CF	1 +1E2F0..1E4EB	1 +1E4EC..1E4EF	0 +1E4F0..1E8CF	1  1E8D0..1E8D6	0  1E8D7..1E943	1  1E944..1E94A	0 @@ -912,7 +930,7 @@ E0100..E01EF	0  E01F0..10FFFF	1  EOF -: ${DIFF=diff} +: "${DIFF=diff}"  ${DIFF} uc_width.ok uc_width.out  result=$? diff --git a/tests/verify.h b/tests/verify.h new file mode 100644 index 00000000..99af8029 --- /dev/null +++ b/tests/verify.h @@ -0,0 +1,340 @@ +/* Compile-time assert-like macros. + +   Copyright (C) 2005-2006, 2009-2022 Free Software Foundation, Inc. + +   This file is free software: you can redistribute it and/or modify +   it under the terms of the GNU Lesser General Public License as +   published by the Free Software Foundation; either version 2.1 of the +   License, or (at your option) any later version. + +   This file 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 Lesser General Public License for more details. + +   You should have received a copy of the GNU Lesser General Public License +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ + +/* Written by Paul Eggert, Bruno Haible, and Jim Meyering.  */ + +#ifndef _GL_VERIFY_H +#define _GL_VERIFY_H + + +/* Define _GL_HAVE__STATIC_ASSERT to 1 if _Static_assert (R, DIAGNOSTIC) +   works as per C11.  This is supported by GCC 4.6.0+ and by clang 4+. + +   Define _GL_HAVE__STATIC_ASSERT1 to 1 if _Static_assert (R) works as +   per C23.  This is supported by GCC 9.1+. + +   Support compilers claiming conformance to the relevant standard, +   and also support GCC when not pedantic.  If we were willing to slow +   'configure' down we could also use it with other compilers, but +   since this affects only the quality of diagnostics, why bother?  */ +#ifndef __cplusplus +# if (201112 <= __STDC_VERSION__ \ +      || (!defined __STRICT_ANSI__ \ +          && (4 < __GNUC__ + (6 <= __GNUC_MINOR__) || 5 <= __clang_major__))) +#  define _GL_HAVE__STATIC_ASSERT 1 +# endif +# if (202000 <= __STDC_VERSION__ \ +      || (!defined __STRICT_ANSI__ && 9 <= __GNUC__)) +#  define _GL_HAVE__STATIC_ASSERT1 1 +# endif +#endif + +/* FreeBSD 9.1 <sys/cdefs.h>, included by <stddef.h> and lots of other +   system headers, defines a conflicting _Static_assert that is no +   better than ours; override it.  */ +#ifndef _GL_HAVE__STATIC_ASSERT +# include <stddef.h> +# undef _Static_assert +#endif + +/* Each of these macros verifies that its argument R is nonzero.  To +   be portable, R should be an integer constant expression.  Unlike +   assert (R), there is no run-time overhead. + +   If _Static_assert works, verify (R) uses it directly.  Similarly, +   _GL_VERIFY_TRUE works by packaging a _Static_assert inside a struct +   that is an operand of sizeof. + +   The code below uses several ideas for C++ compilers, and for C +   compilers that do not support _Static_assert: + +   * The first step is ((R) ? 1 : -1).  Given an expression R, of +     integral or boolean or floating-point type, this yields an +     expression of integral type, whose value is later verified to be +     constant and nonnegative. + +   * Next this expression W is wrapped in a type +     struct _gl_verify_type { +       unsigned int _gl_verify_error_if_negative: W; +     }. +     If W is negative, this yields a compile-time error.  No compiler can +     deal with a bit-field of negative size. + +     One might think that an array size check would have the same +     effect, that is, that the type struct { unsigned int dummy[W]; } +     would work as well.  However, inside a function, some compilers +     (such as C++ compilers and GNU C) allow local parameters and +     variables inside array size expressions.  With these compilers, +     an array size check would not properly diagnose this misuse of +     the verify macro: + +       void function (int n) { verify (n < 0); } + +   * For the verify macro, the struct _gl_verify_type will need to +     somehow be embedded into a declaration.  To be portable, this +     declaration must declare an object, a constant, a function, or a +     typedef name.  If the declared entity uses the type directly, +     such as in + +       struct dummy {...}; +       typedef struct {...} dummy; +       extern struct {...} *dummy; +       extern void dummy (struct {...} *); +       extern struct {...} *dummy (void); + +     two uses of the verify macro would yield colliding declarations +     if the entity names are not disambiguated.  A workaround is to +     attach the current line number to the entity name: + +       #define _GL_CONCAT0(x, y) x##y +       #define _GL_CONCAT(x, y) _GL_CONCAT0 (x, y) +       extern struct {...} * _GL_CONCAT (dummy, __LINE__); + +     But this has the problem that two invocations of verify from +     within the same macro would collide, since the __LINE__ value +     would be the same for both invocations.  (The GCC __COUNTER__ +     macro solves this problem, but is not portable.) + +     A solution is to use the sizeof operator.  It yields a number, +     getting rid of the identity of the type.  Declarations like + +       extern int dummy [sizeof (struct {...})]; +       extern void dummy (int [sizeof (struct {...})]); +       extern int (*dummy (void)) [sizeof (struct {...})]; + +     can be repeated. + +   * Should the implementation use a named struct or an unnamed struct? +     Which of the following alternatives can be used? + +       extern int dummy [sizeof (struct {...})]; +       extern int dummy [sizeof (struct _gl_verify_type {...})]; +       extern void dummy (int [sizeof (struct {...})]); +       extern void dummy (int [sizeof (struct _gl_verify_type {...})]); +       extern int (*dummy (void)) [sizeof (struct {...})]; +       extern int (*dummy (void)) [sizeof (struct _gl_verify_type {...})]; + +     In the second and sixth case, the struct type is exported to the +     outer scope; two such declarations therefore collide.  GCC warns +     about the first, third, and fourth cases.  So the only remaining +     possibility is the fifth case: + +       extern int (*dummy (void)) [sizeof (struct {...})]; + +   * GCC warns about duplicate declarations of the dummy function if +     -Wredundant-decls is used.  GCC 4.3 and later have a builtin +     __COUNTER__ macro that can let us generate unique identifiers for +     each dummy function, to suppress this warning. + +   * This implementation exploits the fact that older versions of GCC, +     which do not support _Static_assert, also do not warn about the +     last declaration mentioned above. + +   * GCC warns if -Wnested-externs is enabled and 'verify' is used +     within a function body; but inside a function, you can always +     arrange to use verify_expr instead. + +   * In C++, any struct definition inside sizeof is invalid. +     Use a template type to work around the problem.  */ + +/* Concatenate two preprocessor tokens.  */ +#define _GL_CONCAT(x, y) _GL_CONCAT0 (x, y) +#define _GL_CONCAT0(x, y) x##y + +/* _GL_COUNTER is an integer, preferably one that changes each time we +   use it.  Use __COUNTER__ if it works, falling back on __LINE__ +   otherwise.  __LINE__ isn't perfect, but it's better than a +   constant.  */ +#if defined __COUNTER__ && __COUNTER__ != __COUNTER__ +# define _GL_COUNTER __COUNTER__ +#else +# define _GL_COUNTER __LINE__ +#endif + +/* Generate a symbol with the given prefix, making it unique if +   possible.  */ +#define _GL_GENSYM(prefix) _GL_CONCAT (prefix, _GL_COUNTER) + +/* Verify requirement R at compile-time, as an integer constant expression +   that returns 1.  If R is false, fail at compile-time, preferably +   with a diagnostic that includes the string-literal DIAGNOSTIC.  */ + +#define _GL_VERIFY_TRUE(R, DIAGNOSTIC) \ +   (!!sizeof (_GL_VERIFY_TYPE (R, DIAGNOSTIC))) + +#ifdef __cplusplus +# if !GNULIB_defined_struct__gl_verify_type +template <int w> +  struct _gl_verify_type { +    unsigned int _gl_verify_error_if_negative: w; +  }; +#  define GNULIB_defined_struct__gl_verify_type 1 +# endif +# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \ +    _gl_verify_type<(R) ? 1 : -1> +#elif defined _GL_HAVE__STATIC_ASSERT +# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \ +    struct {                                   \ +      _Static_assert (R, DIAGNOSTIC);          \ +      int _gl_dummy;                          \ +    } +#else +# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \ +    struct { unsigned int _gl_verify_error_if_negative: (R) ? 1 : -1; } +#endif + +/* Verify requirement R at compile-time, as a declaration without a +   trailing ';'.  If R is false, fail at compile-time. + +   This macro requires three or more arguments but uses at most the first +   two, so that the _Static_assert macro optionally defined below supports +   both the C11 two-argument syntax and the C23 one-argument syntax. + +   Unfortunately, unlike C11, this implementation must appear as an +   ordinary declaration, and cannot appear inside struct { ... }.  */ + +#if 202311 <= __STDC_VERSION__ || 200410 <= __cpp_static_assert +# define _GL_VERIFY(R, DIAGNOSTIC, ...) static_assert (R, DIAGNOSTIC) +#elif defined _GL_HAVE__STATIC_ASSERT +# define _GL_VERIFY(R, DIAGNOSTIC, ...) _Static_assert (R, DIAGNOSTIC) +#else +# define _GL_VERIFY(R, DIAGNOSTIC, ...)                                \ +    extern int (*_GL_GENSYM (_gl_verify_function) (void))	       \ +      [_GL_VERIFY_TRUE (R, DIAGNOSTIC)] +# if 4 < __GNUC__ + (6 <= __GNUC_MINOR__) +#  pragma GCC diagnostic ignored "-Wnested-externs" +# endif +#endif + +/* _GL_STATIC_ASSERT_H is defined if this code is copied into assert.h.  */ +#ifdef _GL_STATIC_ASSERT_H +# if !defined _GL_HAVE__STATIC_ASSERT1 && !defined _Static_assert +#  define _Static_assert(R, ...) \ +     _GL_VERIFY ((R), "static assertion failed", -) +# endif +# if (!defined static_assert \ +      && __STDC_VERSION__ < 202311 \ +      && (!defined __cplusplus \ +          || (__cpp_static_assert < 201411 \ +              && __GNUG__ < 6 && __clang_major__ < 6))) +#  if defined __cplusplus && _MSC_VER >= 1900 && !defined __clang__ +/* MSVC 14 in C++ mode supports the two-arguments static_assert but not +   the one-argument static_assert, and it does not support _Static_assert. +   We have to play preprocessor tricks to distinguish the two cases. +   Since the MSVC preprocessor is not ISO C compliant (cf. +   <https://stackoverflow.com/questions/5134523/>), the solution is specific +   to MSVC.  */ +#   define _GL_EXPAND(x) x +#   define _GL_SA1(a1) static_assert ((a1), "static assertion failed") +#   define _GL_SA2 static_assert +#   define _GL_SA3 static_assert +#   define _GL_SA_PICK(x1,x2,x3,x4,...) x4 +#   define static_assert(...) _GL_EXPAND(_GL_SA_PICK(__VA_ARGS__,_GL_SA3,_GL_SA2,_GL_SA1)) (__VA_ARGS__) +#  else +#   define static_assert _Static_assert /* C11 requires this #define. */ +#  endif +# endif +#endif + +/* @assert.h omit start@  */ + +#if 3 < __GNUC__ + (3 < __GNUC_MINOR__ + (4 <= __GNUC_PATCHLEVEL__)) +# define _GL_HAS_BUILTIN_TRAP 1 +#elif defined __has_builtin +# define _GL_HAS_BUILTIN_TRAP __has_builtin (__builtin_trap) +#else +# define _GL_HAS_BUILTIN_TRAP 0 +#endif + +#if 4 < __GNUC__ + (5 <= __GNUC_MINOR__) +# define _GL_HAS_BUILTIN_UNREACHABLE 1 +#elif defined __has_builtin +# define _GL_HAS_BUILTIN_UNREACHABLE __has_builtin (__builtin_unreachable) +#else +# define _GL_HAS_BUILTIN_UNREACHABLE 0 +#endif + +/* Each of these macros verifies that its argument R is nonzero.  To +   be portable, R should be an integer constant expression.  Unlike +   assert (R), there is no run-time overhead. + +   There are two macros, since no single macro can be used in all +   contexts in C.  verify_expr (R, E) is for scalar contexts, including +   integer constant expression contexts.  verify (R) is for declaration +   contexts, e.g., the top level.  */ + +/* Verify requirement R at compile-time.  Return the value of the +   expression E.  */ + +#define verify_expr(R, E) \ +   (_GL_VERIFY_TRUE (R, "verify_expr (" #R ", " #E ")") ? (E) : (E)) + +/* Verify requirement R at compile-time, as a declaration without a +   trailing ';'.  verify (R) acts like static_assert (R) except that +   it is portable to C11/C++14 and earlier, it can issue better +   diagnostics, and its name is shorter and may be more convenient.  */ + +#ifdef __PGI +/* PGI barfs if R is long.  */ +# define verify(R) _GL_VERIFY (R, "verify (...)", -) +#else +# define verify(R) _GL_VERIFY (R, "verify (" #R ")", -) +#endif + +/* Assume that R always holds.  Behavior is undefined if R is false, +   fails to evaluate, or has side effects. + +   'assume (R)' is a directive from the programmer telling the +   compiler that R is true so the compiler needn't generate code to +   test R.  This is why 'assume' is in verify.h: it's related to +   static checking (in this case, static checking done by the +   programmer), not dynamic checking. + +   'assume (R)' can affect compilation of all the code, not just code +   that happens to be executed after the assume (R) is "executed". +   For example, if the code mistakenly does 'assert (R); assume (R);' +   the compiler is entitled to optimize away the 'assert (R)'. + +   Although assuming R can help a compiler generate better code or +   diagnostics, performance can suffer if R uses hard-to-optimize +   features such as function calls not inlined by the compiler. + +   Avoid Clang's __builtin_assume, as it breaks GNU Emacs master +   as of 2020-08-23T21:09:49Z!eggert@cs.ucla.edu; see +   <https://bugs.gnu.org/43152#71>.  It's not known whether this breakage +   is a Clang bug or an Emacs bug; play it safe for now.  */ + +#if _GL_HAS_BUILTIN_UNREACHABLE +# define assume(R) ((R) ? (void) 0 : __builtin_unreachable ()) +#elif 1200 <= _MSC_VER +# define assume(R) __assume (R) +#elif 202311 <= __STDC_VERSION__ +# include <stddef.h> +# define assume(R) ((R) ? (void) 0 : unreachable ()) +#elif (defined GCC_LINT || defined lint) && _GL_HAS_BUILTIN_TRAP +  /* Doing it this way helps various packages when configured with +     --enable-gcc-warnings, which compiles with -Dlint.  It's nicer +     if 'assume' silences warnings with GCC 3.4 through GCC 4.4.7 (2012).  */ +# define assume(R) ((R) ? (void) 0 : __builtin_trap ()) +#else +  /* Some older tools grok NOTREACHED, e.g., Oracle Studio 12.6 (2017).  */ +# define assume(R) ((R) ? (void) 0 : /*NOTREACHED*/ (void) 0) +#endif + +/* @assert.h omit end@  */ + +#endif diff --git a/tests/wctob.c b/tests/wctob.c index 1b336c07..806d0fca 100644 --- a/tests/wctob.c +++ b/tests/wctob.c @@ -4,7 +4,7 @@     This file is free software: you can redistribute it and/or modify     it under the terms of the GNU Lesser General Public License as -   published by the Free Software Foundation; either version 3 of the +   published by the Free Software Foundation, either version 3 of the     License, or (at your option) any later version.     This file is distributed in the hope that it will be useful, diff --git a/tests/xalloc-die.c b/tests/xalloc-die.c index 4f878b32..5b947f10 100644 --- a/tests/xalloc-die.c +++ b/tests/xalloc-die.c @@ -5,7 +5,7 @@     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 +   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, diff --git a/tests/xalloc.h b/tests/xalloc.h index d189efa6..01a9eec8 100644 --- a/tests/xalloc.h +++ b/tests/xalloc.h @@ -4,7 +4,7 @@     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 +   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, @@ -20,11 +20,9 @@  #include <stddef.h>  #include <stdlib.h> -#include <stdint.h>  #if GNULIB_XALLOC  # include "idx.h" -# include "intprops.h"  #endif  #ifndef _GL_INLINE_HEADER_BEGIN diff --git a/tests/xmalloc.c b/tests/xmalloc.c index 7df74df5..84cdf1f2 100644 --- a/tests/xmalloc.c +++ b/tests/xmalloc.c @@ -4,7 +4,7 @@     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 +   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, @@ -22,10 +22,11 @@  #include "xalloc.h"  #include "ialloc.h" -#include "intprops.h"  #include "minmax.h" +#include <stdckdint.h>  #include <stdlib.h> +#include <stdint.h>  #include <string.h>  static void * _GL_ATTRIBUTE_PURE @@ -195,7 +196,7 @@ x2nrealloc (void *p, size_t *pn, size_t s)    else      {        /* Set N = floor (1.5 * N) + 1 to make progress even if N == 0.  */ -      if (INT_ADD_WRAPV (n, (n >> 1) + 1, &n)) +      if (ckd_add (&n, n, (n >> 1) + 1))          xalloc_die ();      } @@ -236,7 +237,7 @@ xpalloc (void *pa, idx_t *pn, idx_t n_incr_min, ptrdiff_t n_max, idx_t s)       N_MAX, and what the C language can represent safely.  */    idx_t n; -  if (INT_ADD_WRAPV (n0, n0 >> 1, &n)) +  if (ckd_add (&n, n0, n0 >> 1))      n = IDX_MAX;    if (0 <= n_max && n_max < n)      n = n_max; @@ -251,7 +252,7 @@ xpalloc (void *pa, idx_t *pn, idx_t n_incr_min, ptrdiff_t n_max, idx_t s)    size_t nbytes;  #endif    idx_t adjusted_nbytes -    = (INT_MULTIPLY_WRAPV (n, s, &nbytes) +    = (ckd_mul (&nbytes, n, s)         ? MIN (IDX_MAX, SIZE_MAX)         : nbytes < DEFAULT_MXFAST ? DEFAULT_MXFAST : 0);    if (adjusted_nbytes) @@ -263,9 +264,9 @@ xpalloc (void *pa, idx_t *pn, idx_t n_incr_min, ptrdiff_t n_max, idx_t s)    if (! pa)      *pn = 0;    if (n - n0 < n_incr_min -      && (INT_ADD_WRAPV (n0, n_incr_min, &n) +      && (ckd_add (&n, n0, n_incr_min)            || (0 <= n_max && n_max < n) -          || INT_MULTIPLY_WRAPV (n, s, &nbytes))) +          || ckd_mul (&nbytes, n, s)))      xalloc_die ();    pa = xrealloc (pa, nbytes);    *pn = n; diff --git a/tests/zerosize-ptr.h b/tests/zerosize-ptr.h index af4ca713..990b51cf 100644 --- a/tests/zerosize-ptr.h +++ b/tests/zerosize-ptr.h @@ -3,7 +3,7 @@     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 +   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,  | 
