Eliot Miranda uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-eem.829.mcz==================== Summary ====================
Name: Tools-eem.829
Author: eem
Time: 15 August 2018, 7:59:01.758651 pm
UUID: a9d8d8b5-5dbd-4838-8c9d-d0ac6c99801e
Ancestors: Tools-cmm.828
Fix a typo and an unnecessary complication in cutBackExecutionToSenderContext
=============== Diff against Tools-cmm.828 ===============
Item was changed:
----- Method: Debugger>>cutBackExecutionToSenderContext (in category 'private') -----
cutBackExecutionToSenderContext
"When accepting a new version of a method which can't be simulated (i.e. a quick method) we
must cut back to the sender. But this is non-trivial. If the quick method has been reached via
+ a perform: (as it is when one uses Create to implement a method from an MNU) then the relevant
- a perform: (as it is when one uses Create toi implement a method from an MNU) then the relevant
arguments won't be on the stack and we can't simply proceed without crashing the VM."
| oldContext context sel |
oldContext := self selectedContext.
self down.
context := self selectedContext.
+ context pc: context previousPc.
- context jump: (context previousPc - context pc).
sel := context selectorToSendOrSelf.
sel numArgs = oldContext method numArgs
ifTrue:
[context push: oldContext receiver.
oldContext arguments do:
[:arg| context push: arg]]
ifFalse:
[context privRefresh; stepToSendOrReturn]!