From: Richard M. Stallman Date: Thu, 3 Feb 2005 07:36:15 +0000 (+0000) Subject: (x_error_quitter): On GCC 3 and up, specify noinline. X-Git-Tag: ttn-vms-21-2-B4~2440 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=799775ff761dae4cc360b2bc273949ef76c29395;p=emacs.git (x_error_quitter): On GCC 3 and up, specify noinline. --- diff --git a/src/xterm.c b/src/xterm.c index 2db3379a264..f047c255c69 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -7770,10 +7770,18 @@ x_error_handler (display, error) 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. */ +/* .gdbinit puts a breakpoint here, so make sure it is not inlined. */ -static void +#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;