Skip to content

Improve errors with incompatible bytecode versions

Camil Staps requested to merge 133-add-version-check-to-wasm into main

What does this MR do?

A couple of improvements:

  • Implement #133 (closed), a version check for prelinked bytecode so that prelinked bytecode generated with an older version of a toolset, when interpreted with a newer version of the interpreter (or vice versa), does not crash but yields an error.
  • Adds human-readable error messages when bytecode parsing fails in bclink, bcprelink, and interpret.

Changes to public APIs

  • bcgen -V now outputs the ABC version number to stdout instead of stderr. No impact expected, as the flag is not used in any tools.

Author's checklist (required)

  • If bugs have been solved, tests have been added (guidelines)
  • A changelog entry has been added (guidelines)
  • Newly added code is documented (guidelines)
  • Newly added code has a style consistent with the rest of the repository
  • Intermediate commits compile (use git rebase -i main if not)

Related issues

Closes #133 (closed)

Edited by Camil Staps

Merge request reports