[Vm-dev] 'Run object as method' is flawed in VM

David T. Lewis lewis at mail.msen.com
Wed Dec 9 18:16:00 UTC 2009


On Wed, Dec 09, 2009 at 07:39:03AM +0200, Igor Stasenko wrote:
>  
> I tried to play with this feature and found that if i install a
> smallinteger into method dictionary as a method
> and then try to invoke that method, my VM is crashing.
> 
> testCrashWithSmallInt
> 	self class methodDict at: #answer10 put: 10.
> 	self should: [self answer10] raise: MessageNotUnderstood.
> 	self class basicRemoveSelector: #answer10.

Good bug! I confirmed that the test crashes a 32-bit unix VM on Linux.
Interestingly, it does *not* crash a 64-bit VM on the same platform.
The self answer10 part of the test passes with the expected exception,
although the test fails on the #basicRemoveSelector: with a DNU on
SmallInteger>>flushCache. Most likely that just means that there
is more than one bug involved.

Dave



More information about the Vm-dev mailing list