This release fixes a bug in the routine that copies dynamically-sized arrays to storage. More details about the bug can be found in the blog post.
Important Bugfixes
- Code Generator: Properly cleanup after copying dynamic-array to storage for packed types.
Compiler Features
- Code generator: Implemented events with function type as one of its indexed parameters.
- General: Option to stop compilation after parsing stage. Can be used with
solc --stop-after parsing
- Optimizer: Optimize
exp
when base is-1
. - SMTChecker: Support
addmod
andmulmod
. - SMTChecker: Support array slices.
- SMTChecker: Support type conversions.
Bugfixes
- Fixed internal compiler errors for certain contracts involving the
new
expression. - JSON AST: Fix internal error when using
--ast-json
on a function with memory arguments in ABIEncoderV2 contracts. - Type Checker: Add missing checks for calls using types incompatible with ABIEncoderV1 in modules where ABIEncoderV2 is not enabled.
- Type Checker: Fix internal compiler error when calling
.push(<arg>)
for a storage array with a nested mapping.
We especially thank all the contributors that made this release possible:
a3d4, Alex Beregszaszi, Alexander Arlt, Djordje Mijovic, Harikrishnan Mulackal, Leonardo Alt, Mathias Baumann
If you want to perform a source build, please only use solidity_0.7.3.tar.gz and not the zip provided by github directly.