Go to file
Roland McGrath 19bc17a905 Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* intl/Makefile (copysrc): Add missing > in sed cmd.

Sat Mar 23 17:52:49 1996  Ulrich Drepper  <drepper@gnu.ai.mit.edu>

	* Makeconfig: Rename Makefile variable nlsdir to i18ndir and
	change value to $(datadir)/i18n.  `nls' is not an appropriate
	name.

	* Makefile (subdirs): Add new subdir wctype.

	* ctype/ctype-info.c: Add new global variable __ctype_names
	and initialize from _nl_C_LC_CTYPE.

	* ctype/ctype.h: In P1003.3b/D11 `alnum' is a separate character
        class.  Use bit 11.
	[_ISbit]: Protect definition of bitmasks because they are also
	used in wctype.h.

	* libio/genops.c (_IO_sputbackc, _IO_sungetc): Clear EOF flag
	after successfully pushing back a character.

	Fundamental changes in locale implementation.  Almost nothing
	from the old code is used anymore.
	* locale/charmap.c, locale/collate.c, locale/config.h,
 	locale/ctypedump.c, locale/hash.h, locale/keyword.gperf,
 	locale/keyword.h, locale/loadlocale.c, locale/locale-ctype.c,
 	locale/locale.c locale/localeconv.c, locale/localedef.c,
 	locale/localedef.h, locale/locfile-hash.c, locale/locfile-lex.c,
 	locale/locfile-parse.c, locale/messages.c, locale/monetary.c,
 	locale/numeric.c, locale/setlocale.c, locale/token.h,
 	locale/xmalloc.c: Removed.

	* locale/Makefile: Update for new locale implementation with
	program source code distributed in subdir.

	* locale/categories.def, locale/iso-4217.def: Updated file
        for new locale implementation.

	* locale/langinfo.h: Updated for new locale implementation.
	(ERA_D_T_FMT, ERA_T_FMT): New official values according to
	P1003.2b/D11.
	(_NL_COLLATE_NRULES, _NL_COLLATE_RULES, _NL_COLLATE_HASH_SIZE,
	_NL_COLLATE_HASH_LAYERS, _NL_COLLATE_TABLE_EB,
	_NL_COLLATE_TABLE_EL, _NL_COLLATE_UNDEFINED, _NL_COLLATE_EXTRA_EB,
	_NL_COLLATE_EXTRA_EL, _NL_CTYPE_NAMES_EB, _NL_CTYPE_NAMES_EL,
	_NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS, _NL_CTYPE_CLASS_NAMES,
	_NL_CTYPE_MAP_NAMES, _NL_CTYPE_WIDTH): New internal values for
	extended LC_CTYPE and LC_COLLATE implementation.

	* locale/simple-hash.c, locale/simple-hash.h, locale/xmalloc.c,
 	locale/xstrdup.c: Helper functions for locale related programs.

	* locale/C-collate.c, locale/C-ctype.c,
        locale/C-messages.c, locale/C-monetary.c,
        locale/C-numeric.c, locale/C-time.c,
        locale/lc-collate.c, locale/lc-ctype.c,
        locale/lc-messages.c, locale/lc-monetary.c,
        locale/lc-numeric.c, locale/lc-time.c: New implementation of locale
        functions, and new generated "C" locale data.

	* locale/loadlocale.c: Now handles word fields in locale binary
        automatically by changing the endianess if necessary.

	* locale/localeinfo.h (LIMAGIC): Changed magic number because
	of incompatible changes.
	(locale_data): Changed definition to allow word as a value type.
	(coll_sort_rule): Values for collation sorting mode.
	(_NL_CURRENT_WORD): New macro to access word value of locale entry.
	(__collate_table, __collate_extra): Declare new global variables
	for collation tables.

	* locale/programs/charmap-kw.gperf, locale/programs/charmap-kw.h,
        locale/programs/charmap.c, locale/programs/charset.c,
        locale/programs/charset.h, locale/programs/config.h,
        locale/programs/ctypedump.c, locale/programs/ld-collate.c,
        locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
        locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
        locale/programs/ld-time.c, locale/programs/linereader.c,
        locale/programs/linereader.h, locale/programs/locale.c,
        locale/programs/localedef.c, locale/programs/locales.h,
        locale/programs/locfile-kw.gperf, locale/programs/locfile-kw.h,
        locale/programs/locfile-token.h, locale/programs/locfile.c,
        locale/programs/locfile.h, locale/programs/stringtrans.c,
        locale/programs/stringtrans.h: Implementation of locale related
        programs.

	* locale/weight.h: Functions to access collation tables.

	* posix/unistd.h: Define _POSIX2_LOCALEDEF.

	* stdio-common/printf_fp.c: Fix bug with printing certain numbers
	< 10^-1.  Reported by Bill Metzenthen.

	* stdio-common/tfformat.c: Add new test for above bug.

	* string/strcoll.c, string/strxfrm.c: Real implementation of
        string collation according to ISO C.

	* wctype/Makefile, wctype/cname-lookup.h, wctype/iswctype.c,
        wctype/test_wctype.c, wctype/towctrans.c, wctype/wcfuncs.c,
        wctype/wctrans.c, wctype/wctype.c, wctype/wctype.h: New files.
        Implementation of wide character classes and mapping.
