Go to file
Ulrich Drepper 02f3550c8b [BZ #605, BZ #611]
Update.
2004-12-13  Paolo Bonzini  <bonzini@gnu.org>

	Separate parsing and creation of the NFA.  Avoided recursion on
	the (very unbalanced) parse tree.
	[BZ #611]
	* posix/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.
	* posix/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.
	* posix/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.

2004-12-28  Paolo Bonzini  <bonzini@gnu.org >

	[BZ #605]
	* posix/regcomp.c (parse_bracket_exp): Do not modify DFA nodes
	that were already created.
	* posix/regex_internal.c (re_dfa_add_node): Set accept_mb field
	in the token if needed.
	(create_ci_newstate, create_cd_newstate): Set accept_mb field
	from the tokens' field.
	* posix/regex_internal.h (re_token_t): Add accept_mb field.
	(ACCEPT_MB_NODE): Removed.
	* posix/regexec.c (proceed_next_node, transit_states_mb,
	build_sifted_states, check_arrival_add_next_nodes): Use
	accept_mb instead of ACCEPT_MB_NODE.
2005-01-26 22:42:49 +00:00
abilist 2004-08-30 Roland McGrath <roland@frob.com> 2004-08-31 06:17:08 +00:00
aout
argp (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
assert (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
bare (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
bits * csu/elf-init.c (__libc_csu_fini): Don't do anything here. 2005-01-06 22:40:27 +00:00
catgets * posix/getconf.c: Update copyright year. 2005-01-12 23:43:44 +00:00
conf
conform 2004-05-26 Roland McGrath <roland@frob.com> 2004-05-26 19:21:39 +00:00
crypt (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
csu * posix/getconf.c: Update copyright year. 2005-01-12 23:43:44 +00:00
ctype (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
debug Update. 2005-01-26 20:58:28 +00:00
dirent * sysdeps/unix/rewinddir.c: Reset filepos. 2005-01-16 06:26:38 +00:00
dlfcn * elf/dl-load.c (_dl_map_object_from_fd): We don't have to allow 2005-01-13 02:08:37 +00:00
elf Update. 2005-01-25 11:42:24 +00:00
gmon (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
gnulib
grp * grp/putgrent.c (putgrent): Don't write 0 as group 2005-01-12 03:12:43 +00:00
hesiod (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
hurd * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Fix a typo 2005-01-19 19:26:29 +00:00
iconv * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Fix a typo 2005-01-19 19:26:29 +00:00
iconvdata (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
include * include/link.h: Remove stray definition of pltenter. 2005-01-18 01:20:40 +00:00
inet (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
intl (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
io (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
libidn (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
libio * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Fix a typo 2005-01-19 19:26:29 +00:00
linuxthreads * pthread.c (init_one_static_tls): Adjust initialization of DTV 2005-01-09 20:13:03 +00:00
linuxthreads_db * pthread.c (init_one_static_tls): Adjust initialization of DTV 2005-01-09 20:13:03 +00:00
locale * posix/getconf.c: Update copyright year. 2005-01-12 23:43:44 +00:00
localedata [BZ #626] 2004-12-29 09:18:40 +00:00
login (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
mach (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
malloc * posix/getconf.c: Update copyright year. 2005-01-12 23:43:44 +00:00
manual * manual/memory.texi (sbrk): Fix definition. 2005-01-26 02:39:20 +00:00
math Update. 2005-01-06 21:52:35 +00:00
misc Moved to sysdeps/generic. 2005-01-24 22:52:25 +00:00
nis (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
nptl Update. 2005-01-26 20:02:05 +00:00
nptl_db (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
nscd 2005-01-17 Roland McGrath <roland@redhat.com> 2005-01-18 01:21:35 +00:00
nss * posix/getconf.c: Update copyright year. 2005-01-12 23:43:44 +00:00
po * po/es.po: Update from translation team. 2004-12-28 19:36:09 +00:00
posix [BZ #605, BZ #611] 2005-01-26 22:42:49 +00:00
pwd * grp/putgrent.c (putgrent): Don't write 0 as group 2005-01-12 03:12:43 +00:00
resolv (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
resource (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
rt (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
scripts (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
setjmp (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
shadow (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
signal (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
socket (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
soft-fp (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
stdio-common Update. 2005-01-06 02:09:15 +00:00
stdlib Update. 2005-01-26 00:01:20 +00:00
streams (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
string (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
sunrpc * sunrpc/rpc_main.c (s_output): Generate #include <rpc/pmap_clnt.h> 2005-01-26 02:40:14 +00:00
sysdeps Update. 2005-01-26 20:02:05 +00:00
sysvipc (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
termios (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
time * grp/putgrent.c (putgrent): Don't write 0 as group 2005-01-12 03:12:43 +00:00
timezone Update. 2005-01-26 00:01:20 +00:00
wcsmbs (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
wctype (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
.cvsignore Update. 2004-09-11 16:28:48 +00:00
abi-tags (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
aclocal.m4 * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT. 2004-07-02 06:45:17 +00:00
BUGS (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
CANCEL-FCT-WAIVE Update. 2004-03-08 07:58:18 +00:00
CANCEL-FILE-WAIVE Update. 2004-03-08 07:58:18 +00:00
ChangeLog [BZ #605, BZ #611] 2005-01-26 22:42:49 +00:00
ChangeLog.1
ChangeLog.2
ChangeLog.3
ChangeLog.4
ChangeLog.5 (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
ChangeLog.6
ChangeLog.7
ChangeLog.8
ChangeLog.9
ChangeLog.10
ChangeLog.11 (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
ChangeLog.12 (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
ChangeLog.13 Update. 2002-10-03 16:37:04 +00:00
ChangeLog.14 Update. 2004-04-20 04:28:00 +00:00
config-name.in (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
config.h.in (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
config.make.in (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
configure 2005-01-05 Roland McGrath <roland@redhat.com> 2005-01-05 09:39:54 +00:00
configure.in 2005-01-05 Roland McGrath <roland@redhat.com> 2005-01-05 09:39:54 +00:00
CONFORMANCE Update. 2004-04-17 18:02:33 +00:00
COPYING Update. 2001-07-06 06:58:28 +00:00
COPYING.LIB 2002-08-26 Brian Youmans <3diff@gnu.org> 2002-08-26 22:40:48 +00:00
cppflags-iterator.mk 2004-03-11 Jeroen Dekkers <jeroen@dekkers.cx> 2004-03-14 19:13:17 +00:00
extra-lib.mk * extra-lib.mk (object-suffixes-$(lib)): Add .oS when 2004-12-02 22:55:30 +00:00
extra-modules.mk Update. 2004-03-08 21:31:23 +00:00
FAQ (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
FAQ.in (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
INSTALL (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
INTERFACE (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
LICENSES 2002-08-20 Brian Youmans <3diff@gnu.org> 2002-08-20 21:51:55 +00:00
Makeconfig * nscd/Makefile (LDLIBS-nscd): New variable. 2005-01-18 01:21:47 +00:00
Makefile (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
Makefile.in (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
Makerules (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
MakeTAGS (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
NAMESPACE
NEWS (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
NOTES (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
o-iterator.mk
PROJECTS Update. 2004-10-12 06:19:23 +00:00
README (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
README.libm (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
README.template (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
Rules (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
shlib-versions (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
test-skeleton.c (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
tls.make.c * sysdeps/unix/make-syscalls.sh: When an undefined syscall has 2003-03-26 22:49:50 +00:00
version.h (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
Versions.def (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
WUR-REPORT Update. 2005-01-06 21:52:35 +00:00

This directory contains the version 2.3.4 release of the GNU C Library.
Many bugs have been fixed since the last release.
Some bugs surely remain.

As of this release, the GNU C library is known to run on the following
configurations:

		*-*-gnu			GNU Hurd
		i[3456]86-*-linux-gnu	Linux-2.x on Intel
		m68k-*-linux-gnu	Linux-2.x on Motorola 680x0
		alpha*-*-linux-gnu	Linux-2.x on DEC Alpha
		powerpc-*-linux-gnu     Linux and MkLinux on PowerPC systems
		powerpc64-*-linux-gnu	Linux-2.4.19+ on 64-bit PowerPC systems
		sparc-*-linux-gnu	Linux-2.x on SPARC
		sparc64-*-linux-gnu	Linux-2.x on UltraSPARC 64-bit
		arm-*-none		ARM standalone systems
		arm-*-linux		Linux-2.x on ARM
		arm-*-linuxaout		Linux-2.x on ARM using a.out binaries
		mips*-*-linux-gnu	Linux-2.x on MIPS
		ia64-*-linux-gnu	Linux-2.x on ia64
		s390-*-linux-gnu	Linux-2.x on IBM S/390
		s390x-*-linux-gnu	Linux-2.4+ on IBM S/390 64-bit
		sh-*-linux-gnu		Linux-2.x on Super Hitachi
		x86-64-*-linux-gnu	Linux-2.4+ on x86-64

Past releases of this library ran on a variety of configurations that are
no longer supported.  Porting the library is not hard.  If you are
interested in doing a port, please contact the glibc maintainers;
see http://www.gnu.org/software/libc/ for more information.

There are some add-ons which can be used together with GNU libc.  They
are designed in a way to ease the installation by integrating them in
the libc source tree.  Simply get the add-ons you need and use the
--enable-add-ons option of the `configure' script to tell where the
add-ons are found.  Please read the FAQ file for more details.

See the file INSTALL to find out how to configure, build, install, and port
the GNU C library.  You might also consider reading the WWW pages for the
GNU libc at http://www.gnu.org/software/libc/libc.html.

The GNU C Library is completely documented by the Texinfo manual found
in the `manual/' subdirectory.  The manual is still being updated and
contains some known errors and omissions; we regret that we do not
have the resources to work on the manual as much as we would like.
Please send comments on the manual to <bug-glibc-manual@gnu.org>, and
not to the library bug-reporting address.

The file NOTES contains a description of the feature-test macros used
in the GNU C library, explaining how you can tell the library what
facilities you want it to make available.

Please see http://www.gnu.org/software/libc/bugs.html for bug reporting
information.  We are now using the Bugzilla system to track all bug reports.
This web page gives detailed information on how to report bugs properly.

The GNU C Library is free software.  See the file COPYING.LIB for copying
conditions, and LICENSES for notices about a few contributions that require
these additional notices to be distributed.