freebsd-src/contrib/libg++/librx/ChangeLog
Peter Wemm 5acb90c9b6 Import of raw libg++-2.7.2, but in a very cut-down form. There is still
a small amount of unused stuff (by the bmakefiles to follow), but it
isn't much and seems harmless enough.
1996-10-03 21:35:18 +00:00

303 lines
10 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Mon Apr 8 15:17:13 1996 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Add AC_ARG_ENABLE for --enable-shared. Permit it
to specify a list of directories.
* configure: Rebuild with autoconf 2.8.
Tue Nov 14 01:49:21 1995 Doug Evans <dje@canuck.cygnus.com>
* configure.in (AC_CONFIG_AUX_DIR): Define.
(AC_OUTPUT): Call config-ml.in.
* configure: Regenerated.
Mon Nov 13 13:40:15 1995 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Use AC_MSG_CHECKING and AC_MSG_RESULT, rather than
pre-expanding them.
* configure: Rebuild.
Wed Oct 4 12:10:39 1995 Ian Lance Taylor <ian@cygnus.com>
* configure.in: If using GCC, assume we always have alloca. This
works around problems with broken cross setups. Use
AC_FUNC_ALLOCA rather than AC_ALLOCA.
* configure: Rebuild.
Wed Sep 20 13:55:42 1995 Ian Lance Taylor <ian@cygnus.com>
* Makefile.in (maintainer-clean): New synonym for realclean.
Mon Jun 19 00:33:22 1995 Jason Merrill <jason@phydeaux.cygnus.com>
* Makefile.in: Massage broken shells that require 'else true'.
Sun Jun 18 23:24:00 1995 Per Bothner <bothner@kalessin.cygnus.com>
* Makefile.in (distclean): Also remove config.cache and config.log.
Thu Jun 8 22:42:58 1995 Jason Merrill <jason@phydeaux.cygnus.com>
* configure.in: Add support for PIC flag configuration.
* configure: Regenerate.
* Makefile.in: Adjust accordingly.
Mon Jun 5 18:46:06 1995 Jason Merrill <jason@phydeaux.cygnus.com>
* Makefile.in (PICFLAG): New macro.
(rx.o): Depend on stamp-picdir.
(.c.o): Also build pic object.
(stamp-picdir): New rule.
(clean): Remove pic and stamp-picdir.
Tue May 23 12:11:28 1995 Per Bothner <bothner@kalessin.cygnus.com>
* rx.c (regcomp and other POSX.2 functions): Leave them out for
now, because they conflict with Motif on HPUX.
* rx.c (re_syntax_table): Only declare #ifndef RX_WANT_RX_DEFS;
otherwise we duplicate the declaration in rx.h.
* rx.c (re_search_2_fetch_char): Add missing cast.
Sun Apr 2 23:24:52 1995 Tom Lord <lord@x1.cygnus.com>
* rx.h (rx_search): check for and propogate internal
errors correctly (bogus check sometimes mistook ok returns
for internal errors).
Sun Feb 12 19:28:22 1995 Tom Lord (lord@x1.cygnus.com)
* rx.h (rx_search):
From: hankedr@duc.auburn.edu (Darrel Hankerson)
2. I have some problems understanding the code which sets
search_state.free_chunks=0. It appears to me that since this is used
to track alloca'd mem, that it should be done once at the top of
rx_search(). Indeed, this also fixes the problem in the tests I'm
running, but I don't have confidence in this "solution".
[looks right to me. -tl]
* rx.c: Two reported by kwzh.
(re_search_2_get_burst): in the two string case,
when computing `inset', add in pos->offset.
(re_search_2_fetch_char): watch for the case when
pos is just to the left of the second string, pos refers
to the second string, but the first string is provided.
This can happen at the very beginning of a match when the
first thing after matching the priming character is a side
effect like re_se_wordend.
* rx.h (rx_search): patches (marked by /*|*/)
from From: hjl@nynexst.com (H.J. Lu). One fixes a clear
bug in a loop termination test. The other i'm not sure about
yet, but it doesn't break the sed tests.
* rx.c (re_compile_pattern):
Initialize buf.rx.cset_size.
(Fixes problem report from Kayvan Sylvan <kayvan@satyr.Sylvan.COM>)
* rx.c (#define RX_DECL): cleaned up handling of this macro.
* rx.c (re_comp):
From hjl@nynexst.com
Define _GNU_SOURCE.
Test for USE_BSD_REGEX around teh BSD entry points.
Under BSD, treat the empty-string pattern like the NULL pattern.
Also under BSD, rx_syntax_options --> re_syntax_options.
Also, rx_exec --> re_exec and rx_registers --> re_registers.
* rx.c (rx_compile):
From: kwzh@gnu.ai.mit.edu (Karl Heuer)
The `\sX' handler ends with `goto append_node' but without setting
the `append' variable first. This patch should fix it.
* rx.c (regcomp): explicitly zero the field syntax_parens.
Reported/fix suggested by Morten Holmqvist <netrom@find2.denet.dk>.
* rx.h (changes under and around ifdef emacs):
From: kwzh@gnu.ai.mit.edu (Karl Heuer)
Here's a patch (for 0.06) to fix most of the other problems I
mentioned. Some of the cpp conditionals in rx.h were ending at
the wrong place and/or were incorrectly commented; fixing these
took care of some of the missing declarations.
(fastmap_search): unnecessary defaults to switch statements
to shut-up "gcc -Wall".
Thu Nov 24 18:39:42 1994 Tom Lord (lord@x1.cygnus.com)
These fixes let's rx pass the spencer.tests from grep.
* rx.h (rx_search): moved slightly out of date debugging
code from RX_DEBUG to RX_DEBUG_0.
* rx.h (rx_search): in the outer loop, if get_burst returns
that there are no more characters, consider the possibility
of an empty match before failing.
* rx.h (rx_search): when computing search_end, don't waste
time computing MIN and MAX of values already forced into range.
* rx.h (rx_search): when making RANGE fit within TOTAL_SIZE,
don't forget to allow the possible empty match at the end of
string.
* rx.c (is_anchored): the equations solving side-effect
anchoring were wrong for the r_alternate case. The interesting
thing about this bug is that it disguises itself as a precedent
bug between | and ^ because of an optimization in the search
function that checks rxb->begbuf_only (a return value of is_anchored).
* rx.c: Fix the print-name rx_se_win (missing comma).
Fix the function print_cset to print non-printable characters
as octal.
Sat Nov 5 20:01:46 1994 Jason Merrill (jason@phydeaux.cygnus.com)
* Makefile.in (LIBCFLAGS): New variable.
(.c.o): Use it.
Thu Sep 1 16:23:21 1994 Tom Lord (lord@x1.cygnus.com)
* rx.c: applied patches from H J Lu to unrot BSD compatibility
code.
Mon Aug 29 16:48:57 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
* Makefile.in (AR_FLAGS): Define.
(librx.a): Use $(AR) and $(AR_FLAGS).
Fri Aug 26 11:37:36 1994 Ian Lance Taylor (ian@cygnus.com)
* configure.in: Call AC_PROG_CPP explicitly.
* configure: Rebuilt.
Thu Aug 25 18:19:47 1994 Tom Lord (lord@x1.cygnus.com)
* rx.[ch], configure.in: use __const__ instead of
AC_CONST. Only include stdio once. Don't check
for memory.h.
Tue Aug 16 12:12:01 1994 Tom Lord (lord@x1.cygnus.com)
* rx.[ch]: LGPL instead of GPL
Mon Aug 15 16:24:16 1994 Per Bothner (bothner@kalessin.cygnus.com)
* rx.h (rx_search): When checking if we've gotten to the end,
handle the case that we're searching backwards.
Tue Jun 21 12:40:50 1994 Jim Kingdon (kingdon@lioth.cygnus.com)
* rx.c (re_rx_search): New function, exports rx_search.
* Makefile.in (clean): Also remove librx.a.
Fri Jun 3 12:16:45 1994 Tom Lord (lord@x1.cygnus.com)
* rx.c(re_search_2_fetch_char): fixed a bug that caused it to
ignore OFFSET.
Thu May 26 14:05:17 1994 Tom Lord (lord@x1.cygnus.com)
* rx.[ch]: From: Michael Rendell <michael@maple.cs.mun.ca>
``The problem seems to lie in the casting between pointers and
integers (pointers on the alpha are 64 bits, ints 32 bits, longs
64 bits). The core dump happens in rx_compactify_nfa(), in the
first for loop in the while(eclose) loop -- rx_hash_find() returns
0, which is dereferenced.''
The patch changed the type of rx_hash_masks to long and
also a use of `int' to hold a side effect in rx_search.
Sat May 14 00:45:14 1994 Tom Lord (lord@x1.cygnus.com)
* rx.c, rx.h: rearranged all the code
so that all the rx functions can be exported
or hidden (define RX_WANT_RX_DEFS when compiling
and when including rx.h).
Wed May 11 01:15:56 1994 Tom Lord (lord@rtl.cygnus.com)
* rx.c, rx.h: added rx_search -- searching in
arbitrarily fragmented strings, continuation support.
Wed May 4 13:56:55 1994 Tom Lord (lord@rtl.cygnus.com)
* rx.c, rx.h: Started independent maintainence
of these.
------ version 0.04 ------
Fri May 13 02:31:13 1994 Tom Lord (lord@x1.cygnus.com)
* rx.c: eliminated the weirdo custom allocators.
Fixed some bugs (but lost the ChangeLog entries).
Wed May 11 06:09:31 1994 Chip Salzenberg (chip@fin.uucp)
* rx.c (rx_superstate_eclosure_union): Always return a value.
------ version 0.03 ------
Fri Aug 6 01:57:28 1993 Tom Lord (lord@unix1.andrew.cmu.edu)
* rx.c (re_search_2): sped up the fastmap search a little
to as to not be slower than regex.c on simple patterns.
Rx will still lose by a couple instructions in some degenerate
cases but mostly will win.
Thu Aug 5 11:39:57 1993 Tom Lord (lord@thisbe.weh.andrew.cmu.edu)
* rx.c (re_search_2 & compilation front-ends): cache the starting
superset of super-nfa's so that it isn't necessary to do an
eclosure union for every call to re_search_2.
* rx.c (re_search_2): (from Eric Backus) arrange to call
alloca(0) from a shallower stack frame than re_search_2
if callling it at all.
This could use a better cpp test. Right now, an extra function
call is added to re_search_2 unles __GNUC__ is defined. If
there were something like _HAVE_LOSER_ALLOCA_....
* rx.c (rx_compile, re_search_2, several new fns):
changed the order of side effect lists so that possible
futures that begin with complex effects more to the right
are explored after futures more to the left. Added
a noop complex effect to alts and stars to guarantee
they are explored in the right order. An optimization
after the parse removes some from the alts (and not all
stars get them in the first place). Changed the `best
match' criterea -- now that possible futures are ordered
posixly, we only want to check the length of the match.
For a given length, the best subexpression partitioning
is the first one found.
A side effect of this is that Rx will always return the
same register assignements for a given regexp/input text.
Bummer :-) / 2.
------ version 0.02 ------
ed Jul 21 13:10:56 1993 Tom Lord (lord@unix8.andrew.cmu.edu)
* rx.c (re_search_2): elaborated on the rule for picking the
best match so that the lengths of subexpressions are taken
into account. This is for Posix compatability.
------ version 0.01 ------
Sun Jun 13 17:20:35 1993 Tom Lord (lord@tsunami.ucc.andrew.cmu.edu)
* This is the first release of rx.c. Although some of the code
is derived from regex.c, there is not much continuity between
the two implementations.