Radar · Solidity · Archive · Week 49 · Dec 1 – 7, 2025
Solidity 0.8.31 Release
Worth knowingcompiler
- What changed
- The compiler now supports the new EVM features introduced by the Fusaka network upgrade, extends the functionality of storage layout specifiers, and deprecates the first batch of features scheduled for removal in the 0.9.0 breaking release. Official ARM Linux builds are added.
- Production impact
- The source does not say.
- Try it
- Compile a contract that uses a constant state variable in the base slot expression and verify it compiles with
pragma solidity ^0.8.31. - Source
- github.com/argotorg/solidity/releases/tag/v0.8.31
Understand it, then run it
Solidity 0.8.31 adds a small but useful tweak to how storage layout works. You can now write a constant state variable and use it inside the slot expression that tells the compiler where a storage variable lives. This means you can write slot: 0 + MY_CONST instead of just slot: 0. The compiler will evaluate the constant at compile time and place the variable in the correct slot. It keeps the rest of the language the same, so you don’t need to learn new syntax beyond the slot: keyword.
Written by gpt-oss-20b from the linked source · claims checked against the sources · archive, not individually reviewed