See you in Mumbai! 🇮🇳
Remote profile

Solidity
Solidity is an object-oriented, high-level language for implementing smart contracts. 🌐
Open remote profile ↗Release post:
https://soliditylang.org/blog/2026/10/22/solidity-0.8.38-release-announcement/
Full changelog and downloads:
Solidity Programming LanguageSolidity 0.8.38 Release Announcement | Solidity Programming LanguagePosted by Solidity Team on October 22, 2026
The compiler now warns when swapn, dupn or exchange is used as an identifier in Yul or inline assembly.
EIP-8024 adds opcodes with these names in the Amsterdam upgrade, and the names become reserved starting from the Amsterdam EVM version. Solidity identifiers are not affected.
The release also improves the performance of the DataFlowAnalyzer, which several Yul optimizer steps are built on. As a result, compilation with the Yul optimizer enabled is faster.
In the IR pipeline, the function dispatcher now uses one fewer instruction.
Versions 0.8.19 to 0.8.37 are affected, only with the Yul optimizer enabled. With --via-ir, any code may be affected.
The fix changed no bytecode in verified contracts on Sourcify, which suggests the bug is very rare.
Full write-up and how to check:
https://soliditylang.org/blog/2026/10/22/yul-optimizer-knowledge-base-stale-bookkeeping-bug/
Solidity Programming LanguageYul Optimizer Knowledge Base Stale Bookkeeping Bug | Solidity Programming LanguagePosted by Solidity Team on October 22, 2026
The bug: when a Yul variable used to compute memory or storage addresses was reassigned, the Yul optimizer did not always notice that its knowledge about those addresses had gone stale.
A load could then be replaced with an outdated value, or a needed store could be removed.
Solidity v0.8.38 is out.
This release fixes a low-severity bug in the Yul optimizer, speeds up the Yul optimizer, and warns about identifiers in Yul and inline assembly that are going to be reserved starting from the Amsterdam EVM version.
