Re: portability checks, errors and warnings

2007-02-04 Thread Paul Eggert
Bruno Haible <[EMAIL PROTECTED]> writes: > I'm worried that if you activate the replacement > # define strstr rpl_strstr > with its lib/strstr.o file depending on _GL_CHECK_PORTABILITY, or if you > activate the declaration > extern char *strstr (char const *__haystack, char const *__needle); >

Re: xalloc.h (x2nrealloc): Don't always double the buffer size.

2007-02-04 Thread Jim Meyering
Bruno Haible <[EMAIL PROTECTED]> wrote: > Jim Meyering wrote: >> I've just changed xalloc's x2nrealloc to do n = 3n/2, rather than n *= 2, > > Which means that the time needed for realloc() will grow by a factor of 1.7 > on average. If it matters - haven't measured it -, I would suggest to use >

Re: xalloc.h (x2nrealloc): Don't always double the buffer size.

2007-02-04 Thread Jim Meyering
Paul Eggert <[EMAIL PROTECTED]> wrote: > Jim Meyering <[EMAIL PROTECTED]> writes: > >> - if (((size_t) -1) / 2 / s < n) >> + if ((2 * (((size_t) -1 - 1) / 3)) / s < n) > > That's not quite right. As an extreme case, suppose S is > SIZE_MAX/4 + 1 and N is 2. Then (2 * (((size_t) -1 - 1)

Re: pwd fails to traverse unreadable directory

2007-02-04 Thread Jim Meyering
I wrote: ... > I'll add tests to coreutils some time next week. I've added the test. However, in its current state, it will fail on systems with inadequate getcwd. So before long, I'll have to find a work-around. Either skip the test on such systems, or maybe change gnulib's getcwd.c to try the v

Re: strstr, strcase, strcasestr, and i18n

2007-02-04 Thread Bruno Haible
Paul Eggert wrote: > > - strstr: This function's behaviour is not clearly defined. POSIX says > > that it compares a "string" with a "sequence of bytes". Which a priori > > is nonsense, since the elements of strings are characters. > > No, elements of "character strings" are characters.

Re: AIX 4.3.3 IBM C compiler patch for m4-1.4.8

2007-02-04 Thread Eric Blake
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 According to Albert Chin on 2/4/2007 7:47 AM: > The IBM C compiler on AIX 4.3.3 (v6) doesn't like signed bit types: > gmake[1]: Entering directory `/opt/build/m4-1.4.8/src' > xlc-I../lib -I../lib -O2 -qro -qroconst -qmaxmem=-1 -qarch=com -c

Re: AIX 4.3.3 IBM C compiler patch for m4-1.4.8

2007-02-04 Thread Albert Chin
On Sun, Feb 04, 2007 at 07:52:08AM -0700, Eric Blake wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > According to Albert Chin on 2/4/2007 7:47 AM: > > The IBM C compiler on AIX 4.3.3 (v6) doesn't like signed bit types: > > gmake[1]: Entering directory `/opt/build/m4-1.4.8/src' > >

Re: portability checks, errors and warnings

2007-02-04 Thread Bruno Haible
Paul Eggert wrote: > > What does "otherwise" mean? Either 'configure' finds the system's strstr > > OK or it finds problems. What is the third alternative? > > The third alternative is that 'configure' does not check whether the > the system's strstr is OK. Ah, I see: this is the case when the gn

javacomp-script, javacomp: make better use of gcj >= 4.3

2007-02-04 Thread Bruno Haible
Hi, So far, the javacomp-script and javacomp scripts have avoided to use gcj if the use requires support for particular source code level of Java or output of particular bytecode class versions. (Because gcj had no options for enforcing so.) This changes with gcj-4.3, which will internally use IBM

Re: gl_STDARG_H on AIX 5.3 with IBM v8 C compiler

2007-02-04 Thread Albert Chin
On Sat, Feb 03, 2007 at 06:35:53PM -0800, Paul Eggert wrote: > Albert Chin <[EMAIL PROTECTED]> writes: > > > It looks like the only way > > to get the builtin va_copy() to work on AIX 5.3 is to add > > -qlanglvl=extc99 to CFLAGS? > > For what it's worth, we should be encouraging that anyway. > AC

proposed comments for stdarg module

2007-02-04 Thread Paul Eggert
Here's a proposed patch to the stdarg module description, to describe the benefits of using AC_PROG_CC_STDC with this module. 2007-02-04 Paul Eggert <[EMAIL PROTECTED]> * modules/stdarg (configure.ac): Add comment suggestiong AC_PROG_CC_STDC. --- modules/stdarg.~1.1.~ 200

Re: AIX 4.3.3 IBM C compiler patch for m4-1.4.8

2007-02-04 Thread Paul Eggert
Eric Blake <[EMAIL PROTECTED]> writes: > If it is getting the gnulib bool, then we should figure out how to > make the gnulib bool pick a type that will work for this usage > pattern. I don't know any way to do this. 'bool' must promote to int, so the only plausible candidates that can be used f

