The Inbox: Kernel-jar.1398.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Inbox: Kernel-jar.1398.mcz

commits-2
A new version of Kernel was added to project The Inbox:
http://source.squeak.org/inbox/Kernel-jar.1398.mcz

==================== Summary ====================

Name: Kernel-jar.1398
Author: jar
Time: 2 May 2021, 2:56:26.972089 pm
UUID: 9398993d-726c-8747-bde6-506318c4f898
Ancestors: Kernel-nice.1397

Fix a bug in #resignalAs causing an incorrect evaluation of resignalAs in combination with #outer. Complemented with a test in Tests-jar.461 (Inbox)

To illustrate the bug try:

| x |
x:=''.
        [
                [1/0. x:=x,'1'] on: ZeroDivide do: [:ex | ex outer. x:=x,'2'].
                x:=x,'3'
        ] on: ZeroDivide do: [:ex | ex resignalAs: Notification].
x

answers:
---> '2' currently - incorrect
---> '13' after the fix

=============== Diff against Kernel-nice.1397 ===============

Item was changed:
  ----- Method: Exception>>resignalAs: (in category 'handling') -----
  resignalAs: replacementException
+ "Signal an alternative exception in place of the receiver.
+ Unwind to signalContext before signalling the replacement exception"
- "Signal an alternative exception in place of the receiver."
 
+ signalContext resumeEvaluating: [replacementException signal]!
- self resumeEvaluating: [replacementException signal]!