Commit Graph
1139 Commits
Author SHA1 Message Date
Paul Eggert 8b401988f8 assert-h: new module, which supports C1X-style static_assert
* lib/assert.in.h, m4/assert_h.m4, modules/assert-h: New files.
* lib/verify.h: Revamp so that this can be copied into assert.h,
while retaining the ability to use it standalone as before.
Rename private identifiers so as not to encroach on the
standard C namespace, since this is now used by assert.h.
(_GL_VERIFY_TYPE): New macro, factoring out differing parts of
the old verify_true.
(_GL_VERIFY_TRUE): New macro, with much of the contents of
the old verify_true.  Use _GL_VERIFY_TYPE.
(_GL_VERIFY): New macro, with much of the contents of the old verify.
(static_assert): New macro, if _GL_STATIC_ASSERT_H
is defined and static_assert is not; _GL_STATIC_ASSERT_H is
defined when this file is copied into the replacement assert.h.
(_Static_assert): New macro, if _GL_STATIC_ASSERT_H is defined
and _Static_assert is not built in.
(verify_true, verify): Define only if _GL_STATIC_ASSERT_H is not
defined, and use the new macros mentioned above.
* doc/posix-headers/assert.texi: Document this.
2011-05-05 22:43:18 -07:00
Bruno Haible 864eeee51d fclose, fflush: Respect rules for use of AC_LIBOBJ.
* m4/fflush.m4 (gl_FUNC_FFLUSH): Don't invoke gl_REPLACE_FCLOSE.
* m4/fclose.m4 (gl_FUNC_FCLOSE): Invoke gl_FUNC_FFLUSH_STDIN and
gl_REPLACE_FCLOSE here.
* modules/fflush (Depends-on): Remove fclose.
* doc/posix-functions/fclose.texi: Mention module 'fflush' only in
combination with module 'fclose'.
2011-05-06 00:34:34 +02:00
Bruno Haible fa6f00004c signal: Define sighandler_t.
* lib/signal.in.h (sighandler_t): New type.
* m4/signal_h.m4 (gl_SIGNAL_H): Require AC_USE_SYSTEM_EXTENSIONS. Test
whether sighandler_t is defined.
(gl_SIGNAL_H_DEFAULTS): Initialize HAVE_SIGHANDLER_T.
* modules/signal (Depends-on): Add extensions.
(Makefile.am): Substitute HAVE_SIGHANDLER_T.
* doc/posix-headers/signal.texi: Mention the problem with sighandler_t.
Suggested by Markus Steinborn <gnugv_maintainer@yahoo.de>.
2011-05-05 19:03:57 +02:00
Bruno Haible 99659bac7a Support for conditional dependencies.
* doc/gnulib.texi (Module description): Document the syntax of
conditional dependencies.
* gnulib-tool: New option --conditional-dependencies.
(func_usage): Document it.
(cond_dependencies): New variable.
(func_get_automake_snippet_conditional,
func_get_automake_snippet_unconditional): New functions, extracted from
func_get_automake_snippet.
(func_get_automake_snippet): Use them.
(sed_first_32_chars): New variable.
(func_module_shellfunc_name): New function.
(func_module_shellvar_name): New function.
(func_module_conditional_name): New function.
(func_uncond_add_module, func_conddep_add_module, func_cond_module_p,
func_cond_module_condition): New functions.
(func_modules_transitive_closure): Add support for conditional
dependencies.
(func_emit_lib_Makefile_am): For a conditional module, enclose the
conditional automake snippet in an automake conditional.
(func_emit_autoconf_snippets): Emit shell functions that contain the
code for conditional modules.
(func_import, func_create_testdir): Update specification.
2011-05-03 23:38:19 +02:00
Eric Blake bcbcf0c59c fflush: also replace fclose when fixing fflush
This fixes the fclose failures detected in the previous patch,
but only when the GPL fflush module is also in use.  That is
because the need for behavior of resetting seekable input streams
is much less common, and the fix more complex.  The LGPLv2+ test
for fclose() in isolation is relaxed to pass if fflush is not
being replaced to cater to input streams.

