From: Eric Blake Date: Wed, 18 Jun 2008 16:50:06 +0000 (-0600) Subject: Work around cygwin 1.5.25 strsignal bug. X-Git-Tag: v0.1~7250 X-Git-Url: http://erislabs.org.uk/gitweb/?a=commitdiff_plain;h=79dd80fb31df6dc6a3f68db1f8fa393a808a154b;p=gnulib.git Work around cygwin 1.5.25 strsignal bug. * tests/test-strsignal.c: Allow for const char *. * doc/glibc-functions/strsignal.texi (strsignal): Document the bug. Signed-off-by: Eric Blake --- diff --git a/ChangeLog b/ChangeLog index 95f13fe60..30d823584 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2008-06-18 Eric Blake + + Work around cygwin 1.5.25 strsignal bug. + * tests/test-strsignal.c: Allow for const char *. + * doc/glibc-functions/strsignal.texi (strsignal): Document the bug. + 2008-06-18 Simon Josefsson * users.txt: Update URL to article and add author/date diff --git a/doc/glibc-functions/strsignal.texi b/doc/glibc-functions/strsignal.texi index 80ad6dadb..65c0b1b96 100644 --- a/doc/glibc-functions/strsignal.texi +++ b/doc/glibc-functions/strsignal.texi @@ -2,15 +2,23 @@ @subsection @code{strsignal} @findex strsignal -Gnulib module: --- +Gnulib module: strsignal Portability problems fixed by Gnulib: @itemize +@item +This function is missing on some platforms: +AIX 4.3.2, HP-UX 11, IRIX 6.5, OSF/1 5.1, mingw. + +@item +This function does not return a string for out-of-range numbers on +some platforms: +Solaris, AIX 5.1. @end itemize Portability problems not fixed by Gnulib: @itemize -@item -This function is missing on some platforms: -AIX 4.3.2, HP-UX 11, IRIX 6.5, OSF/1 5.1, mingw. +This function returns @code{const char *} instead of @code{char *} on +some platforms: +cygwin 1.5.25. @end itemize diff --git a/tests/test-strsignal.c b/tests/test-strsignal.c index 8cc955bdc..8868346e6 100644 --- a/tests/test-strsignal.c +++ b/tests/test-strsignal.c @@ -46,7 +46,11 @@ int main (int argc, char **argv) { - char *str; + /* Work around bug in cygwin 1.5.25 by declaring str as + const char *, even though strsignal is supposed to return char *. + At any rate, this doesn't hurt, since POSIX 200x states that "The + string pointed to shall not be modified by the application." */ + const char *str; /* We try a couple of signals, since not all signals are supported everywhere. Notwithstanding the #ifdef for neatness, SIGINT should in