Hi,
When I run the following code... [4 / 0] ensure: [self halt] ... I get a ZeroDivide debugger, as expected. However, the halt does not get executed when I press the "Abandon" button (although pressing "Proceed" does cause it to be executed).
Interestingly, [[4 / 0] ensure: [self halt]] on: ZeroDivide do: [:e | ] does result in the halt being executed.
This behavior seems to defy common sense, not to mention my understanding of Section 5.4.3.1 of the ANSI standard. When I say "make sure this happens", I'm not joking around :-) Can anyone explain this to me? Or, better yet, fix it? :-)
This has been observed on Macintosh 3.7.5 and 3.8.6 VMs, as well as Windows 3.7.1.
Thanks, Josh
On 9/23/05, Josh Gargus schwa@fastmail.us wrote:
When I run the following code... [4 / 0] ensure: [self halt] ... I get a ZeroDivide debugger, as expected. However, the halt does not get executed when I press the "Abandon" button (although pressing "Proceed" does cause it to be executed).
It halts for me, in a Squeak 3.8 image, even if I choose "Abandon". It's an "unwind error", but it is executed. Hope this help!
--Tom
On Sep 24, 2005, at 12:26 PM, Tom Phoenix wrote:
On 9/23/05, Josh Gargus schwa@fastmail.us wrote:
When I run the following code... [4 / 0] ensure: [self halt] ... I get a ZeroDivide debugger, as expected. However, the halt does not get executed when I press the "Abandon" button (although pressing "Proceed" does cause it to be executed).
It halts for me, in a Squeak 3.8 image, even if I choose "Abandon". It's an "unwind error", but it is executed. Hope this help!
That's good to know. I neglected to mention that we observed this in a Jasmine Croquet image (based on 3.6). It's good news since the next release of Croquet will be based on 3.8.
Thanks, Josh
--Tom
squeak-dev@lists.squeakfoundation.org