[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] Primitive 64 (primitiveStringAtPut) does not fail atomically (Issue #636)

Christoph Thiede notifications at github.com
Fri May 27 17:44:09 UTC 2022


To reproduce, in Squeak, do this:

```smalltalk
'aaa' copy tryPrimitive: 64 withArgs: {2. $b asciiValue}; yourself
```

Expected behavior: The primitive fails, and the string remains `aaa`. This is also what we are used to from primitive 61 (primitiveAtPut).

Actual behavior: The primitive fails, but the string slot has been changed to `Character null`.

(By the way, TruffleSqueak and SqueakJS show my expected behavior.)

Maybe there is some clever reasoning behind it, but a primitive that fails should not have any other side effects from my first impression. Is this a bug?

-- 
Reply to this email directly or view it on GitHub:
https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/636
You are receiving this because you are subscribed to this thread.

Message ID: <OpenSmalltalk/opensmalltalk-vm/issues/636 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20220527/7c001b1d/attachment.html>


More information about the Vm-dev mailing list