Daily Commit Log

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

Daily Commit Log

commits-2
Changes to Trunk (http://source.squeak.org/trunk.html) in the last 24 hours:

http://lists.squeakfoundation.org/pipermail/packages/2015-September/008969.html

Name: Kernel-eem.952
Ancestors: Kernel-eem.951

The comparison of the initial literal in plugin primitive methods needs to compare the first two entries, not the first three.

=============================================

http://lists.squeakfoundation.org/pipermail/packages/2015-September/008970.html

Name: Compiler-eem.309
Ancestors: Compiler-eem.308

Fix the compiler to collapse optimized block temps of the same name to the same temp location for a better debugging UX.

=============================================

http://lists.squeakfoundation.org/pipermail/packages/2015-September/008971.html

Name: Tools-eem.633
Ancestors: Tools-mt.632

Fix hard VM crash when defining quick methods from MNUs in the debugger.  The bug is that the sender context (Message>>sentTo:) is doing a perform:withArguments:[inSuperclass:] but the receiver and arguments have already been removed from the context, so simply backing up to the point of send and proceeding will have disastrous consequences; there must be a receiver and arguments on the stack.  So if the arguments are unavailable we simply restart the context inmstead of backing up to the point of send.


To reproduce:
0. make sure e.g. Object>>#zork is unimplemented
1. evaluate "nil zork"
2. in the debugger examine the doesNotUnderstand: context and then hit proceed.
3. click the Create button and define
        Object>>#zork
                ^nil
4. (the debugger sets the active context to Message>>sentTo:) hit proceed

Before the VM woudl crash.  Now the debugger sets the pc to the start of the Message>>sentTo: method.

=============================================