summaryrefslogtreecommitdiff
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* build: avoid warning about unused fchown resultJim Meyering2014-12-011-0/+1
| | | | | | | | * sed/execute.c: Include "ignore-value.h". (closedown): Explicitly ignore fchown return value. * bootstrap.conf (gnulib_modules): Add ignore-value. * lib/.gitignore: Ignore the new .h file. * .gitignore: Ignore all **~ backup files.
* maint: enable sc_program_name syntax checkJim Meyering2014-11-301-0/+2
| | | | | | | | | * cfg.mk (local-checks-to-skip): Remove its exemption. * sed/sed.c: Include progname.h". (program_name): Remove now-unnecessary declaration. (main): Call set_program_name. * bootstrap.conf (gnulib_modules): Add progname. * lib/.gitignore: Append the two new names.
* maint: update autogenerated .gitignore filesJim Meyering2014-11-301-0/+5
|
* maint: update build/gnulib infrastructure; generate ChangeLogJim Meyering2014-11-301-4/+29
| | | | | | | | | | | | * ChangeLog-2014: Renamed from ChangeLog. * po/ChangeLog-2014: Renamed from po/ChangeLog. * Makefile.am (EXTRA_DIST): Add the two new file names. (dist-hook): Generate ChangeLog at tarball-creation time. (gen-ChangeLog): New rule. Just like the one in coreutils and grep. * bootstrap.conf (gnulib_modules): Add the modules, readme-release and gitlog-to-changelog, and revamp to be much more like grep and coreutils. * lib/Makefile.am: Update.
* Update to latest gnulib.Paolo Bonzini2012-12-221-0/+8
| | | | | | | 2012-12-21 Paolo Bonzini <bonzini@gnu.org> * gnulib: Update. * testsuite/version.gin: Regenerate.
* update gnulib to latestPaolo Bonzini2012-03-161-0/+14
| | | | | | 2012-03-16 Paolo Bonzini <bonzini@gnu.org> * gnulib: Update.
* update .gitignore filesPaolo Bonzini2011-08-291-0/+8
|
* update .gitignore filesPaolo Bonzini2010-10-311-0/+3
|
* use version-etc-fsfPaolo Bonzini2010-08-301-0/+43
| | | | | | | | | | | | 2010-08-30 Paolo Bonzini <bonzini@gnu.org> * Makefile.am (dist-hook): Remove COPYRIGHT_YEAR check. * autoboot.conf (gnulib_modules): Add version-etc-fsf. * configure.ac (COPYRIGHT_YEAR): Remove. Change package name to "GNU sed". * doc/sed.1: Regenerate. * sed/sed.c (AUTHORS): New. (main): Use version_etc.
* use mkostemp(template, 0) instead of mkstemp to work around Cygwin oddityPaolo Bonzini2010-07-161-1/+19
| | | | | | | | | | | 2010-07-16 Paolo Bonzini <bonzini@gnu.org> * autoboot.conf (gnulib_modules): Replace mkstemp with mkostemp. * bootstrap.sh.in: Compile mkostemp.c instead of mkstemp.c. * gnulib: Update. * NEWS: Mention change. * sed/utils.c (ck_mkstemp): Use mkostemp to work around Cygwin oddity. Reported by Stepan Kasal.
* bump version number to 4.2.1v4.2.1Paolo Bonzini2009-06-271-0/+1
| | | | | | | | | 2009-06-27 Paolo Bonzini <bonzini@gnu.org> * configure.ac: Bump version. * NEWS: Bump version. * gnulib: Update. * doc/sed.1: Regenerate.
* preserve security contexts too on sed -iPaolo Bonzini2009-06-261-0/+16
| | | | | | | 2009-06-25 Paolo Bonzini <bonzini@gnu.org> * autoboot.conf: Add selinux-h. * execute.c: Copy over file creation context before creating a new file.
* use gnulib's emulation for mb functionsPaolo Bonzini2008-12-221-0/+8
| | | | | | | 2008-12-22 Paolo Bonzini <bonzini@gnu.org> * autoboot.conf: Request modules emulating mb functions. * configure.ac: Do not look for mb functions here.
* switch to external gettextJim Meyering2008-10-032-2/+2
| | | | | | | | | | 2008-10-03 Paolo Bonzini <bonzini@gnu.org> Jim Meyering <meyering@redhat.com> * Makefile.am: Remove intl subdir. Require Automake 1.10. * configure.ac: Remove useless macros, switch to external gettext. * lib/Makefile.am: Remove intl subdir from CPPFLAGS. * sed/Makefile.am: Remove intl subdir from CPPFLAGS.
* update gnulibPaolo Bonzini2008-09-281-24/+2
| | | | | | | | | | 2008-09-28 Paolo Bonzini <bonzini@gnu.org> * basicdefs.h: Replace alloca cruft with alloca.h. * bootstrap.sh.in: Update for new gnulib. * bootstrap.sh: Update for new gnulib. * configure.ac: Move gnulib macros earlier. * sed/execute.c: Do not include acl.h when bootstrapping.
* gnulib removed strverscmp.cPaolo Bonzini2008-08-201-1/+0
| | | | | | 2008-08-19 Paolo Bonzini <bonzini@gnu.org> * sed/compile.c: Do not include strverscmp.c.
* update .gitignore filesPaolo Bonzini2008-07-111-0/+2
|
* commit new .gitignore files produced by autobootPaolo Bonzini2008-01-161-21/+36
|
* upgrade autobootPaolo Bonzini2008-01-161-10/+3
|
* update .gitignore for more recent gnulibPaolo Bonzini2008-01-161-0/+13
|
* portability fixes from Bruno HaiblePaolo Bonzini2008-01-091-0/+4
| | | | | | | | | | 2006-12-22 Bruno Haible <bruno@clisp.org> * sed/utils.c: Include pathmax. * sed/mbcs.c: Use local_charset. * sed/execute.c: Copy with padding after the mbstate_t member. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-90
* gnulibify part 2, use gnulib-tool in autoboot and remove PO files from repoPaolo Bonzini2008-01-091-8/+2
| | | | git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-76
* gnulib .gitignore filesPaolo Bonzini2008-01-092-148/+76
|
* gnulibify and add ACL supportPaolo Bonzini2008-01-0925-15960/+156
| | | | | | | | | | 2006-09-24 Paolo Bonzini <bonzini@gnu.org> * sed/execute.c: Support ACLs. * lib/utils.c: Move... * sed/utils.c: ... here, and remove xmalloc. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-74
* treat cygwin CR/LF correctly (and by design, not by chance)Paolo Bonzini2008-01-093-27/+51
| | | | | | | | | | | | | | | | | | | | | 2006-08-03 Paolo Bonzini <bonzini@gnu.org> Corinna Vinschen <vinschen@redhat.com> * lib/getline.c (getline): Remove Windows special casing. * lib/utils.c (register_open_file, ck_fdopen): New. (ck_fopen, ck_mkstemp): Use register_open_file. * lib/utils.h (ck_fdopen): New. * sed/execute.c (open_next_file): Reopen stdin. * sed/sed.h (read_mode): New. * sed/sed.c (read_mode): New. (main): Set it on --binary. (usage): Document --binary. * sed/compile.c (get_openfile): Change second argument to char and turn it into a string within the function. Adjust callers. * sed/execute.c (dump_append_queue, open_next_file): Use it as mode for ck_fopen. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-71
* don't rely on malloc(0) != NULLPaolo Bonzini2008-01-091-2/+2
| | | | git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-69
* robustify bootstrap process, ensure distribution of updated boostrap.shPaolo Bonzini2008-01-091-1/+22
| | | | | | | | | 2006-07-13 Paolo Bonzini <bonzini@gnu.org> * bootstrap.sh.in: Add a few autoconfy tests. * Makefile.am: Update distributed bootstrap.sh. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-68
* Fix compilation on non-GCC compilers, update po filesPaolo Bonzini2008-01-092-2/+11
| | | | | | | | 2006-05-15 Hans-Bernhard Bröker <broeker@physik.rwth-aachen.de> * sed/basicdefs.h (OB_MALLOC): Turn VCAST into void * cast. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-66
* merge with glibc regexPaolo Bonzini2008-01-095-946/+658
| | | | git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-59
* add LANG_SORBIAN and other mingw fixesPaolo Bonzini2008-01-091-0/+4
| | | | git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-57
* update regex from upstreamPaolo Bonzini2008-01-096-287/+310
| | | | | | | | | | | | | 2005-09-07 Paolo Bonzini <bonzini@gnu.org> * lib/regcomp.c: Update from upstream. * lib/regex.c: Update from upstream. * lib/regex_.h: Update from upstream. * lib/regex_internal.c: Update from upstream. * lib/regex_internal.h: Update from upstream. * lib/regexec.c: Update from upstream. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-54
* merge regex with glibc and adjust doc/.arch-inventoryPaolo Bonzini2008-01-096-42/+74
| | | | git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-51
* more updates to the FSF addressPaolo Bonzini2008-01-0912-12/+12
| | | | git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-50
* update FSF addressPaolo Bonzini2008-01-0919-26/+26
| | | | git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-49
* fix crash on /\(\)/xPaolo Bonzini2008-01-092-0/+6
| | | | | | | | | | 2005-02-10 Paolo Bonzini <bonzini@gnu.org> * lib/regcomp.c (lower_subexp): Do not optimize empty subexpressions even with REG_NOSUB. * testsuite/SPENCER.tests: Add a previously failing testcase. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-43
* include config.h from within obstack.hPaolo Bonzini2008-01-091-0/+4
| | | | | | | | 2005-02-08 Paolo Bonzini <bonzini@gnu.org> * lib/obstack.h: include config.h. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-41
* finally resync with glibcPaolo Bonzini2008-01-095-31/+37
| | | | git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-38
* fix meaning of \BPaolo Bonzini2008-01-092-6/+9
| | | | | | | | | | | | | 2005-01-26 Paolo Bonzini <bonzini@gnu.org> * posix/regcomp.c (peek_token): Fix ctx_type for \B. (parse_expression): Lower token->opr.ctx_type == NOT_WORD_DELIM. * posix/regex_internal.h (re_context_type): Add NOT_WORD_DELIM and OUTSIDE_WORD. * posix/PCRE.tests: Adjust \B tests to check if it matches outside a word. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-36
* prepare for 4.1.4 releasePaolo Bonzini2008-01-095-10/+11
| | | | | | | | 2005-01-25 Paolo Bonzini <bonzini@gnu.org> * sed/regexp.c: Fix building on GCC 2.95 and earlier. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-35
* compute inveclosure only if actually needed.Paolo Bonzini2008-01-093-23/+41
| | | | | | | | | | | | | | | | | | 2004-12-31 Paolo Bonzini <bonzini@gnu.org> * regcomp.c (calc_inveclosure): Return reg_errcode_t. Initialize the node sets in dfa->inveclosures. (analyze): Initialize inveclosures only if it is needed. Check errors from calc_inveclosure. * regex_internal.c (re_dfa_add_node): Do not initialize the inveclosure node set. * regexec.c (re_search_internal): If nmatch includes unused subexpressions, reset them to { rm_so: -1, rm_eo: -1 } here. Limit to preg->re_nsubs the nmatch that is passed to set_regs. (set_regs): Remove the real_nmatch variable, the nmatch parameter now is <= preg->re_nsubs. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-34
* speed up transit_state_mbPaolo Bonzini2008-01-091-7/+7
| | | | | | | | | 2004-12-27 Paolo Bonzini <bonzini@gnu.org> * lib/regexec.c (transit_state_mb): Do not examine nodes where the ACCEPT_MB is not set. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-30
* separate parsing and creation of the NFA. Avoid recursion on the parse tree.Paolo Bonzini2008-01-093-488/+451
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-12-13 Paolo Bonzini <bonzini@gnu.org> Separate parsing and creation of the NFA. Avoided recursion on the (very unbalanced) parse tree. * regcomp.c (struct subexp_optimize, analyze_tree, calc_epsdest, re_dfa_add_tree_node, mark_opt_subexp_iter): Removed. (optimize_subexps, duplicate_tree, calc_first, calc_next, mark_opt_subexp): Rewritten. (preorder, postorder, lower_subexps, lower_subexp, link_nfa_nodes, create_token_tree, free_tree, free_token): New. (analyze): Accept a regex_t *. Invoke the passes via the preorder and postorder generic visitors. Do not initialize the fields in the re_dfa_t that represent the transitions. (free_dfa_content): Use free_token. (re_compile_internal): Analyze before UTF-8 optimizations. Do not include optimization of subexpressions. (create_initial_state): Fetch the DFA node index from the first node's bin_tree_t *. (optimize_utf8): Abort on unexpected nodes, including OP_DUP_QUESTION. Return on COMPLEX_BRACKET. (duplicate_node_closure): Fix comment. (duplicate_node): Do not initialize the fields in the re_dfa_t that represent the transitions. (calc_eclosure, calc_inveclosure): Do not handle OP_DELETED_SUBEXP. (create_tree): Remove final argument. All callers adjusted. Rewritten to use create_token_tree. (parse_reg_exp, parse_branch, parse_expression, parse_bracket_exp, build_charclass_op): Use create_tree or create_token_tree instead of re_dfa_add_tree_node. (parse_dup_op): Likewise. Also free the tree using free_tree for "<re>{0}", and lower OP_DUP_QUESTION to OP_ALT: "a?" is equivalent to "a|". Adjust invocation of mark_opt_subexp. (parse_sub_exp): Create a single SUBEXP node. * regex_internal.c (re_dfa_add_node): Remove last parameter, always perform as if it was 1. Do not initialize OPT_SUBEXP and DUPLICATED, and initialize the DFA fields representing the transitions. * regex_internal.h (re_dfa_add_node): Adjust prototype. (re_token_type_t): Move OP_DUP_PLUS and OP_DUP_QUESTION to the tokens section. Add a tree-only code SUBEXP. Remove OP_DELETED_SUBEXP. (bin_tree_t): Include a full re_token_t for TOKEN. Turn FIRST and NEXT into pointers to trees. Remove ECLOSURE. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-29
* speed up parenthesesPaolo Bonzini2008-01-093-99/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-12-07 Paolo Bonzini <bonzini@gnu.org> * regexec.c (proceed_next_node): Simplify treatment of epsilon nodes. Pass the pushed node to push_fail_stack. (push_fail_stack): Accept a single node rather than an array of two epsilon destinations. (build_sifted_states): Only walk non-epsilon nodes. (check_arrival): Don't pass epsilon nodes to check_arrival_add_next_nodes. (check_arrival_add_next_nodes) [DEBUG]: Abort if an epsilon node is found. (check_node_accept): Do expensive checks later. (add_epsilon_src_nodes): Cache result of merging the inveclosures. * regex-internal.h (re_dfastate_t): Add non_eps_nodes and inveclosure. (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at, re_string_context_at, re_string_peek_byte_case, re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains): Declare as pure. * regex-internal.c (create_newstate_common): Remove. (register_state): Move part of it here. Initialize non_eps_nodes. (free_state): Free inveclosure and non_eps_nodes. (create_cd_newstate, create_ci_newstate): Allocate the new re_dfastate_t here. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-28
* Fix bugs in the accept_mb optimization.Paolo Bonzini2008-01-092-36/+37
| | | | | | | | | | | | 2004-12-03 Paolo Bonzini <bonzini@gnu.org> * regcomp.c (peek_token, parse_expression, build_charclass_op): Do not set accept_mb in the token. (parse_bracket_exp): Do not modify existing DFA nodes. * regex-internal.c (re_node_set_insert_last): Remove unused variable. (re_dfa_add_node): Set accept_mb in the DFA node. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-27
* do not make single-byte searches go through slow MBCS pathsPaolo Bonzini2008-01-094-20/+20
| | | | | | | | | | | | | | | | | | 2004-01-12 Paolo Bonzini <bonzini@gnu.org> * posix/regcomp.c (peek_token, parse_bracket_exp, build_charclass_op) [RE_ENABLE_I18N]: Initialize the tokens' accept_mb field. * posix/regex_internal.c (create_ci_newstate, create_cd_newstate) [RE_ENABLE_I18N]: Initialize the DFA state's accept_mb field from the nodes'. * posix/regex_internal.h (re_token_t) [RE_ENABLE_I18N]: Add the accept_mb bitfield. (ACCEPT_MB_NODE): Remove. * posix/regexec.c (transit_state_mb, check_arrival_add_next_nodes, proceed_next_node, build_sifted_states): Look at the nodes' accept_mb field. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-26
* simplify handling of subexpressionsPaolo Bonzini2008-01-093-54/+21
| | | | | | | | | | | | | | | | | | | 2004-12-01 Paolo Bonzini <bonzini@gnu.org> * posix/regcomp.c (free_dfa_content, init_dfa): Remove references to re_dfa_t's subexps field. (parse_sub_exp, parse_expression): Do not use it. Use completed_bkref_map instead. (create_initial_state, peek_token): Store a backreference \N with opr.idx = N-1. * posix/regexec.c (proceed_next_node, check_dst_limits, get_subexp): Likewise. (check_subexp_limits): Remove useless condition. * posix/regex_internal.h (re_subexp_t): Remove. (re_dfa_t): Remove subexps and subexps_alloc field, add completed_bkref_map. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-25
* fix off by one error in check_dst_limits_calc_pos_1Paolo Bonzini2008-01-091-38/+38
| | | | | | | | | 2004-11-30 Paolo Bonzini <bonzini@gnu.org> * posix/regexec.c (check_dst_limits_calc_pos_1): Check for bkref_idx == -1, and don't recurse in that case. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-24
* speed up .{1,2048}Paolo Bonzini2008-01-093-44/+64
| | | | | | | | | | | | | | 2004-11-23 Paolo Bonzini <bonzini@gnu.org> * regcomp.c (analyze_tree): Always call calc_epsdest. (calc_inveclosure): Use re_node_set_insert_last. (parse_dup_op): Lower X{1,5} to (X(X(X(XX?)?)?)?)? rather than X?X?X?X?X?. * regex_internal.h (re_node_set_insert_last): New declaration. * regex_internal.c (re_node_set_insert_last): New function. * PCRE.tests: Add testcases. git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-22
* restore transit_state optimization, lost in previous checkinPaolo Bonzini2008-01-093-42/+43
| | | | | | previous checkin was a merge from glibc git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-21
* git-archimport-id: bonzini@gnu.org--2004b/sed--stable--4.1--patch-20Paolo Bonzini2008-01-095-78/+197
|