# HG changeset patch # User Richard M. Stallman # Date 1107416175 0 # Node ID c7a28d8cfff9db47cc00819b701b0cfff7eab0ae # Parent 212069a54acadac8e960f06a52e088833a2caab9 (x_error_quitter): On GCC 3 and up, specify noinline. diff -r 212069a54aca -r c7a28d8cfff9 src/xterm.c --- a/src/xterm.c Thu Feb 03 07:35:28 2005 +0000 +++ b/src/xterm.c Thu Feb 03 07:36:15 2005 +0000 @@ -7770,10 +7770,18 @@ It kills all frames on the display that we got the error for. If that was the only one, it prints an error message and kills Emacs. */ -/* It is after x_error_handler so that it won't get inlined in - x_error_handler. */ - -static void +/* .gdbinit puts a breakpoint here, so make sure it is not inlined. */ + +#if __GNUC__ >= 3 /* On GCC 3.0 we might get a warning. */ +#define NO_INLINE __attribute__((noinline)) +#else +#define NO_INLINE +#endif + +/* On older GCC versions, just putting x_error_quitter + after x_error_handler prevents inlining into the former. */ + +static void NO_INLINE x_error_quitter (display, error) Display *display; XErrorEvent *error;