1996-03-28 08:30:38 +00:00
arpa initial import 1995-02-18 01:27:10 +00:00
assert Sat Nov 25 02:48:47 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu> 1995-11-26 17:37:11 +00:00
bare * Make-dist (README): Commit it to CVS if there is a CVS directory. 1995-03-29 16:58:35 +00:00
conf (NEED_INETADDR, NEED_INETATON): Define to 1, not empty. 1995-09-08 20:24:57 +00:00
csu Sun Feb 18 14:08:04 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1996-02-19 23:25:15 +00:00
ctype Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
db Sun Mar 17 07:19:33 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-17 12:36:52 +00:00
dirent Tue Mar 19 14:18:42 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-19 20:21:54 +00:00
elf Wed Mar 27 14:52:11 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-27 23:23:59 +00:00
gmon Contents were duplicated by botched patching. 1996-03-25 06:26:06 +00:00
gnu Fri Jan 12 13:40:01 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1996-01-13 00:46:48 +00:00
gnulib * Make-dist (README): Commit it to CVS if there is a CVS directory. 1995-03-29 16:58:35 +00:00
grp Fri Aug 25 12:12:42 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-08-25 19:23:32 +00:00
hurd Mon Mar 4 17:35:09 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-04 22:45:04 +00:00
inet * config.make.in (weak-symbols): Variable removed. 1996-03-19 21:10:11 +00:00
intl Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
io Mon Feb 26 10:22:30 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-02-27 00:55:03 +00:00
libio Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
locale Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
mach Thu Mar 21 11:19:15 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-21 16:23:21 +00:00
manual *** empty log message *** 1996-02-19 20:54:38 +00:00
math * sysdeps/i386/fpu/__math.h (asinh): Call log1p instead of __log1p. 1996-03-20 00:18:44 +00:00
misc Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
netinet initial import 1995-02-18 01:27:10 +00:00
po Wed Mar 20 11:28:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1996-03-21 15:20:37 +00:00
posix Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
protocols initial import 1995-02-18 01:27:10 +00:00
pwd Fri Aug 25 12:12:42 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-08-25 19:23:32 +00:00
resolv * config.make.in (weak-symbols): Variable removed. 1996-03-19 21:10:11 +00:00
resource * Make-dist (README): Commit it to CVS if there is a CVS directory. 1995-03-29 16:58:35 +00:00
rpc initial import 1995-02-18 01:27:10 +00:00
setjmp Thu Mar 14 06:01:07 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-14 11:20:03 +00:00
signal [__USE_BSD] (sig_t): New typedef. 1995-11-08 21:31:12 +00:00
socket Mon Dec 25 20:56:39 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-12-26 10:00:22 +00:00
stdio Wed Dec 20 18:23:10 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-12-21 10:00:22 +00:00
stdio-common Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
stdlib Wed Mar 27 14:52:11 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-27 23:23:59 +00:00
string Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
sunrpc * config.make.in (weak-symbols): Variable removed. 1996-03-19 21:10:11 +00:00
sys Sun Feb 18 15:08:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1996-02-19 23:14:44 +00:00
sysdeps Wed Mar 27 14:52:11 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-27 23:23:59 +00:00
sysvipc Tue Oct 10 23:08:53 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-10-11 03:34:46 +00:00
termios Wed Nov 8 16:31:25 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-11-09 10:00:21 +00:00
time Tue Mar 19 14:18:42 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-19 20:21:54 +00:00
wcsmbs Sat Feb 10 04:18:48 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1996-02-10 10:00:27 +00:00
wctype Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
.cvsignore Sat Oct 14 02:52:36 1995 Ulrich Drepper <drepper@ipd.info.uni-karlsruhe.de> 1995-10-16 01:37:51 +00:00
=__ify initial import 1995-02-18 01:27:10 +00:00
a.out.h initial import 1995-02-18 01:27:10 +00:00
aclocal.m4 initial import 1995-02-18 01:27:10 +00:00
alloca.h initial import 1995-02-18 01:27:10 +00:00
ansidecl.h initial import 1995-02-18 01:27:10 +00:00
assert.h initial import 1995-02-18 01:27:10 +00:00
ChangeLog Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
ChangeLog.1 * Makefile (distribute): Add ChangeLog.[0-9]. 1995-04-14 03:52:54 +00:00
ChangeLog.2 * Makefile (distribute): Add ChangeLog.[0-9]. 1995-04-14 03:52:54 +00:00
ChangeLog.3 * Makefile (distribute): Add ChangeLog.[0-9]. 1995-04-14 03:52:54 +00:00
ChangeLog.4 * Makefile (distribute): Add ChangeLog.[0-9]. 1995-04-14 03:52:54 +00:00
config-name.in initial import 1995-02-18 01:27:10 +00:00
config.guess Recognize mips-*-sysv* 1996-03-15 00:14:04 +00:00
config.h.in * config.make.in (weak-symbols): Variable removed. 1996-03-19 21:10:11 +00:00
config.make.in * config.make.in (weak-symbols): Variable removed. 1996-03-19 21:10:11 +00:00
config.sub (os): sunos[3456] -> sunos[34], sunos[56] have their own entries 1996-03-21 23:26:26 +00:00
configure Mon Mar 25 03:35:16 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-25 17:48:26 +00:00
configure.in Mon Mar 25 03:35:16 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-25 17:48:26 +00:00
crypt-README initial import 1995-02-18 01:27:10 +00:00
ctype.h initial import 1995-02-18 01:27:10 +00:00
dirent.h initial import 1995-02-18 01:27:10 +00:00
elf.h (os=gnu*): Always set elf=yes, not just for os=gnu*elf*. 1995-05-13 06:16:24 +00:00
endian.h initial import 1995-02-18 01:27:10 +00:00
errno.h * sysdeps/unix/sysv/linux/fcntlbits.h: Moved from linux/i386. 1996-01-24 20:36:21 +00:00
error.h Sun Dec 10 09:56:06 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-12-11 10:00:21 +00:00
extra-lib.mk Tue Oct 31 00:07:29 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-10-31 06:54:40 +00:00
fcntl.h initial import 1995-02-18 01:27:10 +00:00
features.h * sysdeps/i386/fpu/__math.h (asinh): Call log1p instead of __log1p. 1996-03-20 00:18:44 +00:00
fnmatch.h initial import 1995-02-18 01:27:10 +00:00
ftw.h initial import 1995-02-18 01:27:10 +00:00
getopt.h initial import 1995-02-18 01:27:10 +00:00
glob.h initial import 1995-02-18 01:27:10 +00:00
gnu-stabs.h initial import 1995-02-18 01:27:10 +00:00
gnu-versions.h (_GNU_GLOB_INTERFACE_VERSION): New macro. 1995-12-06 14:10:23 +00:00
grp.h initial import 1995-02-18 01:27:10 +00:00
INSTALL initial import 1995-02-18 01:27:10 +00:00
install-sh (transformbasename): Fix misspelling in initialization. 1995-12-06 09:44:53 +00:00
langinfo.h Sun Mar 5 19:40:13 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-03-06 03:00:08 +00:00
libc-symbols.h * features.h (__FAVOR_BSD): Define only if _BSD_SOURCE is defined 1996-03-19 21:59:41 +00:00
libintl.h Fri Nov 10 14:15:21 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-11-10 20:38:31 +00:00
limits.h Tue Mar 19 14:18:42 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-19 20:21:54 +00:00
locale.h initial import 1995-02-18 01:27:10 +00:00
Make-dist Wed Mar 20 11:28:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1996-03-21 15:20:37 +00:00
Makeconfig Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
Makefile Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-28 08:30:38 +00:00
Makefile.in initial import 1995-02-18 01:27:10 +00:00
Makerules Wed Mar 20 11:28:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1996-03-21 15:20:37 +00:00
MakeTAGS Mon Mar 25 03:35:16 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-03-25 17:48:26 +00:00
malloc.h initial import 1995-02-18 01:27:10 +00:00
math.h initial import 1995-02-18 01:27:10 +00:00
mathcalls.h Mon Mar 4 20:54:40 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1996-03-05 21:41:30 +00:00
memory.h initial import 1995-02-18 01:27:10 +00:00
mkinstalldirs Remove weird unnecessary shell construction. 1995-07-26 04:26:23 +00:00
move-if-change * Makefile (subdirs): Add elf first. 1995-02-21 06:15:34 +00:00
munch-tmpl.c * csu/Makefile [$(elf)=yes] (have-initfini): Set to yes. 1995-07-27 09:00:07 +00:00
munch.awk initial import 1995-02-18 01:27:10 +00:00
netdb.h Tue Aug 22 16:49:12 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-08-22 22:47:57 +00:00
NEWS * features.h (__FAVOR_BSD): Define only if _BSD_SOURCE is defined 1996-03-19 21:59:41 +00:00
nlist.h initial import 1995-02-18 01:27:10 +00:00
NOTES initial import 1995-02-18 01:27:10 +00:00
o-iterator.mk Fri Mar 17 12:58:37 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-03-17 18:42:51 +00:00
obstack.h initial import 1995-02-18 01:27:10 +00:00
paths.h initial import 1995-02-18 01:27:10 +00:00
poll.h initial import 1995-02-18 01:27:10 +00:00
posix1_lim.h initial import 1995-02-18 01:27:10 +00:00
posix2_lim.h initial import 1995-02-18 01:27:10 +00:00
printf.h initial import 1995-02-18 01:27:10 +00:00
printsources initial import 1995-02-18 01:27:10 +00:00
pwd.h initial import 1995-02-18 01:27:10 +00:00
queue.h Tue Jan 2 00:50:10 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1996-01-02 06:19:15 +00:00
README * Make-dist (README): Commit it to CVS if there is a CVS directory. 1995-03-29 16:58:35 +00:00
README.template initial import 1995-02-18 01:27:10 +00:00
regex.h Wed May 17 16:50:21 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-05-18 09:00:09 +00:00
resolv.h initial import 1995-02-18 01:27:10 +00:00
Rules Wed Feb 21 02:25:07 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> 1996-02-22 15:52:20 +00:00
search.h Sat Sep 16 17:47:19 1995 Ulrich Drepper <drepper@ipd.info.uni-karlsruhe.de> 1995-09-17 20:23:15 +00:00
set-hooks.h initial import 1995-02-18 01:27:10 +00:00
set-init.c Fri May 19 17:16:46 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-05-20 00:13:43 +00:00
setjmp.h initial import 1995-02-18 01:27:10 +00:00
sgtty.h initial import 1995-02-18 01:27:10 +00:00
signal.h initial import 1995-02-18 01:27:10 +00:00
stdio.h * Makefile (subdirs): Replace stdio with stdio-common and $(stdio). 1995-10-17 00:41:39 +00:00
stdlib.h initial import 1995-02-18 01:27:10 +00:00
string.h initial import 1995-02-18 01:27:10 +00:00
strings.h initial import 1995-02-18 01:27:10 +00:00
syslog.h initial import 1995-02-18 01:27:10 +00:00
tar.h initial import 1995-02-18 01:27:10 +00:00
termios.h initial import 1995-02-18 01:27:10 +00:00
time.h initial import 1995-02-18 01:27:10 +00:00
ttyent.h initial import 1995-02-18 01:27:10 +00:00
unistd.h initial import 1995-02-18 01:27:10 +00:00
utime.h Fri Aug 25 12:12:42 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-08-25 19:23:32 +00:00
values.h Fri May 19 17:16:46 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1995-05-20 00:13:43 +00:00
version.c Wed Mar 20 11:28:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1996-03-21 15:20:37 +00:00
version.h Wed Mar 20 11:28:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1996-03-21 15:20:37 +00:00
wordexp.h initial import 1995-02-18 01:27:10 +00:00