* modules/fflush (Depends-on): Add fclose.
* m4/fflush.m4 (gl_FUNC_FFLUSH): Also replace fclose.
* lib/fclose.c (rpl_fclose): Don't cause spurious failures on
memstreams with no backing fd.
* doc/posix-functions/fclose.texi (fclose): Document the use of
fflush module to fix the bug.
* tests/test-fclose.c (main): Relax test when fclose is used in
isolation.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-05-02 15:23:49 -06:00
Eric Blake 1fc3525d1f fclose: add some tests
POSIX requires that fclose() on seekable input streams rewind back
to the next byte not actually given to the application.  Glibc fails
this test.  See:
http://sourceware.org/bugzilla/show_bug.cgi?id=3746
http://sourceware.org/bugzilla/show_bug.cgi?id=12724

Likewise for FreeBSD.

Cygwin 1.7.9 and Solaris 10 pass, however.

* modules/fclose-tests: New test module.
* tests/test-fclose.c: New file.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-05-02 15:23:49 -06:00
Bruno Haible 9d916bc07a New modules 'vfscanf', 'vscanf'.
* modules/vfscanf: New file.
* modules/vscanf: New file.
* m4/stdio_h.m4 (gl_STDIO_H): Don't set GNULIB_VFSCANF, GNULIB_VSCANF
here.
* doc/posix-functions/vfscanf.texi: Mention module 'vfscanf'.
* doc/posix-functions/vscanf.texi: Mention module 'vscanf'.
2011-04-30 14:53:35 +02:00
Bruno Haible 241bef9820 sys_uio: Make <sys/uio.h> self-contained.
* lib/sys_uio.in.h: Include <sys/types.h> before <sys/uio.h>.
* doc/posix-headers/sys_uio.texi: Mention the OpenBSD problem.
2011-04-30 13:54:47 +02:00
Bruno Haible 95bbafdb71 sys_socket: Ensure 'struct iovec' definition.
* lib/sys_socket.in.h: Include <sys/uio.h> also on platforms that have
<sys/socket.h>.
* doc/posix-headers/sys_socket.texi: Mention the OpenBSD problem.
2011-04-30 13:38:43 +02:00
Eric Blake 74175b903b getaddrinfo: fix gai_strerror signature
Several platforms declare gai_strerror to return char* rather than
const char*.  Worse, on mingw, if UNICODE is defined, it is defined
to return WCHAR*, which means the result is in unicode but an
application expecting bytes for characters will only see a one-byte
answer.

* m4/getaddrinfo.m4 (gl_GETADDRINFO): Detect broken signatures,
and work around mingw with UNICODE defined.
(gl_PREREQ_GETADDRINFO): Drop redundant decl check.
* m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Add witness.
* modules/netdb (Makefile.am): Substitute it.
* lib/netdb.in.h (gai_strerror): Declare replacement.
* lib/gai_strerror.c (rpl_gai_strerror): Fix signature.
* doc/posix-functions/gai_strerror.texi (gai_strerror): Document
the fix.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-04-28 17:35:16 -06:00
Eric Blake 8585ce2ff5 getcwd: fix mingw bugs
On mingw, getcwd(NULL,1) succeeds, even though glibc documents that
with a non-zero size, the allocation will not exceed that many bytes.

On mingw, getcwd has the wrong signature.  However, we don't have
to check for this if anything else triggers the replacement.

Also, fix a type bug that crept into the original getcwd-lgpl commit.

* m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Detect one mingw bug.
* doc/posix-functions/getcwd.texi (getcwd): Document the problems.
* lib/getcwd-lgpl.c (rpl_getcwd): Fix return type.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-04-27 20:51:13 -06:00
Bruno Haible a4e3a1d306 mkstemps: Ensure declaration on MacOS X 10.5.
* lib/stdlib.in.h: Include <unistd.h> when mkstemps is requested.
* doc/glibc-functions/mkstemps.texi: Document header file problem on
MacOS X.
2011-04-28 00:06:48 +02:00
Bruno Haible e57376fc22 mkstemp: More documentation.
* doc/posix-functions/mkstemp.texi: Document header file problem on
MacOS X.
2011-04-28 00:05:08 +02:00
Bruno Haible 5ea8bedd0c clean-temp: Clarify what it does.
* lib/clean-temp.h: Add more comments.
* doc/posix-functions/mkstemp.texi: Tweak reference to 'clean-temp'
module.
* doc/glibc-functions/mkostemp.texi: Mention 'clean-temp' here too.
* doc/glibc-functions/mkstemps.texi: Likewise.
* doc/glibc-functions/mkostemps.texi: Likewise.
2011-04-27 23:29:32 +02:00
Eric Blake 043be67acb getcwd-lgpl: new module
For programs that aren't worried about being invoked from an
current working directory longer than PATH_MAX (perhaps because
the program always does chdir to a sane location first), the
getcwd module is overkill, given that all modern portability
targets have a getcwd that works on short names.

