* defs.h (return_to_top_level): Comment.
authorAndrew Cagney <cagney@redhat.com>
Mon, 19 Nov 2001 21:44:46 +0000 (21:44 +0000)
committerAndrew Cagney <cagney@redhat.com>
Mon, 19 Nov 2001 21:44:46 +0000 (21:44 +0000)
gdb/ChangeLog
gdb/defs.h

index 818d8ebba8f8e3c156dc321962cf3a616cf10d50..3d5e5644e52738172d0b2e97fdf814cdc056a68b 100644 (file)
@@ -1,3 +1,7 @@
+2001-11-19  Andrew Cagney  <ac131313@redhat.com>
+
+       * defs.h (return_to_top_level): Comment.
+
 Mon Nov 19 14:58:52 2001  Andrew Cagney  <cagney@redhat.com>
 
        * remote.c (remote_open_1, remote_async_open_1): Use ISO C string
index 390600ff6ba06c2572c735a790992958e5e5e75f..e338f3ce701ff85a6d4dbc2bb7feaf26ed8766d8 100644 (file)
@@ -1112,6 +1112,21 @@ enum return_reason
 #define RETURN_MASK_ALL                (RETURN_MASK_QUIT | RETURN_MASK_ERROR)
 typedef int return_mask;
 
+/* Throw an exception of type RETURN_REASON.  Will execute a LONG JUMP
+   to the inner most containing exception handler (established using
+   catch_exceptions() or the legacy catch_errors()).
+
+   Useful when a section of code that caught an exception finds it
+   needs to repropagate that exception up the call chain.
+
+   The name return_to_top_level() dates back to a time when GDB had
+   only one exception handler installed at the top level.  This really
+   did return to the top level.  The name should probably be changed.
+
+   NOTE: Some sections of code are using error_begin() in conjunction
+   with return_to_top_level() to throw the initial exception.  That
+   code should, instead, use either error() or error_string().  */
+
 extern NORETURN void return_to_top_level (enum return_reason) ATTR_NORETURN;
 
 /* Call FUNC(UIOUT, FUNC_ARGS) but wrapped within an exception