This directory contains the version 1.09.6 test 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 has been ported to the following
configurations:

		alpha-dec-osf1
		i386-bsd4.3
		i386-force_cpu386-none
		i386-gnu (for Hurd development only)
		i386-isc2.2
		i386-isc3
		i386-sco3.2
		i386-sco3.2v4
		i386-sequent-bsd
		i386-sysv
		i386-sysv4
		i960-nindy960-none
		m68k-hp-bsd4.3
		m68k-mvme135-none
		m68k-mvme136-none
		m68k-sony-newsos3
		m68k-sony-newsos4
		m68k-sun-sunos4
		mips-dec-ultrix4
		mips-sgi-irix4
		sparc-sun-solaris2
		sparc-sun-sunos4

Porting the library is not hard.  If you are interested in doing a port,
please get on the mailing list by sending electronic mail to
bug-glibc-request@prep.ai.mit.edu.

The GNU C library now includes Michael Glad's Ultra Fast Crypt, which
provides the Unix `crypt' function, plus some other entry points.
Because of the United States export restriction on DES implementations,
we are distributing this code separately from the rest of the C
library.  There is an extra distribution tar file just for crypt; it is
called `glibc-1.09.6-crypt.tar.gz'.  You can just unpack the crypt
distribution along with the rest of the C library and build; you can
also build the library without getting crypt.  Users outside the USA
can get the crypt distribution via anonymous FTP from ftp.uni-c.dk
[129.142.6.74], or another archive site outside the USA.  Archive
maintainers are encouraged to copy this distribution to their archives
outside the USA.  Please get it from ftp.uni-c.dk; transferring this
distribution from prep.ai.mit.edu (or any other site in the USA) to a
site outside the USA is in violation of US export laws.

See the file INSTALL to find out how to configure, build, install, and port
the GNU C library.

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@prep.ai.mit.edu, 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.

Send bug reports to bug-glibc@prep.ai.mit.edu.

The GNU C Library is free software.  See the file COPYING.LIB for copying
conditions.