For the complete documentation index, see llms.txt
Compact toolchain 0.31.1
- Date: 2026-06-25
- Language version: 0.23.0
- Compact runtime version: 0.16.0
- Environment: All public Midnight environments at the time of release. For the full compatibility matrix, see the release notes overview
High-level summary
Version 0.31.1 of the Compact toolchain is a patch release on the 0.31 line that fixes code generation for certain casts. The language version and the Compact runtime version are unchanged, so contracts compile against the same runtime as with 0.31.0. You can update to this version with compact update 0.31.
Audience
These release notes are intended for Compact smart contract developers.
What changed
- Fixed code generation for certain casts
Bug fixes
Code generation for certain casts
The compiler's common-subexpression matching treated a guarded (safe) unsigned downcast and an unguarded one of the same value as the same operation, so one could be substituted for the other in the generated circuit. The safe flag is now part of the comparison and of the hash, so the two forms stay distinct.