Mercurial > hg > xemacs-beta
comparison src/emacs.c @ 32:e04119814345 r19-15b99
Import from CVS: tag r19-15b99
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:52:56 +0200 |
parents | 859a2309aef8 |
children | ee648375d8d6 |
comparison
equal
deleted
inserted
replaced
31:b9328a10c56c | 32:e04119814345 |
---|---|
178 fatal_error_in_progress = 1; | 178 fatal_error_in_progress = 1; |
179 shut_down_emacs (sig, Qnil); | 179 shut_down_emacs (sig, Qnil); |
180 stderr_out("\nLisp backtrace follows:\n\n"); | 180 stderr_out("\nLisp backtrace follows:\n\n"); |
181 Fbacktrace(Qexternal_debugging_output, Qt); | 181 Fbacktrace(Qexternal_debugging_output, Qt); |
182 | 182 |
183 # if 0 /* This is evil, rarely useful, and causes grief in some cases. */ | |
183 /* Check for Sun-style stack printing via /proc */ | 184 /* Check for Sun-style stack printing via /proc */ |
184 { | 185 { |
185 CONST char *pstack = "/usr/proc/bin/pstack"; | 186 CONST char *pstack = "/usr/proc/bin/pstack"; |
186 if (access(pstack, X_OK) == 0) | 187 if (access(pstack, X_OK) == 0) |
187 { | 188 { |
190 "(A real debugger may provide better information)\n\n"); | 191 "(A real debugger may provide better information)\n\n"); |
191 sprintf(buf, "%s %d >&2", pstack, (int)getpid()); | 192 sprintf(buf, "%s %d >&2", pstack, (int)getpid()); |
192 system(buf); | 193 system(buf); |
193 } | 194 } |
194 } | 195 } |
196 # endif | |
195 } | 197 } |
196 #ifdef VMS | 198 #ifdef VMS |
197 LIB$STOP (SS$_ABORT); | 199 LIB$STOP (SS$_ABORT); |
198 #else | 200 #else |
199 /* Signal the same code; this time it will really be fatal. */ | 201 /* Signal the same code; this time it will really be fatal. */ |
2118 /* This flag is useful to define if you're under a debugger; this way, you | 2120 /* This flag is useful to define if you're under a debugger; this way, you |
2119 can put a breakpoint of assert_failed() and debug multiple problems | 2121 can put a breakpoint of assert_failed() and debug multiple problems |
2120 in one session without having to recompile. */ | 2122 in one session without having to recompile. */ |
2121 /* #define ASSERTIONS_DONT_ABORT */ | 2123 /* #define ASSERTIONS_DONT_ABORT */ |
2122 | 2124 |
2123 #ifdef USE_ASSERTIONS | |
2124 /* This highly dubious kludge ... shut up Jamie, I'm tired of your slagging. */ | 2125 /* This highly dubious kludge ... shut up Jamie, I'm tired of your slagging. */ |
2125 | 2126 |
2126 DOESNT_RETURN | 2127 DOESNT_RETURN |
2127 assert_failed (CONST char *file, int line, CONST char *expr) | 2128 assert_failed (CONST char *file, int line, CONST char *expr) |
2128 { | 2129 { |
2131 #undef abort /* avoid infinite #define loop... */ | 2132 #undef abort /* avoid infinite #define loop... */ |
2132 #ifndef ASSERTIONS_DONT_ABORT | 2133 #ifndef ASSERTIONS_DONT_ABORT |
2133 abort (); | 2134 abort (); |
2134 #endif | 2135 #endif |
2135 } | 2136 } |
2136 #endif /* USE_ASSERTIONS */ | |
2137 | 2137 |
2138 #ifdef QUANTIFY | 2138 #ifdef QUANTIFY |
2139 DEFUN ("quantify-start-recording-data", | 2139 DEFUN ("quantify-start-recording-data", |
2140 Fquantify_start_recording_data, 0, 0, 0, /* | 2140 Fquantify_start_recording_data, 0, 0, 0, /* |
2141 Start recording Quantify data. | 2141 Start recording Quantify data. |