* modules/getcwd-lgpl: New module.
* lib/getcwd-lgpl.c: New file.
* doc/posix-functions/getcwd.texi (getcwd): Document it.
* MODULES.html.sh (lacking POSIX:2008): Likewise.
* modules/getcwd (configure.ac): Set C witness.
* m4/getcwd.m4 (gl_FUNC_GETCWD_LGPL): New macro.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-04-27 11:27:55 -06:00
Reuben Thomas 7338e602a2 mkstemp: replace if system version uses wrong permissions
* m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Add test for non-owner
read/write mode bits set in file created by mkstemp.
* doc/posix-functions/mkstemp.texi (mkstemp): Document the fix.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-04-27 10:51:00 -06:00
Reuben Thomas ca1502f78a mkstemp: mention clean-temp module
* lib/mkstemp.c: Add comment.
* doc/posix-functions/mkstemp.texi (mkstemp): Likewise.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-04-27 08:16:19 -06:00
Bruno Haible b9453f8ce1 strtod: Remove check for strtod, unless supporting old platforms.
* modules/strtod-obsolete: New file.
* m4/strtod-obsolete.m4: New file.
* m4/strtod.m4 (gl_FUNC_STRTOD): Don't check whether strtod is declared
if gl_FUNC_STRTOD_OBSOLETE is not also defined.
* modules/strtod (Depends-on): Add strtod-obsolete.
* doc/posix-functions/strtod.texi: Mention module strtod-obsolete.
2011-04-25 20:53:41 +02:00
Bruno Haible 4a2a66e445 dup2: Remove check for dup2, unless supporting old obsolete platforms.
* modules/dup2-obsolete: New file.
* m4/dup2-obsolete.m4: New file.
* m4/dup2.m4 (gl_FUNC_DUP2): Don't check whether dup2 exists if
gl_FUNC_DUP2_OBSOLETE is not also defined.
* modules/dup2 (Depends-on): Add dup2-obsolete.
* doc/posix-functions/dup2.texi: Mention module dup2-obsolete.
2011-04-25 19:45:09 +02:00
Bruno Haible e3a7a9fd96 strnlen: Avoid memchr related link error on old obsolete platforms.
* modules/memchr-obsolete: New file.
* m4/memchr-obsolete.m4: New file.
* m4/memchr.m4 (gl_FUNC_MEMCHR): Don't check whether memchr exists if
gl_FUNC_MEMCHR_OBSOLETE is not also defined.
* modules/memchr (Depends-on): Add memchr-obsolete.
* modules/strnlen (Depends-on): Likewise.
* doc/posix-functions/memchr.texi: Mention module memchr-obsolete.
2011-04-25 19:43:59 +02:00
Eric Blake 06d76f63c6 passfd: allow compilation on mingw
The passfd module now skips on mingw, rather than failing to compile.

It may be nice to add a sendmsg and recvmsg module in the future,
but for now passfd is the only client that cares.

* modules/sys_socket (Depends-on): Add sys_uio.
* lib/sys_socket.in.h [!@HAVE_SYS_SOCKET_H@]: Use it for struct
iovec and a minimal struct msghdr.
* tests/test-sys_socket.c (main): Enhance test.
* m4/afunix.m4 (gl_SOCKET_AFUNIX): Detect recvmsg/sendmsg.
* lib/passfd.c (include): Drop <sys/uio.h>; <sys/sockets.h> is
guaranteed to provide what we need.
(sendmsg, recvmsg): Declare fallbacks if we lack sendmsg.
* modules/passfd-tests (Depends-on): Add sys_wait.
* tests/test-passfd.c (main): Skip test on mingw, for now.
* doc/posix-headers/sys_socket.texi (sys/socket.h): Document the
partial 'struct msghdr' implementation.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-04-21 14:35:06 -06:00
Eric Blake 753425d56e sys_uio: new module
For now, just provide the types used by sys/socket.  We could
add readv() and writev() later, if desired.

