A changeset that is sure to be somewhat controversial.
from preamble:
"Change Set: IfUnhandledError-nk Date: 27 June 2003 Author: Ned Konz
This changeset: - edits all callers of BlockContext>>ifError: to use something else, usually #ifUnhandledError: - adds BlockContext>>ifUnhandledError: (see below) - marks BlockContext>>ifError: as deprecated - edits all callers of Semaphore>>critical:ifError: to use something else. - marks Semaphore>>critical:ifError: as deprecated - edits most callers of on: Error do: [ ... ] to use something else, mostly #ifUnhandledError: - restores the behavior of removing step messages from the WorldState step list when the step messages have an error (the 'start stepping again' debug menu choice will restart them)
I wrote #ifUnhandledError:, which allows enclosing scopes to handle exceptions. This behaves exactly the same as #ifError:, except that: - if there is an outer exception handler, that handler gets to handle the exception instead, and - there is now a one-argument form as well as the 0 and 2 argument forms that gets passed the exception itself.
"!