Skip to content

fix: List fromEncodedList reference id arg order#491

Open
cuiweixie wants to merge 1 commit intoIoLanguage:nativefrom
cuiweixie:fix/fromEncodedList-reference-arg
Open

fix: List fromEncodedList reference id arg order#491
cuiweixie wants to merge 1 commit intoIoLanguage:nativefrom
cuiweixie:fix/fromEncodedList-reference-arg

Conversation

@cuiweixie
Copy link
Copy Markdown

Summary

  • Fix fromEncodedList REFERENCE branch: clear the objectForReferenceId cached message argument after IoObject_perform, not immediately after IONUMBER(id). The premature IONIL cleared the id before the lookup ran.
  • Add ListTest regression testEncodedListFromEncodedListReferenceId using manual bytes matching the encoded format (REFERENCE, id 42) and Lobby hooks.

Testing

cd build && cmake --build .
./_build/binaries/io ../libs/iovm/tests/correctness/ListTest.io

Clear the objectForReferenceId message cached argument after
IoObject_perform, not before. Previously IONIL immediately after
IONUMBER(id) cleared the id before the lookup call.

Add ListTest regression (manual REFERENCE encoding, id 42).
@stevedekorte stevedekorte changed the base branch from master to native April 20, 2026 19:51
@stevedekorte
Copy link
Copy Markdown
Member

Retargeting this to the new native branch: master is being replaced with the WASM-targeted build (see #495). The native branch carries the legacy CMake / Eerie / DynLib code where this fix belongs. Thanks @cuiweixie!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants