Fix doc about _setjmp.
authorBruno Haible <bruno@clisp.org>
Sat, 7 Jun 2008 11:49:10 +0000 (13:49 +0200)
committerBruno Haible <bruno@clisp.org>
Sat, 7 Jun 2008 11:49:10 +0000 (13:49 +0200)
ChangeLog
doc/posix-functions/_longjmp.texi
doc/posix-functions/_setjmp.texi
doc/posix-functions/setjmp.texi

index 2c4297fdf4364f26b5e372200ed9e772f4742ce1..d7219dd039a4f3b2b8d5d4ca81a6585c6f58e584 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,16 @@
+2008-06-07  Bruno Haible  <bruno@clisp.org>
+
+       * doc/posix-functions/_setjmp.texi: Explain the use of this function
+       regardless of POSIX.
+       * doc/posix-functions/_longjmp.texi: Likewise.
+       * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
+       SystemV platform in this case.
+
 2008-06-06  Eric Blake  <ebb9@byu.net>
 
        Document abort() bugs.
        * doc/posix-functions/abort.texi (abort): Mention anomalies.
+
        * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
        * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
        sigsetjmp.
index 7d571f88e408a67befb994817276f4f94d5e12db..271239560e3a2ece8966c3ddaa069c24c5010ab7 100644 (file)
@@ -15,7 +15,10 @@ Portability problems not fixed by Gnulib:
 @item
 This function is missing on some platforms:
 Solaris 2.5.1, mingw.
-
-@item
-This function is obsolete; use @code{siglongjmp} instead.
 @end itemize
+
+Note: A future revision of POSIX later than the 2008/2009 one may drop the
+functions @code{_setjmp} and @code{_longjmp}.  Still, in 2008, on all
+systems which have @code{_setjmp}, it is the fastest way to save the
+registers but not the signal mask (up to 30 times faster than @code{setjmp}
+on some systems).
index 7c1dc320f620c5fa859a52603acf151ea5a41e2f..abf18252244051241e836939041d6604158a2bfe 100644 (file)
@@ -15,7 +15,10 @@ Portability problems not fixed by Gnulib:
 @item
 This function is missing on some platforms:
 Solaris 2.5.1.
-
-@item
-This function is obsolete; use @code{sigsetjmp} instead.
 @end itemize
+
+Note: A future revision of POSIX later than the 2008/2009 one may drop the
+functions @code{_setjmp} and @code{_longjmp}.  Still, in 2008, on all
+systems which have @code{_setjmp}, it is the fastest way to save the
+registers but not the signal mask (up to 30 times faster than @code{setjmp}
+on some systems).
index f6ecc0016e44b2e19c3634f0bc306de7391cd937..3d7860b834ae108c6fef8eb96c959a21ebfa0cee 100644 (file)
@@ -16,7 +16,8 @@ Portability problems not fixed by Gnulib:
 POSIX does not specify whether @code{setjmp} saves the signal mask in the
 @code{jmp_buf}.  It does on BSD platforms, and on glibc platforms when
 @code{_BSD_SOURCE} is defined; in this case @code{setjmp} behaves like
-@code{sigsetjmp}, and functions @code{_setjmp} and @code{_longjmp} are
-available that don't save or restore the signal mask.  On System V platforms,
-and on glibc platforms by default, @code{setjmp} doesn't save the signal mask.
+@code{sigsetjmp(.,1)}, and functions @code{_setjmp} and @code{_longjmp} are
+available that don't save or restore the signal mask.  On System V platforms
+(excluding HP-UX), and on glibc platforms by default, @code{setjmp} doesn't
+save the signal mask.
 @end itemize