Re: AIX 4.3.3 IBM C compiler patch for m4-1.4.8

2007-02-04 Thread Bruno Haible
Paul Eggert wrote: > a signed bitfield has the value 0 or -1 (on two's complement hosts). Some compilers also give warnings if you use 'int foo : 1;'. We don't want these warnings to occur in code of gnulib users. > Admittedly this problem should be documented. Here's a proposed patch. Thanks.

new module description field 'configure.ac-early'

2007-02-04 Thread Bruno Haible
Hi, There's more than one module which needs some autoconf macros to be executed "early". I'm generalizing the two existing special cases into a generic handling of a 'configure.ac-early' section. 2007-02-04 Bruno Haible <[EMAIL PROTECTED]> New module description section 'configure.ac-

Re: proposed comments for stdarg module

2007-02-04 Thread Bruno Haible
Paul Eggert wrote: > Here's a proposed patch to the stdarg module description, to describe > the benefits of using AC_PROG_CC_STDC with this module. > > 2007-02-04 Paul Eggert <[EMAIL PROTECTED]> > > * modules/stdarg (configure.ac): Add comment suggestiong > AC_PROG_CC_STDC. Rather

Re: proposed comments for stdarg module

2007-02-04 Thread Paul Eggert
Bruno Haible <[EMAIL PROTECTED]> writes: > Rather than putting a mere comment, you can now enforce this invocation, by > adding this to the module description: > > configure.ac-early: > AC_REQUIRE([AC_PROG_CC_STDC]) OK, thanks, I installed this: 2007-02-04 Paul Eggert <[EMAIL PROTECTED]>

Re: new module description field 'configure.ac-early'

2007-02-04 Thread Paul Eggert
Bruno Haible <[EMAIL PROTECTED]> writes: > I'm generalizing the two existing special cases into a generic > handling of a 'configure.ac-early' section. Thanks, that's a nice addition. I added the following to the ChangeLog entry to record the changes made to the two modules files. * mod

Re: portability checks, errors and warnings

2007-02-04 Thread Paul Eggert
Bruno Haible <[EMAIL PROTECTED]> writes: > 1) If the maintainer has not included the strstr module but uses the > strstr function and activates _GL_CHECK_PORTABILITY: With your proposal > he will get a link error about function 'rpl_strstr', and will likely > report it as a bug in

new module 'mbschr'