* modules/sys_uio: New module.
* modules/sys_uio-tests: Likewise.
* lib/sys_uio.in.h: New file.
* m4/sys_uio_h.m4: Likewise.
* tests/test-sys_uio.c: Likewise.
* doc/posix-headers/sys_uio.texi (sys/uio.h): Document it.
* MODULES.html.sh (systems lacking POSIX:2008): Likewise.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-04-21 10:43:09 -06:00
Bruno Haible 12856373f8 Move the support of O_NONBLOCK in open() to the 'open' module.
* modules/nonblocking (Depends-on): Remove 'open'.
* m4/nonblocking.m4 (gl_NONBLOCKING_IO_BODY): Set
gl_cv_have_open_O_NONBLOCK.
* m4/open.m4 (gl_FUNC_OPEN): Replace open() also when required for
O_NONBLOCK support.
* doc/posix-functions/open.texi: Document support for O_NONBLOCK.
2011-04-19 10:38:30 +02:00
Bruno Haible d8fb6162b9 strchrnul: Tweak last commit.
* doc/glibc-functions/strchrnul.texi: Add more details about Cygwin
bug.
* lib/string.in.h (strchrnul): Use same arguments in _GL_FUNCDECL_RPL
as in _GL_FUNCDECL_SYS.
* m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Invoke gl_PREREQ_STRCHRNUL after
AC_LIBOBJ. When cross-compiling, say "guessing yes" not "yes".
2011-04-16 12:10:16 +02:00
Eric Blake 2aa729ac6a strchrnul: work around cygwin bug
A misplaced * means that cygwin 1.7.9 dereferences NULL rather
than returning the location of the trailing NUL byte.

