This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Patch for bug 12713
- From: "Joseph S. Myers" <jsm at polyomino dot org dot uk>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 24 Sep 2004 20:27:43 +0000 (UTC)
- Subject: Patch for bug 12713
This patch fixes bug 12713, asking for documentation of the interaction of
attribute noreturn and longjmp. It passes "make info" and "make dvi".
Applied to mainline.
--
Joseph S. Myers http://www.srcf.ucam.org/~jsm28/gcc/
http://www.srcf.ucam.org/~jsm28/gcc/#c90status - status of C90 for GCC 4.0
jsm@polyomino.org.uk (personal mail)
jsm28@gcc.gnu.org (Bugzilla assignments and CCs)
2004-09-24 Joseph S. Myers <jsm@polyomino.org.uk>
PR c/12713
* doc/extend.texi: Document interaction of attribute noreturn and
longjmp.
diff -rupN doc.orig/extend.texi doc/extend.texi
--- doc.orig/extend.texi 2004-09-23 16:08:32.000000000 +0000
+++ doc/extend.texi 2004-09-24 20:03:47.000000000 +0000
@@ -2015,7 +2015,7 @@ uninitialized variables.
The @code{noreturn} keyword does not affect the exceptional path when that
applies: a @code{noreturn}-marked function may still return to the caller
-by throwing an exception.
+by throwing an exception or calling @code{longjmp}.
Do not assume that registers saved by the calling function are
restored before calling the @code{noreturn} function.