2007-02-04 Thread Bruno Haible
This adds a new module, a variant of strchr() that works in multibyte locales. 2007-02-04 Bruno Haible <[EMAIL PROTECTED]> New module mbschr. * modules/mbschr: New file. * lib/mbschr.c: New file. * lib/string_.h (strchr): Add a conditional link warning. (

new module 'mbsrchr'

2007-02-04 Thread Bruno Haible
mbsrchr() is the analogon of strrchr() that works with characters strings (in other words, with strings also in multibyte locales). 2007-02-04 Bruno Haible <[EMAIL PROTECTED]> New module mbsrchr. * modules/mbsrchr: New file. * lib/mbsrchr.c: New file. * lib/strin

new module mbsstr, remove module strstr

2007-02-04 Thread Bruno Haible
This introduces a new module mbsstr. mbsstr() is like strstr(), except it works on character strings (i.e. on multibyte strings). The module strstr is no longer needed, since no platforms are known that don't have strstr(). 2007-02-04 Bruno Haible <[EMAIL PROTECTED]> New module mbsstr.

new module mbscasecmp, reduce goal of module strcase

2007-02-04 Thread Bruno Haible
This creates a module for the function mbscasecmp(), a variant of strcasecmp() that works with multibyte strings. The module strcase now NO LONGER takes care of providing an internalionalized strcasecmp()!! It only provides a replacement for platforms which don't have this function. 2007-02-04 B

Re: new module mbscasecmp, reduce goal of module strcase

2007-02-04 Thread Bruno Haible
Addendum to the last patch: --- m4/strcase.m4 27 Jan 2007 14:43:17 - 1.8 +++ m4/strcase.m4 5 Feb 2007 02:04:43 - @@ -1,4 +1,4 @@ -# strcase.m4 serial 6 +# strcase.m4 serial 7 dnl Copyright (C) 2002, 2005-2007 Free Software Foundation, Inc. dnl This file is free software;

strncasecmp declaration tweak

2007-02-04 Thread Bruno Haible
This simplies a bit lib/string.h and adjusts the corresponding link warning. 2007-02-04 Bruno Haible <[EMAIL PROTECTED]> Simplify handling of strncasecmp. * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change the conditional link warning. * m4/str

Re: new module mbscasecmp, reduce goal of module strcase

2007-02-04 Thread Bruno Haible
Addendum #2: --- m4/string_h.m4 5 Feb 2007 02:15:46 - 1.10 +++ m4/string_h.m4 5 Feb 2007 02:25:52 - @@ -32,6 +32,7 @@ HAVE_DECL_MEMRCHR=1; AC_SUBST([HAVE_DECL_MEMRCHR]) HAVE_STPCPY=1; AC_SUBST([HAVE_STPCPY]) HAVE_STPNCPY=1; AC_SUB

new module mbscasestr, remove module strcasestr

2007-02-04 Thread Bruno Haible
This introduces a new module mbscasestr. mbscasestr() is like glibc's strcasestr(), except it works on character strings (i.e. on multibyte strings). The module strcasestr now only provides an non-internationalized equivalent to glibc's non-internationalized function!! 2007-02-04 Bruno Haible <

Re: new module mbscasecmp, reduce goal of module strcase

2007-02-04 Thread Bruno Haible
Addendum #3: --- m4/strcase.m4 5 Feb 2007 02:09:22 - 1.9 +++ m4/strcase.m4 5 Feb 2007 02:46:45 - @@ -1,4 +1,4 @@ -# strcase.m4 serial 7 +# strcase.m4 serial 8 dnl Copyright (C) 2002, 2005-2007 Free Software Foundation, Inc. dnl This file is free software; the Free Softw

Re: new module mbscasestr, remove module strcasestr

2007-02-04 Thread Bruno Haible
An addendum to this one as well: --- m4/strcasestr.m45 Feb 2007 02:42:27 - 1.5 +++ m4/strcasestr.m45 Feb 2007 02:49:39 - @@ -1,4 +1,4 @@ -# strcasestr.m4 serial 5 +# strcasestr.m4 serial 6 dnl Copyright (C) 2005, 2007 Free Software Foundation, Inc. dnl This file is free sof

new module mbscspn

2007-02-04 Thread Bruno Haible
The function mbscspn() is a variant of strcspn() which works also with multibyte strings. 2007-02-04 Bruno Haible <[EMAIL PROTECTED]> New module mbscspn. * modules/mbscspn: New file. * lib/mbscspn.c: New file. * lib/string_.h (strcspn): Add a conditional link war

new module mbspbrk

2007-02-04 Thread Bruno Haible
The function mbspbrk() is like strpbrk(), except that it works also in multibyte locales. 2007-02-04 Bruno Haible <[EMAIL PROTECTED]> New module mbspbrk. * modules/mbspbrk: New file. * lib/mbspbrk.c: New file. * lib/string_.h (strpbrk): Add a conditional link war

new module mbsspn

2007-02-04 Thread Bruno Haible
The function mbsspn() is like strspn(), except that it also works in multibyte locales. 2007-02-04 Bruno Haible <[EMAIL PROTECTED]> New module mbsspn. * modules/mbsspn: New file. * lib/mbsspn.c: New file. * lib/string_.h (strspn): Add a conditional link warning.

new module mbstok_r

2007-02-04 Thread Bruno Haible
The function mbstok_r is like strtok_r, except that it also works on multibyte strings. 2007-02-04 Bruno Haible <[EMAIL PROTECTED]> New module mbstok_r. * modules/mbstok_r: New file. * lib/mbstok_r.c: New file. * lib/string_.h (strtok_r): Change argument names to

warning message tweak

2007-02-04 Thread Bruno Haible
This clarifies that the messages are warnings, not errors. 2007-02-04 Bruno Haible <[EMAIL PROTECTED]> * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the warning message. --- lib/string_.h 5 Feb 2007 03:34:24 - 1.17 +++ lib/string_.h 5 Fe

memset.c needs #include ?

2007-02-04 Thread Ben Pfaff
Most non-trivial .c files in gnulib's lib directory include config.h, but some do not. One that is causing problems for compiling GNU PSPP in some environments is memmem.c. This file includes gnulib's replacement , which uses restrict. If this is compiled on a system that lacks support for the C9

Re: AIX 4.3.3 IBM C compiler patch for m4-1.4.8

2007-02-04 Thread Eric Blake
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 According to Paul Eggert on 2/4/2007 10:59 AM: > I don't know any way to do this. 'bool' must promote to int, so > the only plausible candidates that can be used for bit-fields are > int and signed int. But bool bitfields have a value 0 or 1, whereas

Re: AIX 4.3.3 IBM C compiler patch for m4-1.4.8

2007-02-04 Thread Paul Eggert
Eric Blake <[EMAIL PROTECTED]> writes: > bool foo BOOL_BITFIELD; I'd suggest rather something like this: typedef unsigned int bool_bitfield; so that your structure members can look like this: bool_bitfield foo : 1; This doesn't rely on any autoconf or cpp magic, which is a win.

Re: memset.c needs #include ?

2007-02-04 Thread Paul Eggert
Ben Pfaff <[EMAIL PROTECTED]> writes: > I assume the memmem.c problem should be fixed just by including > . Yes, thanks. getsubopt.c is another. I installed this: 2007-02-04 Paul Eggert <[EMAIL PROTECTED]> * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h. * lib/m