* doc/glibc-functions/strchrnul.texi (strchrnul): Document bug.
* m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Detect it.
* m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New witness.
* modules/string (Makefile.am): Substitute it.
* lib/string.in.h (strchrnul): Use it.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-04-15 13:53:50 -06:00
Bruno Haible acc203f3da Support non-blocking pipe I/O in read() on native Windows.
* lib/unistd.in.h: Include <sys/types.h> also for 'read'.
(read): New declaration.
* lib/read.c: New file.
* lib/stdio.in.h (_GL_ATTRIBUTE_FORMAT_SCANF,
_GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM): New macros.
(fgetc, fgets, fread, fscanf, getc, getchar, gets, scanf, vfscanf,
vscanf): New declarations.
* lib/stdio-read.c: New file.
* m4/read.m4: New file.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_READ,
REPLACE_READ.
* m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FGETC, GNULIB_FGETS,
GNULIB_FREAD, GNULIB_FSCANF, GNULIB_GETC, GNULIB_GETCHAR, GNULIB_GETS,
GNULIB_SCANF, GNULIB_VFSCANF, GNULIB_VSCANF. In non-blocking I/O is
desired and needs workarounds, set REPLACE_STDIO_READ_FUNCS.
(gl_STDIO_H_DEFAULTS): Initialize GNULIB_FGETC, GNULIB_FGETS,
GNULIB_FREAD, GNULIB_FSCANF, GNULIB_GETC, GNULIB_GETCHAR, GNULIB_GETS,
GNULIB_SCANF, GNULIB_VFSCANF, GNULIB_VSCANF, REPLACE_STDIO_READ_FUNCS.
* modules/read: New file.
* modules/nonblocking (Files): Add lib/stdio-read.c.
* modules/unistd (Makefile.am): Substitute GNULIB_READ, REPLACE_READ.
* modules/stdio (Makefile.am): Substitute GNULIB_FGETC, GNULIB_FGETS,
GNULIB_FREAD, GNULIB_FSCANF, GNULIB_GETC, GNULIB_GETCHAR, GNULIB_GETS,
GNULIB_SCANF, GNULIB_VFSCANF, GNULIB_VSCANF, REPLACE_STDIO_READ_FUNCS.
* modules/pread (Depends-on): Add read.
* modules/safe-read (Depends-on): Likewise.
* tests/test-stdio-c++.cc (fgetc, fgets, fread, fscanf, getc, getchar,
gets, scanf, vfscanf, vscanf): Verify signatures.
* doc/posix-functions/read.texi: Mention 'nonblocking' module and
problem with non-blocking pipes.
* doc/posix-functions/fgetc.texi: Likewise.
* doc/posix-functions/fgets.texi: Likewise.
* doc/posix-functions/fread.texi: Likewise.
* doc/posix-functions/fscanf.texi: Likewise.
* doc/posix-functions/getc.texi: Likewise.
* doc/posix-functions/getchar.texi: Likewise.
* doc/posix-functions/gets.texi: Likewise.
* doc/posix-functions/scanf.texi: Likewise.
* doc/posix-functions/vfscanf.texi: Likewise.
* doc/posix-functions/vscanf.texi: Likewise.
2011-04-15 01:02:13 +02:00
Bruno Haible 73899ad375 Support non-blocking pipe I/O in write() on native Windows.
* lib/write.c (rpl_write): Split a write request that failed merely
because the byte count was larger than the pipe buffer's size.
* doc/posix-functions/write.texi: Mention the problem with large byte
counts.
2011-04-14 23:42:01 +02:00
Bruno Haible 836e045706 Support non-blocking pipe I/O in write() on native Windows.
* lib/unistd.in.h (write): Enable replacement also if
GNULIB_UNISTD_H_NONBLOCKING is 1.
* lib/write.c: Enable replacement also if GNULIB_NONBLOCKING.
(rpl_write): When failing to write on a non-blocking pipe, change
errno from ENOSPC to EAGAIN.
* lib/stdio.in.h (fprintf, fputc, fputs, fwrite, printf, putc,
putchar, puts, vfprintf, vprintf): Enable replacement also if
GNULIB_STDIO_H_NONBLOCKING is 1.
* lib/stdio-write.c: Enable replacements also if GNULIB_NONBLOCKING.
(CLEAR_ERRNO, HANDLE_ENOSPC): New macros.
(CLEAR_LastError, HANDLE_ERROR_NO_DATA): New macros, extracted from
CALL_WITH_SIGPIPE_EMULATION.
(CALL_WITH_SIGPIPE_EMULATION): Use them.
* m4/nonblocking.m4: New file.
* m4/write.m4 (gl_FUNC_WRITE): Enable REPLACE_WRITE also if required
for non-blocking I/O support.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
GNULIB_UNISTD_H_NONBLOCKING.
* m4/stdio_h.m4 (gl_STDIO_H): Enable REPLACE_STDIO_WRITE_FUNCS also if
required for non-blocking I/O support.
(gl_STDIO_H_DEFAULTS): Initialize GNULIB_STDIO_H_NONBLOCKING.
* modules/nonblocking (Files): Add m4/nonblocking.m4,
lib/stdio-write.c, m4/asm-underscore.m4.
(Depends-on): Add stdio, unistd.
(configure.ac): Invoke gl_NONBLOCKING_IO. Define GNULIB_NONBLOCKING.
Set GNULIB_STDIO_H_NONBLOCKING, GNULIB_UNISTD_H_NONBLOCKING.
* modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_NONBLOCKING.
* modules/stdio (Makefile.am): Substitute GNULIB_STDIO_H_NONBLOCKING.
* doc/posix-functions/fprintf.texi: Mention 'nonblocking' module and
problem with non-blocking pipes.
* doc/posix-functions/fputc.texi: Likewise.
* doc/posix-functions/fputs.texi: Likewise.
* doc/posix-functions/fwrite.texi: Likewise.
* doc/posix-functions/printf.texi: Likewise.
* doc/posix-functions/putc.texi: Likewise.
* doc/posix-functions/putchar.texi: Likewise.
* doc/posix-functions/puts.texi: Likewise.
* doc/posix-functions/vfprintf.texi: Likewise.
* doc/posix-functions/vprintf.texi: Likewise.
* doc/posix-functions/write.texi: Likewise.
2011-04-13 12:36:36 +02:00
Paul Eggert f2b86e893c maint: change "can not" to "cannot"
* doc/posix-functions/iconv.texi (iconv): This one crossed line
boundaries.
2011-04-09 14:45:22 -07:00
Jim Meyering 52feca2cda maint: change "can not" to "cannot"
But do not change the occurrences in maintain.texi or in
build-aux/po/Makefile.in.in, which I presume comes from gettext.
* doc/gnulib-tool.texi: s/can not/cannot/
* doc/posix-functions/accept.texi (accept): Likewise.
* doc/posix-functions/socket.texi (socket): Likewise.
* lib/mbrtowc.c: Likewise.
2011-04-09 23:05:22 +02:00
Eric Blake b277764ab1 fcntl-h: fix O_ACCMODE on cygwin
* doc/posix-headers/fcntl.texi (fcntl.h): Document the bug.
* lib/fcntl.in.h (O_ACCMODE): Fix it.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-04-08 10:59:24 -06:00
Eric Blake 70a72e0f50 nonblocking: provide O_NONBLOCK for mingw
Mingw is the only known platform that lacks O_NONBLOCK (possibly
via the alternate spelling O_NDELAY).  But mingw also lacks any
files where open() needs to enforce non-blocking behavior, and
lacks openat(), so it is relatively simple to provide a non-zero
flag.  A future patches will make use of O_NONBLOCK for pipe2.

