remainder: Support for MSVC.
[gnulib.git] / ChangeLog
index f0e6b31..55bb838 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,411 @@
+2012-02-25  Bruno Haible  <bruno@clisp.org>
+
+       remainder: Support for MSVC.
+       * lib/math.in.h (remainder): New declaration.
+       * lib/remainder.c: New file.
+       * m4/remainder.m4: New file.
+       * modules/remainder (Files): Add lib/remainder.c, m4/remainder.m4.
+       (Depends-on): Add math, round, fma.
+       (configure.ac): Use results of gl_FUNC_REMAINDER.
+       * m4/math_h.m4 (gl_MATH_H): Test whether remainder is declared.
+       (gl_MATH_H_DEFAULTS): Initialize GNULIB_REMAINDER, HAVE_REMAINDER,
+       HAVE_DECL_REMAINDER.
+       * modules/math (Makefile.am): Substitute GNULIB_REMAINDER,
+       HAVE_REMAINDER, HAVE_DECL_REMAINDER.
+       * tests/test-math-c++.cc: Check the declaration of remainder.
+       * doc/posix-functions/remainder.texi: Mention that the MSVC and IRIX 5
+       problems are fixed.
+
+2012-02-25  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'fmodl'.
+       * modules/fmodl-tests: New file.
+       * tests/test-fmodl.c: New file.
+       * tests/test-math-c++.cc: Check the declaration of fmodl.
+
+       New module 'fmodl'.
+       * lib/math.in.h (fmodl): New declaration.
+       * lib/fmodl.c: New file.
+       * m4/fmodl.m4: New file.
+       * m4/math_h.m4 (gl_MATH_H): Test whether fmodl is declared.
+       (gl_MATH_H_DEFAULTS): Initialize GNULIB_FMODL, HAVE_FMODL,
+       REPLACE_FMODL.
+       * modules/math (Makefile.am): Substitute GNULIB_FMODL, HAVE_FMODL,
+       REPLACE_FMODL.
+       * modules/fmodl: New file.
+       * doc/posix-functions/fmodl.texi: Mention the new module.
+
+2012-02-25  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'modfl'.
+       * modules/modfl-tests: New file.
+       * tests/test-modfl.c: New file.
+       * tests/test-math-c++.cc: Check the declaration of modfl.
+
+       New module 'modfl'.
+       * lib/math.in.h (modfl): New declaration.
+       * lib/modfl.c: New file.
+       * m4/modfl.m4: New file.
+       * m4/math_h.m4 (gl_MATH_H): Test whether modfl is declared.
+       (gl_MATH_H_DEFAULTS): Initialize GNULIB_MODFL, HAVE_MODFL.
+       * modules/math (Makefile.am): Substitute GNULIB_MODFL, HAVE_MODFL.
+       * modules/modfl: New file.
+       * doc/posix-functions/modfl.texi: Mention the new module.
+
+2012-02-25  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'fabsl'.
+       * modules/fabsl-tests: New file.
+       * tests/test-fabsl.c: New file.
+       * tests/test-math-c++.cc: Check the declaration of fabsl.
+
+       New module 'fabsl'.
+       * lib/math.in.h (fabsl): New declaration.
+       * lib/fabsl.c: New file.
+       * m4/fabsl.m4: New file.
+       * m4/math_h.m4 (gl_MATH_H): Test whether fabsl is declared.
+       (gl_MATH_H_DEFAULTS): Initialize GNULIB_FABSL, HAVE_FABSL,
+       REPLACE_FABSL.
+       * modules/math (Makefile.am): Substitute GNULIB_FABSL, HAVE_FABSL,
+       REPLACE_FABSL.
+       * modules/fabsl: New file.
+       * doc/posix-functions/fabsl.texi: Mention the new module.
+
+2012-02-25  Bruno Haible  <bruno@clisp.org>
+
+       fabs tests: More tests.
+       * tests/test-fabs.c: Include <string.h>, minus-zero.h.
+       (zero): New variable.
+       (main): Add tests for signed zero.
+       * modules/fabs-tests (Files): Add tests/minus-zero.h.
+
+       fabsf tests: More tests.
+       * tests/test-fabsf.c: Include <string.h>, minus-zero.h.
+       (zero): New variable.
+       (main): Add tests for signed zero.
+       * modules/fabsf-tests (Files): Add tests/minus-zero.h.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       atanl: Provide function definition on MSVC.
+       * m4/atanl.m4 (gl_FUNC_ATANL): Test also whether atanl can be used as a
+       function pointer.
+       * lib/math.in.h (atanl): Undefine if it does not exist as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       acosl: Provide function definition on MSVC.
+       * m4/acosl.m4 (gl_FUNC_ACOSL): Test also whether acosl can be used as a
+       function pointer.
+       * lib/math.in.h (acosl): Undefine if it does not exist as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       asinl: Provide function definition on MSVC.
+       * m4/asinl.m4 (gl_FUNC_ASINL): Test also whether asinl can be used as a
+       function pointer.
+       * lib/math.in.h (asinl): Undefine if it does not exist as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       tanl: Provide function definition on MSVC.
+       * m4/tanl.m4 (gl_FUNC_TANL): Test also whether tanl can be used as a
+       function pointer.
+       * lib/math.in.h (tanl): Undefine if it does not exist as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       cosl: Provide function definition on MSVC.
+       * m4/cosl.m4 (gl_FUNC_COSL): Test also whether cosl can be used as a
+       function pointer.
+       * lib/math.in.h (cosl): Undefine if it does not exist as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       sinl: Provide function definition on MSVC.
+       * m4/sinl.m4 (gl_FUNC_SINL): Test also whether sinl can be used as a
+       function pointer.
+       * lib/math.in.h (sinl): Undefine if it does not exist as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       logl: Provide function definition on MSVC.
+       * m4/logl.m4 (gl_FUNC_LOGL): Test also whether logl can be used as a
+       function pointer.
+       * lib/math.in.h (logl): Undefine if it does not exist as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       expl: Provide function definition on MSVC.
+       * m4/expl.m4 (gl_FUNC_EXPL): Test also whether expl can be used as a
+       function pointer.
+       * lib/math.in.h (expl): Undefine if it does not exist as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       sqrtl: Provide function definition on MSVC.
+       * m4/sqrtl.m4 (gl_FUNC_SQRTL): Test also whether sqrtl can be used as
+       a function pointer.
+       * lib/math.in.h (sqrtl): Undefine if it does not exist as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       ceill: Provide function definition on MSVC.
+       * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Test also whether ceill can be
+       used as a function pointer.
+       * lib/math.in.h (ceill): Undefine if it is not declared as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       floorl: Provide function definition on MSVC.
+       * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Test also whether floorl can be
+       used as a function pointer.
+       * lib/math.in.h (floorl): Undefine if it is not declared as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       ceilf: Provide function definition on MSVC.
+       * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Test also whether ceilf can be
+       used as a function pointer.
+       * lib/math.in.h (ceilf): Undefine if it is not declared as a function.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       floorf: Provide function definition on MSVC.
+       * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Test also whether floorf can be
+       used as a function pointer.
+       * lib/math.in.h (floorf): Undefine if it is not declared as a function.
+
+2012-02-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       stdnoreturn: new module
+       This implements a replacement for C11's <stdnoreturn.h>.
+       * doc/gnulib.texi (Header File Substitutes): Add stdnoreturn.
+       * doc/posix-headers/stdnoreturn.texi, lib/stdnoreturn.in.h:
+       * m4/stdnoreturn.m4, modules/stdnoreturn, modules/stdnoreturn-tests:
+       * tests/test-stdnoreturn.c: New files.
+
+2012-02-24  Stanislav Brabec  <sbrabec@suse.cz>  (tiny change)
+
+       regex: fix false multibyte matches in some regular expressions
+       See <http://sourceware.org/bugzilla/show_bug.cgi?id=13637>
+       and <http://sourceware.org/ml/libc-alpha/2012-02/msg00521.html>.
+       * lib/regex_internal.c (re_string_skip_chars):
+       Fix miscomputation of remain_len that may cause incomplete
+       multi-byte character and false match.
+
+2012-02-24  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: tell sc_prohibit_strcmp to ding "0 == strcmp (...)", too
+       * top/maint.mk (sc_prohibit_strcmp): Also prohibit uses of strcmp
+       uses with "==" *before* the call, e.g., 0 == strcmp (...)
+       Remove now-unnecessary str''cmp obfuscation.
+       Suggested by Akim Demaille.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       streq: Rename macro.
+       * lib/streq.h (STREQ_OPT): Renamed from STREQ.
+       * NEWS: Mention the change.
+       * lib/mbrtowc.c (mbrtowc): Update.
+       * lib/uniwidth/cjk.h (is_cjk_encoding): Update.
+       * lib/wcwidth.c (wcwidth): Update.
+       Suggested by Akim Demaille and Jim Meyering.
+
+2012-02-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       regex: fix typo in definition of MIN
+       * lib/regex_internal.h (MIN): Fix typo.  Problem reported by Thomas
+       Schwinge in <http://sourceware.org/bugzilla/show_bug.cgi?id=11638#c4>.
+
+2012-02-19  Paul Eggert  <eggert@cs.ucla.edu>
+           Bruno Haible  <bruno@clisp.org>
+
+       acl: Don't use ACL_CNT and similar ops, since they are unreliable.
+       * lib/file-has-acl.c (file_has_acl) [HP-UX, NonStop Kernel]: Read the
+       entries into a stack-allocated buffer directly.
+       * lib/copy-acl.c (qcopy_acl) [HP-UX, NonStop Kernel]: Likewise.
+
+2012-02-19  Paul Eggert  <eggert@cs.ucla.edu>
+           Bruno Haible  <bruno@clisp.org>
+
+       acl: Don't use GETACLCNT and similar ops, since they are unreliable.
+
+        - There were several instances of this pattern:
+
+            for (;;) {
+              n = acl (f, GETACLCNT, 0, NULL);
+              [ allocate an array A of size N ]
+              if (acl (f, GETACL, n, a) == n)
+                break;
+            }
+
+          This loop might never terminate if some other process is constantly
+          manipulating the file's ACL.  The loop should be rewritten to
+          terminate.
+
+        - The acl (... GETACLNT ...) call is merely an optimization; its value
+          is merely a hint as to how big to make the array.  A better
+          optimization is to avoid the acl (... GETACLNT ...)  call entirely,
+          and just guess a reasonably-big size, growing the size and trying
+          again if it's not large enough.  This guarantees termination, and
+          saves a system call.
+
+       * lib/acl-internal.h: Include <limits.h>.
+       (MIN, SIZE_MAX): New macros.
+       * lib/file-has-acl.c (file_has_acl) [Solaris]: Read the entries into
+       a stack-allocated buffer, and use malloc if it does not fit. Don't
+       use GETACLCNT.
+       * lib/set-mode-acl.c (qset_acl) [Solaris]: Likewise.
+
+2012-02-19  Bruno Haible  <bruno@clisp.org>
+
+       acl: Fix endless loop on Solaris with vxfs.
+       * lib/file-has-acl.c (file_has_acl) [Solaris]: Treat a failing
+       acl()/facl() call for ACE_GETACL like a failing call for ACE_GETACLCNT.
+       * lib/set-mode-acl.c (qset_acl) [Solaris]: Likewise.
+       * lib/copy-acl.c (qcopy_acl)[Solaris]: Likewise.
+       * tests/test-sameacls.c (main)[Solaris]: Likewise.
+       Reported by Bill Jones in
+       <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10639>, via Paul Eggert.
+
+2012-02-19  Bruno Haible  <bruno@clisp.org>
+
+       acl: Fix copy-acl test failure on Solaris 11 2011-11.
+       * lib/file-has-acl.c (NEW_ACE_WRITEA_DATA): New macro.
+       (acl_ace_nontrivial): Relax the restrictions on access_masks[] so
+       that this function returns 0 in some more cases.
+
+2012-02-19  Bruno Haible  <bruno@clisp.org>
+
+       acl: Update doc references.
+       * doc/acl-resources.txt: Update links to Solaris documentation.
+
+2012-02-19  Bruno Haible  <bruno@clisp.org>
+
+       Fix test failure in many locales on Solaris 11.
+       * tests/test-pipe-filter-gi1.c (main): Don't use range expression in
+       'tr' arguments.
+       * tests/test-pipe-filter-ii1.c (main): Likewise.
+       * build-aux/bootstrap (check_versions): Run 'tr' command with range
+       expressions in the C locale.
+       * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX): Likewise.
+       * m4/host-os.m4 (gl_HOST_OS): Likewise.
+
+2012-02-19  Bruno Haible  <bruno@clisp.org>
+
+       gnulib-tool: Improve usage message.
+       * gnulib-tool (func_usage): Move doc of --help and --version to the
+       section "Operation modes".
+
+2012-02-18  Reuben Thomas  <rrt@sc3d.org>
+
+       README-release: make it easier to execute commands
+       * top/README-release: break commands out on to separate lines.
+
+2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
+
+       GNUmakefile: simplify detection of unconfigured trees
+       * top/GNUmakefile: Use $(wildcard) instead of $(shell) to determine
+       whether the tree make is being run from is already configured or
+       not.  Related simplifications.
+
+2012-02-13  Simon Josefsson  <simon@josefsson.org>
+
+       * gnulib-tool (func_usage): Document --help and --version.
+
+2012-02-11  Jim Meyering  <meyering@redhat.com>
+
+       bootstrap: don't exit 0 upon gnulib-tool failure
+       * build-aux/bootstrap (gnulib_tool): If gnulib-tool fails, exit with
+       its exit status, not 0.
+
+2011-12-19  Reuben Thomas  <rrt@sc3d.org>
+
+       README-release: various improvements
+       * top/README-release: Give a command to push changes for the
+       release.  Add "distcheck" to list of other pre-release checks.
+       Fix instance of "make stable" which should be "make TYPE".
+
+2012-02-09  Paul Eggert  <eggert@cs.ucla.edu>
+
+       maint: replace FSF snail-mail addresses with URLs
+       * config/argz.mk, lib/accept4.c, lib/alignof.h, lib/alloca.in.h:
+       * lib/alphasort.c, lib/arcfour.c, lib/arcfour.h, lib/arctwo.c:
+       * lib/arctwo.h, lib/argz.c, lib/arpa_inet.in.h, lib/asnprintf.c:
+       * lib/asprintf.c, lib/assert.in.h, lib/base32.c, lib/base32.h:
+       * lib/base64.c, lib/base64.h, lib/c-ctype.c, lib/c-ctype.h:
+       * lib/c-strcase.h, lib/c-strcasecmp.c, lib/c-strncasecmp.c:
+       * lib/check-version.c, lib/check-version.h, lib/config.charset:
+       * lib/ctype.in.h, lib/des.c, lib/des.h, lib/dup3.c, lib/errno.in.h:
+       * lib/float+.h, lib/fnmatch.c, lib/fnmatch.in.h, lib/fnmatch_loop.c:
+       * lib/fseeko.c, lib/gai_strerror.c, lib/gc-gnulib.c:
+       * lib/gc-libgcrypt.c, lib/gc-pbkdf2-sha1.c, lib/gc.h:
+       * lib/getaddrinfo.c, lib/getdelim.c, lib/getfilecon.c, lib/getline.c:
+       * lib/getlogin_r.c, lib/getpass.c, lib/getpass.h, lib/gettext.h:
+       * lib/gettimeofday.c, lib/glob.in.h, lib/glthread/cond.c:
+       * lib/glthread/cond.h, lib/glthread/lock.c, lib/glthread/lock.h:
+       * lib/glthread/thread.c, lib/glthread/thread.h:
+       * lib/glthread/threadlib.c, lib/glthread/yield.h, lib/hmac-md5.c:
+       * lib/hmac-sha1.c, lib/hmac.h, lib/iconv.c, lib/iconv.in.h:
+       * lib/iconv_close.c, lib/iconv_open.c, lib/inet_ntop.c, lib/isfinite.c:
+       * lib/isinf.c, lib/iswblank.c, lib/langinfo.in.h, lib/link.c:
+       * lib/localcharset.c, lib/localcharset.h, lib/lseek.c, lib/malloc.c:
+       * lib/malloca.c, lib/malloca.h, lib/md2.c, lib/md2.h, lib/md4.c:
+       * lib/md4.h, lib/md5.c, lib/md5.h, lib/memmem.c, lib/mempcpy.c:
+       * lib/memset.c, lib/memxor.c, lib/memxor.h, lib/minmax.h, lib/mktime.c:
+       * lib/msvc-inval.c, lib/msvc-inval.h, lib/msvc-nothrow.c:
+       * lib/msvc-nothrow.h, lib/netdb.in.h, lib/netinet_in.in.h, lib/nproc.c:
+       * lib/nproc.h, lib/obstack_printf.c, lib/pathmax.h, lib/pipe.c:
+       * lib/pipe2.c, lib/poll.c, lib/poll.in.h, lib/printf-args.c:
+       * lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h:
+       * lib/pselect.c, lib/pthread.in.h, lib/pty-private.h, lib/pty.in.h:
+       * lib/read-file.c, lib/read-file.h, lib/ref-add.sin, lib/ref-del.sin:
+       * lib/regcomp.c, lib/regex.c, lib/regex.h, lib/regex_internal.c:
+       * lib/regex_internal.h, lib/regexec.c, lib/rijndael-alg-fst.c:
+       * lib/rijndael-alg-fst.h, lib/rijndael-api-fst.c:
+       * lib/rijndael-api-fst.h, lib/rint.c, lib/rintf.c, lib/rintl.c:
+       * lib/round.c, lib/roundf.c, lib/roundl.c, lib/scandir.c, lib/select.c:
+       * lib/sha1.c, lib/sha1.h, lib/size_max.h, lib/snprintf.c:
+       * lib/stdalign.in.h, lib/stdarg.in.h, lib/stdbool.in.h:
+       * lib/stddef.in.h, lib/stdint.in.h, lib/stdio.in.h, lib/str-kmp.h:
+       * lib/str-two-way.h, lib/strcasecmp.c, lib/strcasestr.c, lib/strdup.c:
+       * lib/striconv.c, lib/striconv.h, lib/string.in.h, lib/strings.in.h:
+       * lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c, lib/strpbrk.c:
+       * lib/strptime.c, lib/strsep.c, lib/strstr.c, lib/strverscmp.c:
+       * lib/sys_file.in.h, lib/sys_ioctl.in.h, lib/sys_select.in.h:
+       * lib/sys_socket.in.h, lib/sys_stat.in.h, lib/sys_time.in.h:
+       * lib/sys_times.in.h, lib/sys_types.in.h, lib/sys_uio.in.h:
+       * lib/sys_utsname.in.h, lib/sys_wait.in.h, lib/tcgetsid.c:
+       * lib/termios.in.h, lib/time.in.h, lib/time_r.c, lib/timegm.c:
+       * lib/times.c, lib/unictype/3level.h, lib/unictype/3levelbit.h:
+       * lib/unistd.in.h, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c:
+       * lib/vsnprintf.c, lib/waitpid.c, lib/wchar.in.h, lib/wctype.in.h:
+       * lib/xsize.h, tests/test-closein.c, tests/test-des.c:
+       * tests/test-fclose.c, tests/test-fgetc.c, tests/test-filevercmp.c:
+       * tests/test-fputc.c, tests/test-fread.c, tests/test-fwrite.c:
+       * tests/test-gc-arcfour.c, tests/test-gc-arctwo.c, tests/test-gc-des.c:
+       * tests/test-gc-hmac-md5.c, tests/test-gc-hmac-sha1.c:
+       * tests/test-gc-md2.c, tests/test-gc-md4.c, tests/test-gc-md5.c:
+       * tests/test-gc-pbkdf2-sha1.c, tests/test-gc-rijndael.c:
+       * tests/test-gc-sha1.c, tests/test-gc.c, tests/test-getdelim.c:
+       * tests/test-getline.c, tests/test-getndelim2.c, tests/test-md2.c:
+       * tests/test-md4.c, tests/test-parse-datetime.c, tests/test-perror.c:
+       * tests/test-perror2.c, tests/test-pipe.c, tests/test-pipe2.c:
+       * tests/test-poll.c, tests/test-quotearg-simple.c:
+       * tests/test-quotearg.c, tests/test-quotearg.h:
+       * tests/test-round-ieee.c, tests/test-round1.c:
+       * tests/test-roundf-ieee.c, tests/test-roundf1.c:
+       * tests/test-roundl-ieee.c, tests/test-roundl.c:
+       * tests/test-safe-alloc.c, tests/test-sigpipe.c:
+       * tests/test-spawn-pipe-child.c, tests/test-spawn-pipe-main.c:
+       * tests/test-strerror.c, tests/test-strerror_r.c:
+       * tests/test-strsignal.c, tests/test-strverscmp.c:
+       * tests/test-xmemdup0.c:
+       Replace FSF snail mail addresses with URLs, as per GNU coding
+       standards.  See glibc bug
+       <http://sourceware.org/bugzilla/show_bug.cgi?id=13673>.
+
 2011-12-22  Reuben Thomas  <rrt@sc3d.org>
 
        README-release: capitalize a word and split a line