From f691243c787fb7a06091807a1297a130eb561b2a Mon Sep 17 00:00:00 2001 From: Nikodemus Siivola Date: Sat, 11 Oct 2008 12:42:20 +0000 Subject: [PATCH] 1.0.21.16: document the earlier change to --disable-debugger handling --- NEWS | 3 +++ doc/manual/start-stop.texinfo | 7 ++++++- doc/sbcl.1 | 42 ++++++++++++++++++++--------------------- version.lisp-expr | 2 +- 4 files changed, 30 insertions(+), 24 deletions(-) diff --git a/NEWS b/NEWS index c79ccf8..a341dbe 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,8 @@ ;;;; -*- coding: utf-8; -*- changes in sbcl-1.0.22 relative to 1.0.21: + * minor incompatible change: --disable-debugger toplevel option now takes + effect before processing of initialization files and --eval or --load + options. * enhancement: inoccous calls to EVAL or generic functions dispatching on subclasses of eg. STREAM no longer cause compiler notes to appear. * enhancement: the system no longer resignals errors from --load and diff --git a/doc/manual/start-stop.texinfo b/doc/manual/start-stop.texinfo index ff96f4f..d482992 100644 --- a/doc/manual/start-stop.texinfo +++ b/doc/manual/start-stop.texinfo @@ -252,7 +252,12 @@ option, this makes it easier to write Lisp "scripts" which work cleanly in Unix pipelines. @item --disable-debugger -This is equivalent to @code{--eval '(sb-ext:disable-debugger)'}. +By default when SBCL encounters an error, it enters the builtin +debugger, allowing interactive diagnosis and possible intercession. +This option disables the debugger, causing errors to print a backtrace +and exit with status 1 instead. When given, this option takes effect +before loading of initialization files or processing @code{--eval} and +@code{--load} options. See @code{sb-ext:disable-debugger} for details. @xref{Debugger Entry}. @end table diff --git a/doc/sbcl.1 b/doc/sbcl.1 index c8d8ab7..e4f4146 100644 --- a/doc/sbcl.1 +++ b/doc/sbcl.1 @@ -320,30 +320,28 @@ makes it easier to write Lisp "scripts" which work cleanly in Unix pipelines. .TP 3 .B \-\-disable\-debugger -This is equivalent to \-\-eval \(aq(sb\-ext:disable\-debugger)\(aq. By -default, a Common Lisp system tries to ask the programmer for help -when it gets in trouble (by printing a debug prompt, then listening, -on \f(CR*DEBUG\-IO*\fR). However, this is not useful behavior for a system -running with no programmer available, and this option tries to set up -more appropriate behavior for that situation. This is implemented by -redefining \f(CRINVOKE\-DEBUGGER\fR so that any call exits the process with a -failure code after printing a backtrace. (Note that because it is -implemented by modifying special variables and \f(CRFDEFINITION\fRs, its -effects persist in .core files created by -\f(CRSB\-EXT:SAVE\-LISP\-AND\-DIE\fR. If you want to undo its -effects, \fIe.g.\fR if you build a system unattended and then want to -operate a derived system interactively, see the -\f(CRSB\-EXT:ENABLE\-DEBUGGER\fR command.) +By default when SBCL encounters an error, it enters the builtin +debugger, allowing interactive diagnosis and possible intercession. +This option disables the debugger, causing errors to print a backtrace +and exit with status 1 instead -- which is a mode of operation better suited +for batch processing. See the user manual on \f(CRSB\-EXT:DISABLE\-DEBUGGER\fR for details. .PP -Regardless of the order in which \-\-sysinit, \-\-userinit, and -\-\-eval options appear on the command line, the sysinit file, if it -exists, is loaded first; then the userinit file, if it exists, is -loaded; then any \-\-eval commands are read and executed in sequence; -then the read-eval-print loop is started on standard input. At any -step, error conditions or commands such as \f(CRSB\-EXT:QUIT\fR can -cause execution to be terminated before proceeding to subsequent -steps. +Regardless of the order in which toplevel options appear on the command +line, the order of actions is: + +.nr step 1 1 +.IP \n[step]. 3 +Debugger is disabled, if requested. +.IP \n+[step]. +Any system initialization file is loaded, unless prohibited. +.IP \n+[step]. +Any user initialization file is loaded, unless prohibited. +.IP \n+[step]. +\-\-eval and \-\-load options are processed in the order given. +.PP + +Finally, the read-eval-print loop is entered. Note that when running SBCL with the \-\-core option, using a core file created by a user call to the diff --git a/version.lisp-expr b/version.lisp-expr index 8243121..ad842bd 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"1.0.21.15" +"1.0.21.16" -- 1.7.10.4