* modules/nonblocking (Depends-on): Add open.
(configure.ac): Set new witness macro.
* m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Provide default for it.
* modules/fcntl-h (Makefile.am): Substitute it.
* lib/fcntl.in.h (O_NONBLOCK): Guarantee non-zero definition when
nonblocking module is in use.
* lib/nonblocking.c: Adjust portability test.
* lib/open.c (open): Don't let native open see gnulib flag.
* tests/test-fcntl-h.c (main): Enhance test.
* tests/test-open.h (test_open): Likewise.
* doc/posix-headers/fcntl.texi (fcntl.h): Document the replacement.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-04-08 10:58:36 -06:00
Bruno Haible b64c50cfe4 wcpcpy, wcpncpy: Ensure declaration on glibc >= 2.13 systems.
* m4/wcpcpy.m4 (gl_FUNC_WCPCPY): Require AC_USE_SYSTEM_EXTENSIONS.
* m4/wcpncpy.m4 (gl_FUNC_WCPNCPY): Likewise.
* modules/wcpcpy (Depends-on): Add extensions.
* modules/wcpncpy (Depends-on): Likewise.
* doc/posix-functions/wcpcpy.texi: Mention missing declaration on glibc
systems.
* doc/posix-functions/wcpncpy.texi: Likewise.
* doc/posix-functions/wcwidth.texi: Likewise.
2011-04-01 23:24:07 +02:00
Karl Berry ff2f086830 autoupdate 2011-03-29 09:39:10 -07:00
Bruno Haible bac631aa62 getaddrinfo: Doc fix.
* doc/posix-functions/getaddrinfo.texi: Mention Windows problem in the
section "fixed in Gnulib".
2011-03-29 14:54:31 +02:00
Simon Josefsson 4a8227d167 getaddrinfo: Doc fix.
* doc/posix-functions/getaddrinfo.texi: Drop netdb.h discussion.
Reported by Bastien ROUCARIES <roucaries.bastien@gmail.com>.
2011-03-28 21:31:46 +02:00
Eric Blake 444f6d99e3 realloc: document portability problem
* doc/posix-functions/realloc.texi (realloc): Mention pitfalls of
passing 0 size to realloc.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-03-24 13:38:09 -06:00
Karl Berry 70676abc18 autoupdate 2011-03-22 16:55:41 -07:00
Bruno Haible 1219ed162f sys_socket, netdb: Document problem with socklen_t.
* doc/posix-headers/sys_socket.texi: Mention lack of socklen_t on some
platforms.
* doc/posix-headers/netdb.texi: Likewise.
2011-03-19 13:47:10 +01:00
Bruno Haible 82d8d483a9 doc: Improve doc regarding autopoint vs. gnulib.
* doc/gnulib-tool.texi (gettextize and autopoint): Recommend to
disable autopoint while running autoreconf.
Suggested by Ralf Wildenhues.
2011-03-05 14:33:55 +01:00
Bruno Haible f1eb357fab New module 'wctomb'.
* lib/stdlib.in.h (wctomb): New declaration.
* lib/wctomb.c: New file.
* lib/wctomb-impl.h: New file.
* m4/wctomb.m4: New file.
* m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_WCTOMB,
REPLACE_WCTOMB.
* modules/stdlib (Makefile.am): Substitute GNULIB_WCTOMB,
REPLACE_WCTOMB.
* modules/wctomb: New file.
* tests/test-stdlib-c++.cc: Test signature of wctomb.
* doc/posix-functions/wctomb.texi: Mention the new module.
* modules/wctob (Depends-on): Add wctomb.
2011-02-22 14:32:27 +01:00
Bruno Haible 82e60758d2 New module 'mbtowc'.
* lib/stdlib.in.h (mbtowc): New declaration.
* lib/mbtowc.c: New file.
* lib/mbtowc-impl.h: New file, from libutf8 with modifications
* m4/mbtowc.m4: New file.
* m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_MBTOWC,
REPLACE_MBTOWC.
* modules/stdlib (Makefile.am): Substitute GNULIB_MBTOWC,
REPLACE_MBTOWC.
* modules/mbtowc: New file.
* tests/test-stdlib-c++.cc: Test signature of mbtowc.
* doc/posix-functions/mbtowc.texi: Mention the new module.
* modules/btowc (Depends-on): Add mbtowc.
2011-02-22 14:32:18 +01:00
Bruno Haible 9417de2876 stdint: Update documentation.
* doc/posix-headers/stdint.texi: Mention WCHAR_MIN, WCHAR_MAX problem.
2011-02-19 12:52:42 +01:00
Bruno Haible a0fdbb3f59 getloadavg: Fix link error on Solaris 2.6.
* modules/getloadavg (Link): New section.
* modules/getloadavg-tests (Makefile.am): Use GETLOADAVG_LIBS for
linking test-getloadavg.
* doc/glibc-functions/getloadavg.texi: Mention that Solaris 2.6 lacks
getloadavg.
2011-02-18 04:15:19 +01:00
Bruno Haible a035a8d38a mbrtowc: Work around native Windows bug.
* m4/mbrtowc.m4 (gl_MBRTOWC_RETVAL): Detect native Windows bug. Use the
guess when no suitable locale for testing was found.
* doc/posix-functions/mbrtowc.texi: Mention the native Windows bug.
2011-02-13 19:29:42 +01:00
Bruno Haible cca34e7a16 mbsinit: Work around mingw bug.
* m4/mbsinit.m4 (gl_FUNC_MBSINIT): Replace mbsinit also on mingw.
* lib/mbsinit.c (mbsinit): Provide an alternate definition for native
Windows.
* doc/posix-functions/mbsinit.texi: Mention the mingw bug.
2011-02-13 18:23:20 +01:00
Bruno Haible c9dc6fff80 wcsrtombs: Work around bug on native Windows.
* m4/wcsrtombs.m4 (gl_WCSRTOMBS_NULL): Test against mingw bug.
* lib/wcsrtombs.c (rpl_wcsrtombs): When dest is NULL, pass SIZE_MAX
instead of len.
* doc/posix-functions/wcsrtombs.texi: Document mingw bug.
2011-02-12 20:51:56 +01:00
Bruno Haible aa887f85e1 mbsrtowcs: Work around bug on native Windows.
* m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Require gt_LOCALE_FR. Test
against mingw bug.
* doc/posix-functions/mbsrtowcs.texi: Document mingw bug.
2011-02-12 20:20:02 +01:00
Bruno Haible 94c9eb9cde setlocale: Workaround native Windows bug.
* lib/setlocale.c (rpl_setlocale): On native Windows, when setlocale
succeeds but sets LC_CTYPE to "C", report a failure.
* tests/test-setlocale2.sh: New file.
* tests/test-setlocale2.c: New file.
* modules/setlocale-tests (Files): Add the new files.
(Makefile.am): Enable test-setlocale2.sh test.
* doc/posix-functions/setlocale.texi: Mention workaround.
2011-02-12 18:16:10 +01:00
Bruno Haible 4f1d12a5e3 New module 'setlocale'.
* lib/locale.in.h (setlocale): New declaration.
* lib/setlocale.c: New file, based on
gettext/gettext-runtime/intl/setlocale.c.
* m4/setlocale.m4: New file.
* m4/locale_h.m4 (gl_LOCALE_H): Test whether setlocale is declared.
(gl_LOCALE_H_DEFAULTS): Initialize GNULIB_SETLOCALE, REPLACE_SETLOCALE.
* modules/locale (Makefile.am): Substitute GNULIB_SETLOCALE,
REPLACE_SETLOCALE.
* modules/setlocale: New file.
* tests/test-locale-c++.cc: Test the declaration of setlocale.
* doc/posix-functions/setlocale.texi: Mention the new module.
2011-02-12 17:06:20 +01:00