* lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
[gnulib.git] / lib / ChangeLog
index 527a593..9a1df4f 100644 (file)
@@ -1,3 +1,112 @@
+2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
+       (optimize_subexps, lower_subexp):
+       Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
+       since the signed shift might overflow.  Use 1u<<31 instead.
+       * regex_internal.h (bitset_set, bitset_clear, bitset_contain): Likewise.
+       * regexec.c (check_dst_limits_calc_pos_1, check_subexp_matching_top):
+       Likewise.
+       * regcomp.c (optimize_subexps, lower_subexp):
+       Use CHAR_BIT rather than 8, for clarity.
+       * regexec.c (check_dst_limits_calc_pos_1):
+       (check_subexp_matching_top): Likewise.
+       * regcomp.c (init_dfa): Make table_size unsigned, so that we don't
+       have to worry about portability issues when shifting it left.
+       Remove no-longer-needed test for table_size > 0.
+       * regcomp.c (parse_sub_exp): Do not shift more bits than there are
+       in a word, as the resulting behavior is undefined.
+       * regexec.c (check_dst_limits_calc_pos_1): Likewise;
+       in one case, a <= should have been an <, and in another case the
+       whole test was missing.
+       * regex_internal.h (BYTE_BITS): Remove.  All uses changed to
+       the standard name CHAR_BIT.
+       * regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
+       this is not true on one's complement and signed-magnitude hosts.
+
+       * regex_internal.h (re_sub_match_top_t): Remove unused member
+       next_last_offset.
+       (struct re_dfa_t): Remove unused member states_alloc.
+       * regcomp.c (init_dfa): Don't initialize unused members.
+
+2005-08-31  Bruno Haible  <bruno@clisp.org>
+
+       * strstr.c: Include <stddef.h>, for NULL.
+       * strcasestr.c: Likewise.
+       Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
+
+2005-08-30  "Oskar Liljeblad" <oskar@osk.mine.nu>
+
+       * iconvme.h: Add prototype for iconv_alloc.
+
+2005-08-29  Simon Josefsson  <jas@extundo.com>
+
+       * iconvme.c: Fix errno.
+
+2005-08-29  "Oskar Liljeblad" <oskar@osk.mine.nu>
+
+       * iconvme.c: Split iconv_string into iconv_alloc.
+
+2005-08-27  Jim Meyering  <jim@meyering.net>
+
+       * fopen-safer.c: Merge minor changes from coreutils.
+       * dup-safer.c: Likewise.
+       * fd-safer.c: Likewise.
+
+       Merge from coreutils.
+       * stdio--.h: New file.
+       * stdlib--.h: New file.
+       * mkstemp-safer.c: New file.
+
+       GNU tar needs these.
+       * pipe-safer.c: New file.
+       * creat-safer.c: New file.
+       * fcntl--.h (creat): Define to creat_safer.
+       * fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
+       * unistd--.h (pipe): Define to pipe_safer.
+       * unistd-safer.h: Declare pipe_safer.
+
+2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * regex_internal.h: Remove all references to
+       RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
+       or better.
+       (bitset_not, bitset_merge, bitset_not_merge):
+       (bitset_mask, re_string_allocate, re_string_construct):
+       (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
+       (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
+       (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
+       (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
+       (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
+       (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
+       (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
+       (re_acquire_state_context):
+       Remove unnecessary forward decls.
+       (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
+       Put __attribute at function definition,
+       now that the function decl has been removed.
+       * lib/regex_internal.c (re_string_peek_byte_case):
+       (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
+       Likewise.
+
+2005-08-26  Simon Josefsson  <jas@extundo.com>
+
+       * getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
+       Haible <bruno@clisp.org>.
+
+2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * regexec.c (set_regs): Don't alloca with an unbounded size.
+
+       alloca modernization/simplification for regex.
+       * regex.c: Remove portability cruft for alloca.  This no longer
+       needs to be at the start of the file, and can be moved into
+       regex_internal.h and simplified.
+       * regex_internal.h: Include <alloca.h>.
+       (__libc_use_alloca) [!defined _LIBC]: New macro.
+       * regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
+       now works outside glibc.
+
 2005-08-24  Simon Josefsson  <jas@extundo.com>
 
        * getpass.c: Add WIN32 implementation.  Conditionalize use of