doc/posix-functions


Log

Author Commit Date CI Message
Paul Eggert f3852a93 2016-04-19T09:11:34 btowc: document problems in C locale * doc/posix-functions/btowc.texi (btowc): Mention incompatibility with mbrtowc. See: http://bugs.gnu.org/23269#32
Paul Eggert b7bc3c1a 2016-04-09T01:28:36 mbrtowc: work around glibc bug#19932 Fix mbrtowc so that it never returns -1 in the C locale, as this conflicts with a future version of POSIX http://austingroupbugs.net/view.php?id=663#c2738 and causes problems with GNU grep: http://bugs.gnu.org/23234 See glibc bug 19932: https://sourceware.org/bugzilla/show_bug.cgi?id=19932 * doc/posix-functions/mbrlen.texi (mbrlen): * doc/posix-functions/mbrtowc.texi (mbrtowc): Document the glibc bug. * lib/mbrtowc.c [C_LOCALE_MAYBE_EILSEQ]: Include hard-locale.h, locale.h. (rpl_mbrtowc): Work around the C_LOCALE_MAYBE_EILSEQ bug, if the bug is possible. * m4/mbrtowc.m4 (gl_MBRTOWC_C_LOCALE): New macro. (gl_FUNC_MBRTOWC): Use it, and define C_LOCALE_MAYBE_EILSEQ as needed. * modules/hard-locale (License): Now LGPLv2+, for mbrtowc. * modules/mbrtowc (Depends-on): Add hard-locale. * modules/mbrtowc-tests (Files, TESTS): Add tests/test-mbrtowc5.sh. * tests/test-mbrtowc.c (main): Test for bug fix if arg is '5'. * tests/test-mbrtowc5.sh: New file.
Paul Eggert 53348f29 2016-02-08T18:45:55 readdir_r: now obsolescent * doc/posix-functions/readdir_r.texi (readdir_r): Now obsolescent. * lib/mountlist.c (read_file_system_list): Add a FIXME.
Karl Berry 0fce642d 2016-01-22T08:21:35 @item needed inside @itemize
Bruno Haible 485f1270 2016-01-21T11:32:20 wcwidth: Replace also on OpenBSD 5.8 * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check the value of wcwidth(0xFF1A). * doc/posix-functions/wcwidth.texi: Update.
KO Myung-Hun 8968c785 2014-11-28T16:43:14 utimes: detect utimes() correctly on OS/2 kLIBC utimes() of OS/2 kLIBC has some limitations. 1. OS/2 itself supports a file date since 1980 year in local time. 2. OS/2 itself supports only even seconds for a file time. 3. utimes() of OS/2 kLIBC does not work on an opened file. * m4/utimes.m4: Detect utimes() correctly on OS/2 kLIBC. * doc/posix-functions/utimes.texi: Document the above limitations of utimes() on OS/2 kLIBC.
Pádraig Brady 95c48427 2016-01-15T16:12:03 doc: mention unfixed issues with unsupported localtime() values Note perl has configure time checks in place to avoid this. * doc/posix-functions/localtime.texi: Mention that FreeBSD 10 returns nonsense for localtime(2^56). * doc/posix-functions/localtime_r.texi: Likewise.
Pádraig Brady 5ac0e2ba 2016-01-14T10:04:58 doc: mention setlocale() issues on OpenBSD * doc/posix-functions/setlocale.texi: Mention setlocale(LC_ALL,"") never fails, and the need to check categories individually.
Paul Eggert 848a19c7 2015-06-06T00:56:01 fsync: document AIX misbehavior * doc/posix-functions/fsync.texi (fsync): Document failure on AIX with read-only file descriptor.
Pádraig Brady 8c9cfa07 2015-05-31T03:08:52 readlinkat: avoid OS X 10.10 trailing slash bug * doc/posix-functions/readlink.texi: Mention that OS X 10.10 has this bug. * doc/posix-functions/readlinkat.texi: Likewise. Also mention that OS X 10.10 has this function. * lib/readlinkat.c (rpl_readlinkat): Handle the trailing slash bug, as done for readlink(). * m4/readlinkat.m4 (gl_FUNC_READLINKAT): Check for the readlink() trailing slash bug, and assume readlinkat() has the same issue. Also fix a typo where $gl_cv_decl_readlink_works was tested, rather than the correct $gl_cv_decl_readlinkat_works.
Pádraig Brady c79f3527 2015-05-29T03:11:59 linkat: avoid OS X 10.10 trailing slash with symlink bug On Darwin 14.3.0 linkat(,"path1",,"dangling_symlink/",) causes the symlink to be dereferenced, and if it points to a non existent file, that file will be created as a hard link to "path1". This fixes a test failure in test-linkat.c. * m4/linkat.m4 (gl_FUNC_LINKAT): Augment the test with this case. The existing workaround in linkat.c for trailing slash issues, suffices for this case. * doc/posix-functions/linkat.texi: Add OS X 10.10 to the list of platforms with trailing slash issues.
Pádraig Brady e176ee0b 2015-05-28T14:15:08 unlinkat: handle ignoring of ".." on Darwin 14 * lib/unlinkat.c: unlinkat() has the same bug as unlink() on Mac OS X 10.10, where it ignores paths with a trailing "..", so handle in the same manner. * m4/unlinkat.m4: Comment on this Darwin issue. * doc/posix-functions/unlink.texi: Update the latest version where the issue was seen. * doc/posix-functions/unlinkat.texi: Mention this issue. Fixes a test failure in test-unlinkat.c.
Pádraig Brady 79897201 2015-05-06T16:23:56 doc: document glibc posix_fallocate() issues * doc/posix-functions/posix_fallocate.texi: Mention the glibc efficiency problems and issues with NFS.
Paul Eggert a39fbed3 2015-02-23T10:34:40 dup2: doc and test for Android bug Reported by Kevin Cernekee in: http://lists.gnu.org/archive/html/bug-gnulib/2015-02/msg00125.html * doc/posix-functions/dup2.texi (dup2): Document the bug. * m4/dup2.m4 (gl_FUNC_DUP2): Test for the bug.
Paul Eggert bd38edc8 2015-02-20T18:09:47 printf, isinf, etc.: noncanonical != NaN Do not require that isinf, printf, etc. treat noncanonical values as NaNs. Instead, require only that they do not crash. Problem reported by Joseph Myers in: https://sourceware.org/ml/libc-alpha/2015-02/msg00244.html * doc/posix-functions/dprintf.texi (dprintf): * doc/posix-functions/fprintf.texi (fprintf): * doc/posix-functions/isfinite.texi (isfinite): * doc/posix-functions/isinf.texi (isinf): * doc/posix-functions/isnan.texi (isnan): * doc/posix-functions/printf.texi (printf): * doc/posix-functions/snprintf.texi (snprintf): * doc/posix-functions/sprintf.texi (sprintf): * doc/posix-functions/vdprintf.texi (vdprintf): * doc/posix-functions/vfprintf.texi (vfprintf): * doc/posix-functions/vprintf.texi (vprintf): * doc/posix-functions/vsnprintf.texi (vsnprintf): * doc/posix-functions/vsprintf.texi (vsprintf): Document this. * m4/isfinite.m4 (gl_ISFINITEL_WORKS): * m4/isinf.m4 (gl_ISINFL_WORKS): * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): * tests/test-isfinite.c (test_isfinitel): * tests/test-isinf.c (test_isinfl): * tests/test-isnan.c (test_long_double): * tests/test-isnanl.h (main): * tests/test-snprintf-posix.h (test_function): * tests/test-sprintf-posix.h (test_function): * tests/test-vasnprintf-posix.c (test_function): * tests/test-vasprintf-posix.c (test_function): o Test only that noncanonical values do not cause crashes, not that they are treated as NaNs. In some cases this means a larger output buffer is needed.
Pádraig Brady 8b62c05c 2014-11-28T10:57:31 doc: mention that _BSD_SOURCE is deprecated for _DEFAULT_SOURCE * doc/posix-functions/setjmp.texi: Defining _BSD_SOURCE will induce warnings unless _DEFAULT_SOURCE is also defined.
Pádraig Brady c8e57ce5 2014-10-31T18:12:15 linkat: wrap to handle symlinks on OS X 10.10 * m4/linkat.m4 (gl_FUNC_LINKAT): linkat() is available on Yosemite but not usable because it doesn't support creating hardlinks to symlinks. Therefore add a generic test for this capability and fallback to our emulation if linkat() fails with ENOTSUP.
Paul Eggert 08a713e0 2014-11-02T22:24:09 open, openat: document nonstandard FreeBSD, NetBSD O_NOFOLLOW errno * doc/posix-functions/open.texi (open): * doc/posix-functions/openat.texi (openat): Document that these functions do not set errno to ELOOP when a symlink is opened with O_NOFOLLOW.
Paul Eggert 032bd151 2014-10-18T23:22:36 symlinkat: port to AIX 7.1 * doc/posix-functions/symlinkat.texi (symlinkat): Mention AIX porting problem. * lib/symlinkat.c: Always include errno.h. (rpl_symlinkat) [HAVE_SYMLINKAT]: New function. * lib/unistd.in.h (symlinkat): Add replacement machinery. * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Check symlinkat behavior. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add REPLACE_SYMLINKAT. * modules/symlinkat (Depends-on): Add fstatat if REPLACE_SYMLINKAT. (configure.ac): Also compile replacement if REPLACE_SYMLINKAT. * modules/unistd (unistd.h): Substitute REPLACE_SYMLINKAT.
Paul Eggert cb3a9b8b 2014-10-18T22:35:28 readlinkat: port to AIX 7.1 * doc/posix-functions/readlink.texi (readlink): * doc/posix-functions/readlinkat.texi (readlinkat): Mention AIX porting problem. * lib/readlinkat.c (rpl_readlinkat) [HAVE_READLINKAT]: New function. * lib/unistd.in.h (readlinkat): Add replacement machinery. * m4/readlinkat.m4 (gl_FUNC_READLINKAT): Check readlinkat signature. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add REPLACE_READLINKAT. * modules/readlinkat (configure.ac): Also compile replacement if REPLACE_READLINKAT. * modules/unistd (unistd.h): Substitute REPLACE_READLINKAT.
Karl Berry b155b064 2014-10-12T09:03:23 remove spurious {
Ben Pfaff 322e0b05 2014-09-28T09:52:08 basename, dirname: Improve documentation. * doc/posix-functions/basename.texi: Mention dirname module and base_name() function. * doc/posix-functions/dirname.texi: Mention dir_name() and mdir_name() functions. Suggested by Werner LEMBERG <wl@gnu.org>.
Paul Eggert ce49a606 2014-08-05T13:14:04 accept: document Solaris 10 type glitch * doc/posix-functions/accept.texi (accept): Mention that Solaris 10 'accept' takes void * last arg, not socklen_t *.
Paul Eggert 93ce02b4 2014-05-31T14:07:57 dup2, fcntl, fcntl-h: port to AIX 7.1 This fixes some porting problems discovered when testing the latest grep snapshot on AIX 7.1. I don't think if fixes any bugs in grep but it could be important for other applications. * doc/posix-functions/dup2.texi: * doc/posix-functions/fcntl.texi: * doc/posix-headers/fcntl.texi: Document AIX bugs. * lib/fcntl.in.h (O_CLOEXEC, O_NOFOLLOW, O_TTY_INIT) [_AIX]: Define to 0 if outside 'int' range. * m4/dup2.m4 (gl_FUNC_DUP2): * m4/fcntl.m4 (gl_FUNC_FCNTL): Check for getdtablesize. If it's available, test a value just outside its range instead of testing 1000000. When cross-compiling, guess that AIX will fail this improved test.
Paul Eggert 6a26d6cb 2014-05-15T18:30:04 doc: document mbrtowc and mbrlen problem with empty input * doc/posix-functions/mbrlen.texi (mbrlen): * doc/posix-functions/mbrtowc.texi (mbrtowc): Document portability problem when the input string is empty. See: https://sourceware.org/bugzilla/show_bug.cgi?id=16950
Paul Eggert 61640bce 2014-05-15T13:07:50 doc: document exec* = spawn+exit bug with non-Cygwin Windows platforms Problem reported by Eli Zaretskii in: http://lists.gnu.org/archive/html/bug-grep/2014-05/msg00118.html * doc/posix-functions/execl.texi (execl): * doc/posix-functions/execle.texi (execle): * doc/posix-functions/execlp.texi (execlp): * doc/posix-functions/execv.texi (execv): * doc/posix-functions/execve.texi (execve): * doc/posix-functions/execvp.texi (execvp): Mention spawn+exit problem on non-Cygwin Windows platforms.
Assaf Gordon 187808c6 2014-04-16T11:35:55 expl: avoid incorrect expl(small_value) on OpenBSD 5.4 OpenBSD 5.4, expl() incorrectly returns 'nan' for small values. Detect this and use gnulib's expl() in that case. Discussed here: http://marc.info/?t=139159081700002&r=1&w=2 (Message from David Coppa on 2014-02-05 to openbsd-tech mailing list). Fixed here (in revision 1.2): http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libm/src/ld128/s_floorl.c * m4/expl.m4 (gl_FUNC_EXPL): Add a check for this condition. * doc/posix-functions/expl.texi: Mention the workaround.
Paul Eggert fe3419dc 2014-01-03T11:18:07 doc: use ASCII in .texi files where UTF-8 isn't needed * doc/posix-functions/crypt.texi, doc/posix-functions/encrypt.texi: * doc/posix-functions/setkey.texi, doc/regex.texi: Use ASCII input, not UTF-8.
Paul Eggert ec68a6fe 2013-10-16T07:47:53 mkfifo-tests, etc.: allow HP-UX 11.11 bug Problem reported by Daniel Richard G. in <http://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00068.html>. * doc/posix-functions/mkfifo.texi (mkfifo): * doc/posix-functions/mkfifoat.texi (mkfifoat): * doc/posix-functions/mknod.texi (mknod): * doc/posix-functions/mknodat.texi (mknodat): Document the HP-UX 11.11 bug. * tests/test-mkfifo.h (test_mkfifo): Allow the HP-UX 11.11 bug.
Eric Blake fdd1b511 2013-09-26T07:07:07 dup2, dup3: work around another cygwin crasher Cygwin 1.7.25 can crash due to an off-by-one bug on an attempt to duplicate a file into the current RLIMIT_NOFILE soft limit, when that limit is smaller than the hard limit. The intent in the cygwin code was to allow the dup and auto-increase the soft limit, which is itself questionable (and which we work around in the gnulib getdtablesize module); but avoiding the crash is worth doing even if the soft limit semantics are wrong. http://cygwin.com/ml/cygwin/2013-09/msg00397.html http://cygwin.com/ml/cygwin-developers/2013-q3/msg00010.html * m4/dup2.m4 (gl_FUNC_DUP2): Expose the bug. * m4/dup3.m4 (gl_FUNC_DUP3): Likewise. * tests/test-dup2.c (main): Likewise. * lib/dup2.c (rpl_dup2): Use setdtablesize to avoid it. * lib/dup3.c (dup3): Likewise. * doc/posix-functions/dup2.texi (dup2): Document it. * doc/glibc-functions/dup3.texi (dup3): Likewise. Signed-off-by: Eric Blake <eblake@redhat.com>
Paul Eggert b8c71610 2013-09-22T21:25:25 ctype, string: depend on extern-inline This is needed to complete the recent OS X fixes. Also, fix related documentation as suggested by Eric Blake. * doc/posix-functions/isalnum.texi, doc/posix-functions/isalpha.texi: * doc/posix-functions/isascii.texi, doc/posix-functions/iscntrl.texi: * doc/posix-functions/isdigit.texi, doc/posix-functions/isgraph.texi: * doc/posix-functions/islower.texi, doc/posix-functions/isprint.texi: * doc/posix-functions/ispunct.texi, doc/posix-functions/isspace.texi: * doc/posix-functions/isupper.texi, doc/posix-functions/isxdigit.texi: * doc/posix-functions/toascii.texi, doc/posix-functions/tolower.texi: * doc/posix-functions/toupper.texi: List the 'ctype' gnulib module. * doc/posix-functions/strcat.texi, doc/posix-functions/strcpy.texi: * doc/posix-functions/strncpy.texi: List the 'string' gnulib module. * modules/memcpy, modules/memmove, modules/memset (Depends-on): Add string. * modules/ctype, modules/string (Depends-on): Add extern-inline.
Paul Eggert 6f3c76e0 2013-09-19T13:25:43 stdio: OS X port of putc_unlocked + extern inline * lib/stdio.in.h (putc_unlocked): #undef on problematic Apple platforms. * doc/posix-functions/putc_unlocked.texi: * doc/posix-functions/putchar_unlocked.texi: Document this portability problem.
Paul Eggert 1184458d 2013-09-19T13:24:03 signal: OS X port of sigaddset etc. + extern inline * lib/signal.in.h (sigaddset, sigdelset, sigemptyset, sigfillset) (sigismember): #undef on problematic Apple platforms. * doc/posix-functions/sigaddset.texi: * doc/posix-functions/sigdelset.texi: * doc/posix-functions/sigemptyset.texi: * doc/posix-functions/sigfillset.texi: * doc/posix-functions/sigismember.texi: Document this portability problem.
Paul Eggert 7425595f 2013-09-19T12:57:18 extern-inline: document fixes for ctype and wctype macros * doc/posix-functions/isalnum.texi, doc/posix-functions/isalpha.texi: * doc/posix-functions/isascii.texi, doc/posix-functions/isblank.texi: * doc/posix-functions/iscntrl.texi, doc/posix-functions/isdigit.texi: * doc/posix-functions/isgraph.texi, doc/posix-functions/islower.texi: * doc/posix-functions/isprint.texi, doc/posix-functions/ispunct.texi: * doc/posix-functions/isspace.texi, doc/posix-functions/isupper.texi: * doc/posix-functions/iswalnum.texi, doc/posix-functions/iswalpha.texi: * doc/posix-functions/iswcntrl.texi, doc/posix-functions/iswctype.texi: * doc/posix-functions/iswdigit.texi, doc/posix-functions/iswgraph.texi: * doc/posix-functions/iswlower.texi, doc/posix-functions/iswprint.texi: * doc/posix-functions/iswpunct.texi, doc/posix-functions/iswspace.texi: * doc/posix-functions/iswupper.texi, doc/posix-functions/iswxdigit.texi: * doc/posix-functions/isxdigit.texi, doc/posix-functions/toascii.texi: * doc/posix-functions/memcpy.texi, doc/posix-functions/memmove.texi: * doc/posix-functions/memset.texi, doc/posix-functions/stpcpy.texi: * doc/posix-functions/stpncpy.texi, doc/posix-functions/strcat.texi: * doc/posix-functions/strcpy.texi, doc/posix-functions/strncat.texi: * doc/posix-functions/strncpy.texi: * doc/posix-functions/tolower.texi, doc/posix-functions/toupper.texi: * doc/posix-functions/towlower.texi, doc/posix-functions/towupper.texi: Document that Gnulib fixes portability problems with these functions on OS X 10.8 and earlier when called from plain inline or extern inline functions.
Eric Blake e28fbd78 2013-05-22T14:21:36 getgroups: document portability issues Because I actually managed to hit deadlock in libvirt's child process due to glibc's mutex use in user database lookup, I figured it is worth documenting the issue for others to be aware of when writing a privileged multithreaded parent app that spawns child processes owned by non-privileged ids. * doc/glibc-functions/initgroups.texi (initgroups): Mention multithread safety. * doc/posix-functions/getpwuid.texi (getpwuid): Likewise. * doc/posix-functions/getpwuid_r.texi (getpwuid_r): Likewise. * doc/glibc-functions/getgrouplist.texi (getgrouplist): Mention getugroups. * doc/posix-functions/getgroups.texi (getgroups): Mention multithread safety and mgetgroups. Signed-off-by: Eric Blake <eblake@redhat.com>
Paul Eggert 4bbfd284 2013-04-30T22:32:23 utimens, utimensat: work around Solaris UTIME_OMIT bug Solaris 11.1 and Solaris 10 have the same UTIME_OMIT bug that Linux kernel 2.6.32 does. Work around it in the same way. * doc/posix-functions/futimens.texi (futimens): * doc/posix-functions/utimensat.texi (utimensat): Document the bug. * lib/utimens.c (fdutimens, lutimens): * lib/utimensat.c (rpl_utimensat): Work around the bug.
Eric Blake 6169015d 2013-03-11T14:51:33 regex: port to mingw's recent addition of undeclared alarm On mingw (at least, when cross-compiling with Fedora 18's mingw32-headers-2.0.999-0.15.trunk.20121110.fc18.noarch build), compilation of test-regex fails: test-regex.c: In function 'main': test-regex.c:42:11: error: 'SIGALRM' undeclared (first use in this function) test-regex.c:42:11: note: each undeclared identifier is reported only once for each function it appears in test-regex.c:43:3: warning: implicit declaration of function 'alarm' It turns out that recent mingw64 added an export of alarm() and SIGALRM, but guarded their declarations behind __USE_MINGW_ALARM (default off, and with alarm() only in the non-standard <io.h>); so the m4 tests were setting HAVE_ALARM to 1 based on link success but then failing to compile. * doc/posix-functions/alarm.texi (alarm): Document that alarm exists but still doesn't work in newer mingw. * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Check for alarm declaration, not existence. Ensure SIGALRM is not trapped. * m4/mktime.m4 (gl_FUNC_MKTIME): Likewise. * m4/regex.m4 (gl_REGEX): Likewise. * m4/remainderf.m4 (gl_FUNC_REMAINDERF_WORKS): Likewise. * tests/test-regex.c (main): Use correct probe for alarm. Signed-off-by: Eric Blake <eblake@redhat.com>
Eric Blake cb83c6cb 2012-12-31T11:15:53 dup2: work around cygwin bug Detected by './gnulib-tool --test dup2 cloexec'. Reported upstream: http://cygwin.com/ml/cygwin/2012-12/msg00377.html and fixed already: http://cygwin.com/ml/cygwin-cvs/2012-q4/msg00202.html but as we want to work with older cygwin, we'll have to carry this in gnulib for a while. * m4/dup2.m4 (gl_FUNC_DUP2): Flush out cygwin core dump. * lib/dup2.c (rpl_dup2): Work around it. * doc/posix-functions/dup2.texi (dup2): Document it. Signed-off-by: Eric Blake <eblake@redhat.com>
Paul Eggert 72fa964f 2012-12-27T01:16:25 Hyphen and dash fixes.
Paul Eggert 200969d8 2012-12-26T14:00:23 Correct name of POSIX.1-2001. * doc/posix-functions/fgetc.texi (fgetc): * doc/posix-functions/fgets.texi (fgets): * doc/posix-functions/fread.texi (fread): * doc/posix-functions/fscanf.texi (fscanf): * doc/posix-functions/getc.texi (getc): * doc/posix-functions/getchar.texi (getchar): * doc/posix-functions/scanf.texi (scanf): POSIX.1-2001, not POSIX-2001.
Eric Blake fa915b52 2012-10-02T16:50:57 pselect: reject invalid file descriptors Similar to the recent select fixes. * m4/pselect.m4 (gl_FUNC_PSELECT): Probe for FreeBSD bug. * lib/pselect.c (rpl_pselect) [!win32]: Work around it. * modules/pselect (Depends-on): Add dup2. * doc/posix-functions/pselect.texi (pselect): Document this.
Eric Blake 9500a55f 2012-10-02T15:29:13 select: reject invalid file descriptors POSIX requires invalid file descriptors to be detected rather than silently ignored. FreeBSD 8.2 detects if fd 0 has been closed and appears in a set while fd 1 is still open, but mistakenly optimizes and refuses to check any fds in the set beyond the maximum open fd. * m4/select.m4 (gl_FUNC_SELECT): Probe for FreeBSD bug. * lib/select.c (rpl_select) [!win32]: Work around it. * modules/select (Depends-on): Add dup2. * doc/posix-functions/select.texi (select): Document this.
Eric Blake b5b92d84 2012-10-02T12:22:19 ptsname: reject invalid file descriptors POSIX left errno undefined on ptsname() failure, although there has at least been an effort to specify reasonable values to use: http://www.austingroupbugs.net/view.php?id=503 However, our tests for ptsname and ptsname_r already require errno to be set to useful values (as in glibc), so it is worth replacing ptsname on FreeBSD 8.2 in order to get better QoI and pass the test. * m4/ptsname.m4 (gl_FUNC_PTSNAME): Probe for FreeBSD bug. * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Add new witness. * modules/stdlib (Makefile.am): Replace witness. * lib/stdlib.in.h (ptsname): Allow for replacement. * modules/ptsname (configure.ac): Trigger replacement. * doc/posix-functions/ptsname.texi (ptsname): Document this.
Paul Eggert ead34780 2012-09-16T10:37:16 doc: document sticky-EOF issue * doc/posix-functions/fgetc.texi (fgetc): * doc/posix-functions/fgets.texi (fgets): * doc/posix-functions/fread.texi (fread): * doc/posix-functions/fscanf.texi (fscanf): * doc/posix-functions/getc.texi (getc): * doc/posix-functions/getchar.texi (getchar): * doc/posix-functions/scanf.texi (scanf): Mention that glibc and default Solaris do not conform to C99 and POSIX-2001 or later, with respect to how getchar etc. behave when feof reports nonzero.
Joachim Schmitz 20a4d1d3 2012-09-13T08:55:08 poll: fix for systems that can't recv() on a non-socket * lib/poll.c: if recv returns ENOTSOCK, assume the descriptor is readable. In this case POLLHUP will not be supported. * doc/posix-functions/poll.texi: Document this. Copyright-paperwork-exempt: yes
Paolo Bonzini 48e7c1cf 2012-09-13T08:51:16 poll/select: document portability problems not fixed by Gnulib. * doc/posix-functions/poll.texi: poll does not work well on pipes under Windows. It has the same limitations as select on BeOS. * doc/posix-functions/select.texi: select does not work well on pipes under Windows.
Paul Eggert 0815bd3d 2012-08-24T02:19:57 doc: do not use @acronym * doc/inet_ntoa.texi (inet_ntoa): * doc/parse-datetime.texi (Seconds since the Epoch) (Specifying time zone rules): * doc/posix-functions/inet_ntoa.texi (inet_ntoa): Don't use @acronym. Problem reported by John Darlington in <http://lists.gnu.org/archive/html/bug-gnulib/2012-08/msg00124.html>.
Bruno Haible 265729b6 2012-06-26T19:53:01 getopt-posix: No longer guarantee that option processing is resettable. * doc/posix-functions/getopt.texi: Drop description of problem with internal state. Fix info about mingw and msvc9. * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Don't require a resettable option processing by getopt(). Run three test programs instead of one. Simplify cross-compilation guess. * NEWS: Mention the change. Reported by Rich Felker <dalias@aerifal.cx>.
Bruno Haible ae480d58 2012-06-23T17:08:47 getopt-gnu: Handle suboptimal getopt_long's abbreviation handling. * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): If getopt_long exists but does not handle abbreviated long options with equivalent disambiguations, set gl_replace_getopt to yes. * doc/posix-functions/getopt.texi: Mention the OpenBSD 5.0 problem.
Bruno Haible 06b335ad 2012-06-22T13:26:07 Write "Mac OS X" instead of "MacOS X". * README: Write "Mac OS X" instead of "MacOS X". * build-aux/bootstrap: Likewise. * build-aux/install-reloc: Likewise. * lib/acl-internal.h: Likewise. * lib/acl_entries.c: Likewise. * lib/argp-ba.c: Likewise. * lib/argp-pv.c: Likewise. * lib/config.charset: Likewise. * lib/copy-acl.c: Likewise. * lib/csharpexec.c: Likewise. * lib/euidaccess.c: Likewise. * lib/fbufmode.c: Likewise. * lib/fflush.c: Likewise. * lib/file-has-acl.c: Likewise. * lib/filemode.h: Likewise. * lib/fpurge.c: Likewise. * lib/freadable.c: Likewise. * lib/freadahead.c: Likewise. * lib/freading.c: Likewise. * lib/freadptr.c: Likewise. * lib/freadseek.c: Likewise. * lib/fseeko.c: Likewise. * lib/fseterr.c: Likewise. * lib/fsusage.c: Likewise. * lib/fwritable.c: Likewise. * lib/fwriting.c: Likewise. * lib/get-rusage-as.c: Likewise. * lib/get-rusage-data.c: Likewise. * lib/getdomainname.c: Likewise. * lib/idpriv-drop.c: Likewise. * lib/idpriv-droptemp.c: Likewise. * lib/localcharset.c: Likewise. * lib/locale.in.h: Likewise. * lib/localename.c: Likewise. * lib/mbsrtowcs-state.c: Likewise. * lib/nproc.c: Likewise. * lib/passfd.c: Likewise. * lib/posix_openpt.c: Likewise. * lib/printf-parse.c: Likewise. * lib/progreloc.c: Likewise. * lib/safe-read.h: Likewise. * lib/safe-write.h: Likewise. * lib/sched.in.h: Likewise. * lib/set-mode-acl.c: Likewise. * lib/signal.in.h: Likewise. * lib/stdint.in.h: Likewise. * lib/stdio-impl.h: Likewise. * lib/stdlib.in.h: Likewise. * lib/strtod.c: Likewise. * lib/sys_select.in.h: Likewise. * lib/tcgetsid.c: Likewise. * lib/unistd.in.h: Likewise. * lib/unlockpt.c: Likewise. * lib/vasnprintf.c: Likewise. * lib/vma-iter.c: Likewise. * lib/wcsrtombs-state.c: Likewise. * m4/acl.m4: Likewise. * m4/acosl.m4: Likewise. * m4/asinl.m4: Likewise. * m4/atanl.m4: Likewise. * m4/c-stack.m4: Likewise. * m4/cosl.m4: Likewise. * m4/expl.m4: Likewise. * m4/extensions.m4: Likewise. * m4/fdatasync.m4: Likewise. * m4/fmal.m4: Likewise. * m4/frexp.m4: Likewise. * m4/frexpf.m4: Likewise. * m4/frexpl.m4: Likewise. * m4/fsusage.m4: Likewise. * m4/getdomainname.m4: Likewise. * m4/getloadavg.m4: Likewise. * m4/getopt.m4: Likewise. * m4/gettext.m4: Likewise. * m4/gnulib-common.m4: Likewise. * m4/intdiv0.m4: Likewise. * m4/intlmacosx.m4: Likewise. * m4/largefile.m4: Likewise. * m4/ldexpl.m4: Likewise. * m4/link-follow.m4: Likewise. * m4/locale-ar.m4: Likewise. * m4/locale-fr.m4: Likewise. * m4/locale-ja.m4: Likewise. * m4/locale-tr.m4: Likewise. * m4/locale-zh.m4: Likewise. * m4/locale_h.m4: Likewise. * m4/lock.m4: Likewise. * m4/logl.m4: Likewise. * m4/mathfunc.m4: Likewise. * m4/minus-zero.m4: Likewise. * m4/mktime.m4: Likewise. * m4/mmap-anon.m4: Likewise. * m4/multiarch.m4: Likewise. * m4/nanosleep.m4: Likewise. * m4/nocrash.m4: Likewise. * m4/poll.m4: Likewise. * m4/printf-frexpl.m4: Likewise. * m4/printf.m4: Likewise. * m4/signbit.m4: Likewise. * m4/sinl.m4: Likewise. * m4/sqrtl.m4: Likewise. * m4/strerror_r.m4: Likewise. * m4/tanl.m4: Likewise. * m4/threadlib.m4: Likewise. * m4/ttyname_r.m4: Likewise. * m4/unlink.m4: Likewise. * m4/visibility.m4: Likewise. * m4/wcwidth.m4: Likewise. * tests/minus-zero.h: Likewise. * tests/test-alloca-opt.c: Likewise. * tests/test-copy-acl.sh: Likewise. * tests/test-copy-file.sh: Likewise. * tests/test-fdatasync.c: Likewise. * tests/test-file-has-acl.sh: Likewise. * tests/test-flock.c: Likewise. * tests/test-fsync.c: Likewise. * tests/test-localename.c: Likewise. * tests/test-malloca.c: Likewise. * tests/test-nonblocking-pipe.h: Likewise. * tests/test-nonblocking-socket.h: Likewise. * tests/test-openpty.c: Likewise. * tests/test-posix_openpt.c: Likewise. * tests/test-ptsname.c: Likewise. * tests/test-ptsname_r.c: Likewise. * tests/test-sameacls.c: Likewise. * tests/test-select.h: Likewise. * tests/test-set-mode-acl.sh: Likewise. * tests/test-snprintf-posix.h: Likewise. * tests/test-sprintf-posix.h: Likewise. * tests/test-strtod.c: Likewise. * tests/test-time.c: Likewise. * tests/test-vasnprintf-posix.c: Likewise. * tests/test-vasprintf-posix.c: Likewise. * doc/acl-resources.txt: Likewise. * doc/**/*.texi: Likewise. Reported by Max Horn <max@quendi.de>.
Bruno Haible 74ccd5f4 2012-06-22T12:36:47 grantpt: Relax requirement regarding invalid file descriptors. * lib/grantpt.c: Don't include <fcntl.h>. (grantpt): Don't verify the validity of the file descriptor. * modules/grantpt (Depends-on): Remove fcntl-h. * tests/test-grantpt.c (main): Allow grantpt to succeed for invalid file descriptors. * doc/posix-functions/grantpt.texi: Document more platforms on which grantpt succeeds for invalid file descriptors. Reported by Rich Felker <dalias@aerifal.cx>.
Simon Josefsson 6dbff38a 2012-05-22T13:14:23 Revert "strdup: undeprecate, IRIX 6.5 needs it" This reverts commit 7e2a535f8c362d5d3905cac9ebd7df4622604992.
Eric Blake 7e2a535f 2012-05-21T15:31:44 strdup: undeprecate, IRIX 6.5 needs it Reported by Simon Josefsson. * modules/strdup (Status): No longer obsolete. * doc/posix-functions/strdup.texi (strdup): Document this. Signed-off-by: Eric Blake <eblake@redhat.com>
Pádraig Brady b1fac377 2012-05-15T12:52:36 fsusage: fix block size returned on older Linux 2.6 * lib/fsusage.c: Fall back to (struct statfs).f_frsize which is available since Linux 2.6. * m4/fsusage.m4 (STAT_STATFS2_FRSIZE): Always define when the member is available so it can be used as a fallback. * doc/posix-functions/statvfs.texi: Mention the hang issue on Linux < 2.6.36.
Bruno Haible d06b2e55 2012-04-22T16:43:29 doc: Mention reason for replacement on glibc/Linux systems. * doc/posix-functions/dprintf.texi: Mention the problem with special 'long double' values. * doc/posix-functions/fprintf.texi: Likewise. * doc/posix-functions/printf.texi: Likewise. * doc/posix-functions/snprintf.texi: Likewise. * doc/posix-functions/sprintf.texi: Likewise. * doc/posix-functions/vdprintf.texi: Likewise. * doc/posix-functions/vfprintf.texi: Likewise. * doc/posix-functions/vprintf.texi: Likewise. * doc/posix-functions/vsnprintf.texi: Likewise. * doc/posix-functions/vsprintf.texi: Likewise. * doc/posix-functions/fcntl.texi: Add glibc/Linux to the list of platforms with F_DUPFD_CLOEXEC problems. * doc/posix-functions/glob.texi: Mention which platforms are affected by the problem with symbolic links. * doc/posix-functions/linkat.texi: Mention the problem with AT_SYMLINK_FOLLOW on Linux.
Bruno Haible 82781cc8 2012-04-14T22:27:12 stat: Bypass buggy override in mingw64. * m4/stat.m4 (gl_FUNC_STAT): Update comments. * lib/stat.c (stat) [mingw64]: Define to _stat. * doc/posix-functions/stat.texi: Mention mingw64 bug.
Bruno Haible 189ef2bc 2012-04-13T00:48:57 New module 'getrusage'. * lib/sys_resource.in.h: Include arg-nonnull.h, c++defs.h, warn-on-use.h. (getrusage): New declaration. * lib/getrusage.c: New file. * m4/getrusage.m4: New file. * m4/sys_resource_h.m4 (gl_HEADER_SYS_RESOURCE): Test whether getrusage is declared. (gl_SYS_RESOURCE_H_DEFAULTS): Initialize GNULIB_GETRUSAGE, HAVE_GETRUSAGE. * modules/sys_resource (Depends-on): Add snippet/arg-nonnull, snippet/c++defs, snippet/warn-on-use. (Makefile.am): Update generation of sys/resource.h. Substitute GNULIB_GETRUSAGE, HAVE_GETRUSAGE. * modules/getrusage: New file. * doc/posix-functions/getrusage.texi: Mention the new module.
Bruno Haible 811b6ef0 2012-04-03T21:58:52 New module 'ilogbl'. * lib/math.in.h (ilogbl): New declaration. * lib/ilogbl.c: New file. * m4/ilogbl.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether ilogbl is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_ILOGBL, HAVE_ILOGBL. * modules/math (Makefile.am): Substitute GNULIB_ILOGBL, HAVE_ILOGBL. Split sed invocation, to avoid the limit of 100 substitutions of HP-UX 'sed'. * modules/ilogbl: New file. * tests/test-math-c++.cc: Check the declaration of ilogbl. * doc/posix-functions/ilogbl.texi: Mention the new module.
Bruno Haible d6d7a9dc 2012-04-03T21:13:26 New module 'ilogbf'. * lib/math.in.h (ilogbf): New declaration. * lib/ilogbf.c: New file. * m4/ilogbf.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether ilogbf is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_ILOGBF, HAVE_ILOGBF, REPLACE_ILOGBF. * modules/math (Makefile.am): Substitute GNULIB_ILOGBF, HAVE_ILOGBF, REPLACE_ILOGBF. * modules/ilogbf: New file. * tests/test-math-c++.cc: Check the declaration of ilogbf. * doc/posix-functions/ilogbf.texi: Mention the new module.
Bruno Haible 1ab17d9f 2012-04-03T18:59:33 New module 'ilogb'. * lib/math.in.h (ilogb): New declaration. * lib/ilogb.c: New file. * m4/ilogb.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether ilogb is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_ILOGB, HAVE_ILOGB, REPLACE_ILOGB. * modules/math (Makefile.am): Substitute GNULIB_ILOGB, HAVE_ILOGB, REPLACE_ILOGB. * modules/ilogb: New file. * tests/test-math-c++.cc: Check the declaration of ilogb. * doc/posix-functions/ilogb.texi: Mention the new module.
Bruno Haible 032debd6 2012-04-03T12:53:31 New module 'logbl'. * lib/math.in.h (logbl): New declaration. * lib/logbl.c: New file. * m4/logbl.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether logbl is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOGBL, HAVE_LOGBL, REPLACE_LOGBL. * modules/math (Makefile.am): Substitute GNULIB_LOGBL, HAVE_LOGBL, REPLACE_LOGBL. * modules/logbl: New file. * tests/test-math-c++.cc: Check the declaration of logbl. * doc/posix-functions/logbl.texi: Mention the new module.
Bruno Haible 6c8149d7 2012-04-03T04:44:59 New module 'logbf'. * lib/math.in.h (logbf): New declaration. * lib/logbf.c: New file. * m4/logbf.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether logbf is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOGBF, HAVE_LOGBF, REPLACE_LOGBF. * modules/math (Makefile.am): Substitute GNULIB_LOGBF, HAVE_LOGBF, REPLACE_LOGBF. * modules/logbf: New file. * tests/test-math-c++.cc: Check the declaration of logbf. * doc/posix-functions/logbf.texi: Mention the new module.
Bruno Haible 77e40838 2012-04-03T02:51:42 logb: Provide replacement and workarounds. * lib/math.in.h (logb): Ensure declaration. Replace if REPLACE_LOGB is 1. * lib/logb.c: New file. * m4/logb.m4 (gl_FUNC_LOGB_WORKS): New macro. (gl_FUNC_LOGB): Invoke it. Set HAVE_LOGB, REPLACE_LOGB. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOGB. * modules/math (Makefile.am): Substitute REPLACE_LOGB. * modules/logb (Files): Add lib/logb.c. (Depends-on): Add isfinite, frexp, isnand. (configure.ac): Compile the replacement code logb.c if needed. * tests/test-math-c++.cc: Check the declaration of logb. * doc/posix-functions/logb.texi: Mention the replacement and the bug with subnormal numbers.
Bruno Haible 45ab0165 2012-04-01T19:29:21 log10l: Work around log10l-ieee test failure on IRIX 6.5. * lib/log10l.c: Include <float.h> (log10l): On IRIX, normalize the +Infinity value. * modules/log10l (Depends-on): Add 'float'. * doc/posix-functions/log10l.texi: Mention the IRIX problem with +Infinity.
Bruno Haible d4b6128e 2012-04-01T17:56:33 log10f-ieee: Work around test failure on NetBSD 5.1. * m4/log10f-ieee.m4: New file. * m4/log10f.m4 (gl_FUNC_LOG10F): If gl_FUNC_LOG10F_IEEE is present, test whether log10f works with a negative argument. Replace it if not. * lib/log10f.c (log10f): For negative arguments, return NaN. * modules/log10f-ieee (Files): Add m4/log10f-ieee.m4. (configure.ac): Invoke gl_FUNC_LOG10F_IEEE. * doc/posix-functions/log10f.texi: Mention the log10f-ieee module.
Bruno Haible 826cf481 2012-04-01T17:10:01 log10-ieee: Work around test failure on NetBSD 5.1 and Solaris 11. * m4/log10-ieee.m4: New file. * m4/log10.m4 (gl_FUNC_LOG10): If gl_FUNC_LOG10_IEEE is present, test whether log10 works with a negative argument. Replace it if not. * lib/log10.c (log10): For negative arguments, return NaN. * modules/log10-ieee (Files): Add m4/log10-ieee.m4. (configure.ac): Invoke gl_FUNC_LOG10_IEEE. * doc/posix-functions/log10.texi: Mention the log10-ieee module.
Bruno Haible f068ad78 2012-04-01T14:41:57 log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug. * lib/math.in.h (log10l): Override if REPLACE_LOG10L is 1. * lib/log10l.c (log10l): If log10l exists, use it and provide just the workaround. * m4/log10l.m4 (gl_FUNC_LOG10L_WORKS): New macro. (gl_FUNC_LOG10L): Invoke it. Set REPLACE_LOG10L. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOG10L. * modules/math (Makefile.am): Substitute REPLACE_LOG10L. * modules/log10l (configure.ac): Consider REPLACE_LOG10L. (Depends-on): Update conditions. * doc/posix-functions/log10l.texi: Mention the MSVC9, AIX 5.1, IRIX 6.5, OSF/1 5.1 problems.
Bruno Haible ac05a13b 2012-04-01T14:29:37 log10f: Work around OSF/1 5.1 bug. * lib/math.in.h (log10f): Override if REPLACE_LOG10F is 1. * lib/log10f.c (log10f): If logf exists, use it and provide just the workaround. * m4/log10f.m4 (gl_FUNC_LOG10F_WORKS): New macro. (gl_FUNC_LOG10F): Invoke it. Set REPLACE_LOG10F. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOG10F. * modules/math (Makefile.am): Substitute REPLACE_LOG10F. * modules/log10f (configure.ac): Consider REPLACE_LOG10F. (Depends-on): Update conditions. * doc/posix-functions/log10f.texi: Mention the OSF/1 5.1 problem.
Bruno Haible 54be6af6 2012-04-01T13:19:41 log10: Work around OSF/1 5.1 bug. * lib/math.in.h (log10): New declaration. * lib/log10.c: New file. * m4/log10.m4 (gl_FUNC_LOG10_WORKS): New macro. (gl_FUNC_LOG10): Invoke it. Set REPLACE_LOG10. * m4/math_h.m4 (gl_MATH_H): Test whether log10 is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG10, REPLACE_LOG10. * modules/math (Makefile.am): Substitute GNULIB_LOG10, REPLACE_LOG10. * modules/log10 (Files): Add lib/log10.c. (Depends-on): Add math. (configure.ac): If REPLACE_LOG10 is 1, compile an override. * tests/test-math-c++.cc: Check the declaration of log10. * doc/posix-functions/log10.texi: Mention the OSF/1 5.1 problem.
Eric Blake 66712c23 2012-03-29T13:30:41 stdio: don't assume gets any more Gnulib intentionally does not have a gets module, and now that C11 and glibc have dropped it, we should be more proactive about warning any user on a platform that still has a declaration of this dangerous interface. * m4/stdio_h.m4 (gl_STDIO_H, gl_STDIO_H_DEFAULTS): Drop gets support. * modules/stdio (Makefile.am): Likewise. * lib/stdio-read.c (gets): Likewise. * tests/test-stdio-c++.cc: Likewise. * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix comment. * lib/stdio.in.h (gets): Make warning occur in more places. * doc/posix-functions/gets.texi (gets): Update documentation. Reported by Christer Solskogen. Signed-off-by: Eric Blake <eblake@redhat.com>
Bruno Haible 0491c124 2012-03-25T15:19:45 New module 'localeconv'. * lib/locale.in.h (localeconv): New declaration. * lib/localeconv.c: New file. * m4/localeconv.m4: New file. * m4/locale_h.m4 (gl_LOCALE_H_DEFAULTS): Initialize GNULIB_LOCALECONV, REPLACE_LOCALECONV. * modules/locale (Makefile.am): Substitute GNULIB_LOCALECONV, REPLACE_LOCALECONV. * modules/localeconv: New file. * modules/nl_langinfo (Depends-on): Add localeconv. * modules/human (Depends-on): Likewise. * doc/posix-functions/localeconv.texi: Mention the new module.
Bruno Haible 937471db 2012-03-14T03:25:16 hypotl: Bypass broken implementation in OpenBSD 5.1/SPARC. * m4/hypotl.m4 (gl_FUNC_HYPOTL_WORKS): New macro. (gl_FUNC_HYPOTL): Invoke it. If the function does not work, set REPLACE_HYPOTL to 1. * doc/posix-functions/hypotl.texi: Mention the OpenBSD 5.1/SPARC bug.
Bruno Haible 77d42cc5 2012-03-14T02:40:49 remainderl: Bypass broken implementation in OpenBSD 5.1/SPARC. * m4/remainderl.m4 (gl_FUNC_REMAINDERL_WORKS): New macro. (gl_FUNC_REMAINDERL): Invoke it. If the function does not work, set REPLACE_REMAINDERL to 1. * doc/posix-functions/remainderl.texi: Mention the OpenBSD 5.1/SPARC bug.
Bruno Haible 7fd1d131 2012-03-14T01:51:10 sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC. * lib/math.in.h (sqrtl): Replace it if REPLACE_SQRTL is 1. * m4/sqrtl.m4 (gl_FUNC_SQRTL_WORKS): New macro. (gl_FUNC_SQRTL): Invoke it. Set REPLACE_SQRTL to 1 if sqrtl() produces too big rounding errors. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_SQRTL. * modules/math (Makefile.am): Substitute REPLACE_SQRTL. * modules/sqrtl (configure.ac): Consider REPLACE_SQRTL. (Depends-on): Update conditions. * tests/test-sqrtl.c (my_ldexpl): New function. (main): Add test of a particular value. * doc/posix-functions/sqrtl.texi: Mention the OpenBSD 5.1/SPARC bug.
Pádraig Brady a2c6cf03 2012-03-13T23:47:26 doc: update timer_* platform portability notes * doc/posix-functions/timer_create.texi: Add platforms that always return ENOSYS (OpenBSD 4.9). * doc/posix-functions/timer_delete.texi: Likewise. * doc/posix-functions/timer_gettime.texi: Likewise. * doc/posix-functions/timer_settime.texi: Likewise.
Bruno Haible 887838f2 2012-03-14T00:40:18 cbrtl: Bypass broken implementation in OpenBSD 5.1/SPARC. * m4/cbrtl.m4 (gl_FUNC_CBRTL_WORKS): New macro. (gl_FUNC_CBRTL): Invoke it. If the function does not work, set REPLACE_CBRTL to 1. * doc/posix-functions/cbrtl.texi: Mention the OpenBSD 5.1/SPARC bug.
Bruno Haible 3c7a0ee5 2012-03-11T22:14:04 log2f-ieee: Work around test failure on NetBSD 5.1 and Solaris 10. * m4/log2f-ieee.m4: New file. * m4/log2f.m4 (gl_FUNC_LOG2F): If gl_FUNC_LOG2F_IEEE is present, test whether log2f works with a minus zero argument. Replace it if not. * modules/log2f-ieee (Files): Add m4/log2f-ieee.m4. (Depends-on): Add log2-ieee. (configure.ac): Invoke gl_FUNC_LOG2F_IEEE. * doc/posix-functions/log2f.texi: Mention the log2f-ieee module.
Bruno Haible 6bf08d5f 2012-03-11T22:12:34 log2-ieee: Work around test failure on NetBSD 5.1 and Solaris 10. * m4/log2-ieee.m4: New file. * m4/log2.m4 (gl_FUNC_LOG2): If gl_FUNC_LOG2_IEEE is present, test whether log2 works with a minus zero argument. Replace it if not. * modules/log2-ieee (Files): Add m4/log2-ieee.m4. (configure.ac): Invoke gl_FUNC_LOG2_IEEE. * doc/posix-functions/log2.texi: Mention the log2-ieee module.
Bruno Haible 181e39ab 2012-03-11T20:50:08 New module 'log2l'. * lib/math.in.h (log2l): New declaration. * lib/log2l.c: New file. * m4/log2l.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether log2l is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG2L, HAVE_DECL_LOG2L, REPLACE_LOG2L. * modules/math (Makefile.am): Substitute GNULIB_LOG2L, HAVE_DECL_LOG2L, REPLACE_LOG2L. * modules/log2l: New file. * tests/test-math-c++.cc: Check the declaration of log2l. * doc/posix-functions/log2l.texi: Mention the new module and the IRIX and OSF/1 problems.
Bruno Haible 6e3a819d 2012-03-11T17:57:12 New module 'log2f'. * lib/math.in.h (log2f): New declaration. * lib/log2f.c: New file. * m4/log2f.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether log2f is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG2F, HAVE_DECL_LOG2F, REPLACE_LOG2F. * modules/math (Makefile.am): Substitute GNULIB_LOG2F, HAVE_DECL_LOG2F, REPLACE_LOG2F. * modules/log2f: New file. * tests/test-math-c++.cc: Check the declaration of log2f. * doc/posix-functions/log2f.texi: Mention the new module and the IRIX and OSF/1 and Cygwin problems.
Bruno Haible 6d131d20 2012-03-11T14:42:17 New module 'log2'. * lib/math.in.h (log2): New declaration. * lib/log2.c: New file. * m4/log2.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether log2 is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG2, HAVE_DECL_LOG2, REPLACE_LOG2. * modules/math (Makefile.am): Substitute GNULIB_LOG2, HAVE_DECL_LOG2, REPLACE_LOG2. * modules/log2: New file. * tests/test-math-c++.cc: Check the declaration of log2. * doc/posix-functions/log2.texi: Mention the new module and the IRIX and OSF/1 and Cygwin problems.
Bruno Haible 6f9fd2e9 2012-03-11T02:36:40 log1pl-ieee: Work around test failure on IRIX 6.5. * m4/log1pl-ieee.m4: New file. * m4/log1pl.m4 (gl_FUNC_LOG1PL): If gl_FUNC_LOG1PL_IEEE is present, test whether log1pl works with a minus zero argument. Replace it if not. * lib/math.in.h (log1pl): Override if REPLACE_LOG1PL is 1. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOG1PL. * modules/math (Makefile.am): Substitute REPLACE_LOG1PL. * modules/log1pl (configure.ac): Consider REPLACE_LOG1PL. (Depends-on): Update conditions. * modules/log1pl-ieee (Files): Add m4/log1p-ieee.m4, m4/minus-zero.m4, m4/signbit.m4. (configure.ac): Invoke gl_FUNC_LOG1PL_IEEE. * doc/posix-functions/log1pl.texi: Mention the log1pl-ieee module.
Bruno Haible ef3f971d 2012-03-11T02:06:49 log1pf-ieee: Work around test failure on OpenBSD 4.9 and AIX 7.1. * m4/log1pf-ieee.m4: New file. * m4/log1pf.m4 (gl_FUNC_LOG1PF): If gl_FUNC_LOG1PF_IEEE is present, test whether log1pf works with a minus zero argument. Replace it if not. * modules/log1pf-ieee (Files): Add m4/log1pf-ieee.m4, m4/minus-zero.m4, m4/signbit.m4. (configure.ac): Invoke gl_FUNC_LOG1PF_IEEE. * doc/posix-functions/log1pf.texi: Mention the log1pf-ieee module.
Bruno Haible 55b49420 2012-03-11T01:27:59 log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11. * m4/log1p-ieee.m4: New file. * m4/log1p.m4 (gl_FUNC_LOG1P): If gl_FUNC_LOG1P_IEEE is present, test whether log1p works with a minus zero argument. Replace it if not. * lib/math.in.h (log1p): Override if REPLACE_LOG1P is 1. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOG1P. * modules/math (Makefile.am): Substitute REPLACE_LOG1P. * modules/log1p (configure.ac): Consider REPLACE_LOG1P. (Depends-on): Update conditions. * modules/log1p-ieee (Files): Add m4/log1p-ieee.m4, m4/minus-zero.m4, m4/signbit.m4. (configure.ac): Invoke gl_FUNC_LOG1P_IEEE. * doc/posix-functions/log1p.texi: Mention the log1p-ieee module.
Bruno Haible 0109cf66 2012-03-11T00:48:36 New module 'log1pl'. * lib/math.in.h (log1pl): New declaration. * lib/log1pl.c: New file. * m4/log1pl.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether log1pl is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG1PL, HAVE_LOG1PL. * modules/math (Makefile.am): Substitute GNULIB_LOG1PL, HAVE_LOG1PL. * modules/log1pl: New file. * tests/test-math-c++.cc: Check the declaration of log1pl. * doc/posix-functions/log1pl.texi: Mention the new module.
Bruno Haible 6a2bdd8e 2012-03-10T22:28:49 New module 'log1pf'. * lib/math.in.h (log1pf): New declaration. * lib/log1pf.c: New file. * m4/log1pf.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether log1pf is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG1PF, HAVE_LOG1PF, REPLACE_LOG1PF. * modules/math (Makefile.am): Substitute GNULIB_LOG1PF, HAVE_LOG1PF, REPLACE_LOG1PF. * modules/log1pf: New file. * tests/test-math-c++.cc: Check the declaration of log1pf. * doc/posix-functions/log1pf.texi: Mention the new module.
Bruno Haible 5f70dcfc 2012-03-10T19:54:08 log1p: Provide replacement for Minix and MSVC. * lib/math.in.h (log1p): New declaration. * lib/log1p.c: New file. * m4/log1p.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether log1p is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG1P, HAVE_LOG1P. * modules/math (Makefile.am): Substitute GNULIB_LOG1P, HAVE_LOG1P. * modules/log1p (Files): Add lib/log1p.c, m4/log1p.m4. (Depends-on): Add math, isnand, log, round. (configure.ac): Invoke gl_FUNC_LOG1P. Arrange to compile replacement if HAVE_LOG1P is 0. * tests/test-math-c++.cc: Check the declaration of log1p. * doc/posix-functions/log1p.texi: Mention the replacement.
Bruno Haible d2e57cac 2012-03-11T00:59:57 expm1: Tiny doc fix.
Bruno Haible 14a3c6e4 2012-03-10T16:05:56 logf-ieee: Work around test failure on NetBSD 5.1. * m4/logf-ieee.m4: New file. * m4/logf.m4 (gl_FUNC_LOGF): If gl_FUNC_LOGF_IEEE is present, test whether logf works with a negative argument. Replace it if not. * lib/logf.c (logf): For negative arguments, return NaN. * modules/logf-ieee (Files): Add m4/logf-ieee.m4. (configure.ac): Invoke gl_FUNC_LOGF_IEEE. * doc/posix-functions/logf.texi: Mention the logf-ieee module.
Bruno Haible 81018344 2012-03-10T12:26:57 log-ieee: Work around test failure on NetBSD 5.1 and Solaris 11. * m4/log-ieee.m4: New file. * m4/log.m4 (gl_FUNC_LOG): If gl_FUNC_LOG_IEEE is present, test whether log works with a negative argument. Replace it if not. * lib/log.c (log): For negative arguments, return NaN. * modules/log-ieee (Files): Add m4/log-ieee.m4. (configure.ac): Invoke gl_FUNC_LOG_IEEE. * doc/posix-functions/log.texi: Mention the log-ieee module.
Bruno Haible 72983fb6 2012-03-10T02:48:48 logl: Work around OSF/1 5.1 bug. * lib/math.in.h (logl): Override if REPLACE_LOGL is 1. * lib/logl.c (logl): If logf exists, use it and provide just the workaround. * m4/logl.m4 (gl_FUNC_LOGL_WORKS): New macro. (gl_FUNC_LOGL): Invoke it. Set REPLACE_LOGL. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOGL. * modules/math (Makefile.am): Substitute REPLACE_LOGL. * modules/logl (configure.ac): Consider REPLACE_LOGL. (Depends-on): Update conditions. * doc/posix-functions/logl.texi: Mention the OSF/1 5.1 problem.
Bruno Haible 7073cb03 2012-03-10T00:55:48 logf: Work around OSF/1 5.1 bug. * lib/math.in.h (logf): Override if REPLACE_LOGF is 1. * lib/logf.c (logf): If logf exists, use it and provide just the workaround. * m4/logf.m4 (gl_FUNC_LOGF_WORKS): New macro. (gl_FUNC_LOGF): Invoke it. Set REPLACE_LOGF. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOGF. * modules/math (Makefile.am): Substitute REPLACE_LOGF. * modules/logf (configure.ac): Consider REPLACE_LOGF. (Depends-on): Update conditions. * doc/posix-functions/logf.texi: Mention the OSF/1 5.1 problem.
Bruno Haible 0d37a2e6 2012-03-09T23:55:13 log: Work around OSF/1 5.1 bug. * lib/math.in.h (log): New declaration. * lib/log.c: New file. * m4/log.m4 (gl_FUNC_LOG_WORKS): New macro. (gl_FUNC_LOG): Invoke it. Set REPLACE_LOG. * m4/math_h.m4 (gl_MATH_H): Test whether log is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG, REPLACE_LOG. * modules/math (Makefile.am): Substitute GNULIB_LOG, REPLACE_LOG. * modules/log (Files): Add lib/log.c. (Depends-on): Add math. (configure.ac): If REPLACE_LOG is 1, compile an override. * tests/test-math-c++.cc: Check the declaration of log. * doc/posix-functions/log.texi: Mention the OSF/1 5.1 problem.
Bruno Haible aa42b545 2012-03-09T02:14:26 exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5. * m4/exp2l-ieee.m4: New file. * m4/exp2l.m4 (gl_FUNC_EXP2L): If gl_FUNC_EXP2L_IEEE is present, test whether exp2l works with a NaN argument and with a negative infinity argument. Replace it if not. * lib/math.in.h (exp2l): Override if REPLACE_EXP2L is 1. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_EXP2L. * modules/math (Makefile.am): Substitute REPLACE_EXP2L. * modules/exp2l (configure.ac): Consider REPLACE_EXP2L. (Depends-on): Update conditions. * modules/exp2l-ieee (Files): Add m4/exp2l-ieee.m4. (configure.ac): Invoke gl_FUNC_EXP2L_IEEE. * doc/posix-functions/exp2l.texi: Mention the exp2l-ieee module.
Bruno Haible 6be81027 2012-03-09T01:13:40 New module 'exp2l'. * lib/math.in.h (exp2l): New declaration. * lib/exp2l.c: New file. * lib/expl-table.c: New file, extracted from lib/expl.c. * lib/expl.c (gl_expl_table): New declaration. (expl): Remove expl_table. Update reference. * m4/exp2l.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether exp2l is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_EXP2L, HAVE_DECL_EXP2L. * modules/math (Makefile.am): Substitute GNULIB_EXP2L, HAVE_DECL_EXP2L. * modules/exp2l: New file. * modules/expl (Files): Add lib/expl-table.c. (configure.ac): Compile also expl-table.c. * tests/test-math-c++.cc: Check the declaration of exp2l. * doc/posix-functions/exp2l.texi: Mention the new module and the IRIX problem.
Bruno Haible bff4a106 2012-03-08T20:24:53 New module 'exp2f'. * lib/math.in.h (exp2f): New declaration. * lib/exp2f.c: New file. * m4/exp2f.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether exp2f is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_EXP2F, HAVE_DECL_EXP2F. * modules/math (Makefile.am): Substitute GNULIB_EXP2F, HAVE_DECL_EXP2F. * modules/exp2f: New file. * tests/test-math-c++.cc: Check the declaration of exp2f. * doc/posix-functions/exp2f.texi: Mention the new module and the IRIX problem.
Bruno Haible 98d50dd6 2012-03-07T03:29:32 New module 'exp2'. * lib/math.in.h (exp2): New declaration. * lib/exp2.c: New file. * m4/exp2.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether exp2 is declared. (gl_MATH_H_DEFAULTS): Initialize GNULIB_EXP2, HAVE_DECL_EXP2, REPLACE_EXP2. * modules/math (Makefile.am): Substitute GNULIB_EXP2, HAVE_DECL_EXP2, REPLACE_EXP2. * modules/exp2: New file. * tests/test-math-c++.cc: Check the declaration of exp2. * doc/posix-functions/exp2.texi: Mention the new module and the IRIX and OpenBSD problems.
Bruno Haible 33cfac68 2012-03-08T12:02:35 remainderf: Override buggy system function on IRIX 6.5. * m4/remainderf.m4 (gl_FUNC_REMAINDERF_WORKS): New macro. (gl_FUNC_REMAINDERF): Invoke it. Don't assume remainderf() is declared when it exists. * doc/posix-functions/remainderf.texi: Mention the IRIX problems.
Bruno Haible 519433af 2012-03-08T04:01:51 expm1l: Don't override undeclared system function on IRIX 6.5. * lib/math.in.h (expm1l): Test HAVE_DECL_EXPM1L, not HAVE_EXPM1L. * m4/expm1l.m4 (gl_FUNC_EXPM1L): Don't assume expm1l() is declared when it exists. Set HAVE_DECL_EXPM1L. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize HAVE_DECL_EXPM1L, not HAVE_EXPM1L. * modules/math (Makefile.am): Substitute HAVE_DECL_EXPM1L, not HAVE_EXPM1L. * doc/posix-functions/expm1l.texi: Mention missing declaration problem.
Bruno Haible df8a96fc 2012-03-08T03:21:38 remainderl: Don't override undeclared system function on IRIX 6.5. * lib/math.in.h (remainderl): Test HAVE_DECL_REMAINDERL, not HAVE_REMAINDERL. * m4/remainderl.m4 (gl_FUNC_REMAINDERL): Don't assume remainderl() is declared when it exists. Set HAVE_DECL_REMAINDERL. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize HAVE_DECL_REMAINDERL, not HAVE_REMAINDERL. * modules/math (Makefile.am): Substitute HAVE_DECL_REMAINDERL, not HAVE_REMAINDERL. * doc/posix-functions/remainderl.texi: Mention missing declaration problem.