c-stack: Expose false positives when not using libsigsegv.
[gnulib.git] / ChangeLog
index 059e847..0772f2d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,411 @@
+2008-07-16  Eric Blake  <ebb9@byu.net>
+
+       c-stack: Expose false positives when not using libsigsegv.
+       * modules/c-stack-tests (Files): Expand test.
+       * tests/test-c-stack.c (main): Add means to conditionally trigger
+       non-overflow SIGSEGV.
+       * tests/test-c-stack2.sh: New file.
+
+2008-07-14  Bruno Haible  <bruno@clisp.org>
+
+       * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
+       Reported by Eric Blake.
+
+2008-07-14  Sam Steingold  <sds@gnu.org>
+           Bruno Haible  <bruno@clisp.org>
+
+       New module libsigsegv.
+       * modules/libsigsegv: New file.
+       * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
+       modifications.
+       * MODULES.html.sh (Signal handling): New section.
+
+2008-07-14  Bruno Haible  <bruno@clisp.org>
+
+       * modules/unictype/ctype-* (Description): Add the word "function".
+       Improves the resulting doc in MODULES.html.
+
+2008-07-12  Ben Pfaff  <blp@gnu.org>
+
+       Add longlong module.
+       * modules/longlong: New file.
+
+2008-07-12  Bruno Haible  <bruno@clisp.org>
+
+       * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
+       to empty.
+
+2008-07-10  Ben Pfaff  <blp@gnu.org>
+
+       Add isnan module.
+       * doc/posix-functions/isnan.texi: Mention new module.
+       * lib/math.in.h: Define isnan macro if we have decided to replace
+       it.
+       * m4/isnan.m4: New file.
+       * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
+       macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
+       also.
+       (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
+       redundancy.
+       * m4/math_h.m4: Initialize and substitute variables for isnan
+       module.
+       * modules/isnan: New file.
+       * modules/isnan-tests: New file.
+       * modules/math: Add substitutions for new module.
+       * tests/test-isnan.c: New file.
+       * MODULES.html.sh: Mention new module.
+
+2008-07-10  Ben Pfaff  <blp@gnu.org>
+
+       Add isnanf module.
+       * lib/isnanf.m4: New file.
+       * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
+       (gl_HAVE_ISNANF_IN_LIBM): New macro.
+       (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
+       gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
+       * modules/isnanf: New file.
+       * modules/isnanf-tests: New file.
+       * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
+       files.
+       * tests/test-isnanf-nolibm.c: factored most of its contents into
+       new file tests/test-isnanf.h.
+       * tests/test-isnanf.h: New file.
+       * tests/test-isnanf.c: New file.
+       * MODULES.html.sh: Mention new module.
+       * doc/glibc-functions/isnanf.texi: Mention new module.
+
+2008-07-10  Ben Pfaff  <blp@gnu.org>
+
+       Add isnand module.
+       * lib/isnand.h: New file.
+       * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
+       (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
+       gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
+       functionality also.
+       (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
+       gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
+       (gl_HAVE_ISNAND_IN_LIBM): New macro.
+       * modules/isnand: New file.
+       * modules/isnand-tests: New file.
+       * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
+       files.
+       * tests/test-isnand-nolibm.c: factored most of its contents into
+       new file tests/test-isnand.h.
+       * tests/test-isnand.h: New file.
+       * tests/test-isnand.c: New file.
+       * MODULES.html.sh: Mention new module.
+
+2008-07-10  Ben Pfaff  <blp@gnu.org>
+
+       * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
+       * lib/isnand.h: Rename lib/isnand-nolibm.h.
+       * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
+       * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
+       * modules/isnanf-nolibm: Update references to renamed files.
+       * modules/isnand-nolibm: Likewise.
+       * modules/isnanf-nolibm-tests: Likewise.
+       * modules/isnand-nolibm-tests: Likewise.
+       * lib/frexp.c: Likewise.
+       * lib/isfinite.c: Likewise.
+       * lib/signbitd.c: Likewise.
+       * lib/signbitf.c: Likewise.
+       * lib/vasnprintf.c: Likewise.
+       * tests/test-ceilf1.c: Likewise.
+       * tests/test-ceilf2.c: Likewise.
+       * tests/test-floorf1.c: Likewise.
+       * tests/test-floorf2.c: Likewise.
+       * tests/test-frexp.c: Likewise.
+       * tests/test-round1.c: Likewise.
+       * tests/test-round2.c: Likewise.
+       * tests/test-roundf1.c: Likewise.
+       * tests/test-strtod.c: Likewise.
+       * tests/test-trunc1.c: Likewise.
+       * tests/test-trunc2.c: Likewise.
+       * tests/test-truncf1.c: Likewise.
+       * tests/test-truncf2.c: Likewise.
+       * NEWS: Mention the renamed header files.
+
+2008-07-11  Jim Meyering  <meyering@redhat.com>
+
+       vc-list-files: make the last-resort awk code more portable
+       * build-aux/vc-list-files: Don't rely on awk's "sub" command.
+       /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
+       does not support it.
+
+2008-07-10  Eric Blake  <ebb9@byu.net>
+
+       Work with tar's bootstrap.
+       * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
+       where LIBSOURCES_DIR contains .#bootmp but must not be treated as
+       an m4 comment.
+
+2008-07-09  Jim Meyering  <meyering@redhat.com>
+
+       posix-shell.m4: fix typo that made this test malfunction
+       * m4/posix-shell.m4: Remove capitalization in variable name.
+
+2008-07-08  Bruno Haible  <bruno@clisp.org>
+
+       * m4/onceonly.m4: Update comments.
+       Reported by Ben Pfaff <blp@cs.stanford.edu>.
+
+2008-07-04  Jim Meyering  <meyering@redhat.com>
+
+       * users.txt: Add vc-dwim.
+       (bison, coreutils): Use the gitweb URL.
+
+2008-07-03  Jim Meyering  <meyering@redhat.com>
+
+       * users.txt: Add libffcall.  From Sam Steingold.
+
+2008-07-03  Ondřej Vašík  <ovasik@redhat.com>
+
+       getdate.y: do not ignore TZ with relative day, month or year offset
+       * lib/getdate.y (get_date): Move the tz-handling block to follow the
+       relative-date-handling, since otherwise, the latter would clobber the
+       sole output (an updated Start value) of the tz-handling block.
+       * tests/test-getdate.c: Tests for the fix
+
+2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       Recognize 'foo_LIBRARIES += libgnu.a'.
+       * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
+       makefile snippet has already specified an installation location,
+       also using '+='.
+
+2008-07-02  Ondřej Vašík  <ovasik@redhat.com>
+
+       getdate.y: factor out common actions
+       * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
+       Use them in place of open-coded actions.
+
+2008-07-01  Simon Josefsson  <simon@josefsson.org>
+
+       Add self-test for getdate module.
+       * modules/getdate-tests: New file.
+       * tests/test-getdate.c: New file.
+
+2008-06-29  Bruno Haible  <bruno@clisp.org>
+
+       * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
+       .gitignore.
+       Reported by Sylvain Beucler <beuc@beuc.net>.
+
+2008-06-29  Bruno Haible  <bruno@clisp.org>
+
+       * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
+       * m4/gnulib-tool.m4: Update to match current gnulib-tool.
+
+2008-06-29  Bruno Haible  <bruno@clisp.org>
+
+       * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
+       EXTRA_DIST.
+       Reported by Sylvain Beucler <beuc@beuc.net>.
+
+2008-06-26  Jim Meyering  <meyering@redhat.com>
+
+       make several modules depend on the "open" module
+       This provides slightly increased consistency when opening-for-write
+       the name of a non-directory spelled with a trailing slash.
+       * modules/chdir-safer: Likewise.
+       * modules/chown: Likewise.
+       * modules/clean-temp: Likewise.
+       * modules/copy-file: Likewise.
+       * modules/fchdir: Likewise.
+       * modules/fcntl-safer: Likewise.
+       * modules/pipe: Likewise.
+       * modules/utime: Likewise.
+       Prompted by Eric Blake and Bruno Haible.
+
+2008-06-24  Andreas Schwab  <schwab@suse.de>
+
+       * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
+       literals can be used as initializers for global variables.
+
+2008-06-23  Eric Blake  <ebb9@byu.net>
+
+       Make gnulib-cache.m4 easier to diff.
+       * gnulib-tool (func_import): Allow newlines when reading cached
+       gl_MODULES, and generate newlines when creating gnulib-cache.m4.
+
+2008-06-23  Bruno Haible  <bruno@clisp.org>
+
+       * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
+       (gl_PREREQ_SIGPROCMASK): Don't invoke it.
+       * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
+       m4/signalblocking.m4.
+       (gl_PREREQ_SIGACTION): Don't invoke it.
+       * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
+       gl_PREREQ_SIG_HANDLER_H.
+       * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
+       Don't check for sigaction here.
+
+2008-06-23  Bruno Haible  <bruno@clisp.org>
+
+       * lib/fatal-signal.c (fatal_signal_handler): Update comment.
+       (install_handlers): Don't set the SA_RESETHAND flag.
+
+2008-06-23  Bruno Haible  <bruno@clisp.org>
+
+       * m4/sigaction.m4: Comment fixes.
+       * lib/signal.in.h: Likewise.
+
+2008-06-23  Eric Blake  <ebb9@byu.net>
+
+       Fix typo.
+       * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
+
+       Avoid SA_ namespace.
+       * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
+       Reported by Ralf Wildenhues.
+
+       Avoid test failure due to SA_RESTORER.
+       * tests/test-sigaction.c (SA_MASK): New macro.
+       (main): Avoid failing due to extension flags being set.
+       Reported by Jim Meyering.
+
+       Revert use of sig-handler.h in sigprocmask.c.
+       * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
+       it requires the existence of struct sigaction.
+       * lib/sigprocmask.c (handler_t): Restore typedef.
+       (rpl_signal, old_handlers): Use local type.
+
+2008-06-22  Bruno Haible  <bruno@clisp.org>
+
+       * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
+       conditionally.
+       Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
+
+2008-06-22  Bruno Haible  <bruno@clisp.org>
+
+       * doc/posix-functions/siginterrupt.texi: Move note.
+
+       * lib/signal.in.h (SA_RESTART): New macro.
+       * lib/sigaction.c: Update comment.
+
+       * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
+
+       * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
+       (gl_PREREQ_SIGPROCMASK): Invoke it.
+       * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
+
+       * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
+
+       * lib/sigprocmask.c: Update a comment.
+
+2008-06-21  Eric Blake  <ebb9@byu.net>
+
+       Use sigaction module rather than signal().
+       * modules/c-stack (Depends-on): Add sigaction.
+       * modules/fatal-signal (Depends-on): Likewise.
+       * modules/nanosleep (Depends-on): Likewise.
+       * modules/sigprocmask (Files): Add sig-handler.h.
+       * modules/sigaction (Files): Likewise.
+       * lib/sig-handler.h (get_handler): New file, suggested by Paul
+       Eggert.
+       * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
+       (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
+       * lib/fatal-signal.c (uninstall_handlers, install_handlers)
+       (init_fatal_signals): Likewise.
+       * lib/nanosleep.c (rpl_nanosleep): Likewise.
+       (siginterrupt): Delete fallback.
+       * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
+       instead.
+       * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
+       siginterrupt.
+
+       New module sigaction, for mingw.
+       * modules/sigaction: New module...
+       * modules/sigaction-tests: ...and its test.
+       * m4/sigaction.m4: New file.
+       * lib/sigaction.c: Likewise.
+       * tests/test-sigaction.c: Likewise.
+       * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
+       * modules/signal (Makefile.am): Likewise.
+       * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
+       needed.
+       * doc/posix-headers/signal.texi (signal.h): Mention provided
+       types.
+       * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
+       that sigaction is preferable.
+       * doc/posix-functions/sigaction.texi (sigaction): Mention new
+       module.
+       * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
+       sigaction.
+
+       Improve robustness of sigprocmask by overriding signal.
+       * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
+       is in use.
+       * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
+       (SIGKILL, SIGSTOP): Provide fallbacks.
+       (rpl_signal): Implement.
+       (old_handlers, blocked_set): Mark volatile, since sigprocmask and
+       signal can be called inside handlers.
+
+       Fix nanosleep module on mingw.
+       * modules/nanosleep (Depends-on): Add sys_select.
+       * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
+
+       Fix licensing of sigprocmask.
+       * modules/raise (License): Relicense as LGPL.
+
+2008-06-21  Bruno Haible  <bruno@clisp.org>
+
+       * lib/propername.c (proper_name_utf8): Don't use the transliterated
+       result if it contains question marks.
+       Reported by Michael Geng <linux@michaelgeng.de>.
+
+2008-06-19  Bruno Haible  <bruno@clisp.org>
+
+       Fix CVS-ism.
+       * doc/gnulib.texi: Include updated-stamp.texi.
+       * doc/Makefile (GNULIB_TEXI_FILES): New variable.
+       (updated-stamp.texi): New rule.
+       (gnulib.info): Depend on it.
+       * doc/.gitignore: Add updated-stamp.texi.
+       Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
+
+2008-06-19  Bruno Haible  <bruno@clisp.org>
+
+       * doc/Makefile (gnulib.info): Update and simplify dependencies.
+       Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
+
+2008-06-19  Eric Blake  <ebb9@byu.net>
+
+       Fix VPATH 'make dist' with GNU make and non-VCS tarball.
+       * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
+       Reported by Stepan Kasal.
+
+2008-06-18  Bruno Haible  <bruno@clisp.org>
+
+       * lib/fatal-signal.c (init_fatal_signals): Add comment.
+       Reported by Eric Blake.
+
+2008-06-18  Eric Blake  <ebb9@byu.net>
+
+       Work around cygwin 1.5.25 strsignal bug.
+       * tests/test-strsignal.c: Allow for const char *.
+       * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
+
+2008-06-18  Simon Josefsson  <simon@josefsson.org>
+
+       * users.txt: Update URL to article and add author/date
+       information.
+
+2008-06-17  Bruno Haible  <bruno@clisp.org>
+
+       New macro gl_DISABLE_THREADS.
+       * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
+       if the user did not pass --enable-threads or --disable-threads option.
+       (gl_DISABLE_THREADS): New macro.
+       Reported by Eric Blake <ebb9@byu.net>.
+
+2008-06-17  Bruno Haible  <bruno@clisp.org>
+
+       * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
+       when the macro ignores it.
+       Based on a patch by Eric Blake <ebb9@byu.net>.
+
 2008-06-17  Bruno Haible  <bruno@clisp.org>
 
        * modules/tls (License): Change to LGPLv2+.