Skip to content

Version 0.6.3

Compare
Choose a tag to compare
@chriseth chriseth released this 18 Feb 15:38
8dda952

This release adds reason strings for compiler-generated reverts if you specify --revert-strings debug or use the setting settings.debug.revertStrings = "debug". Furthermore, contract types and enums are now allowed as keys for mappings and the doxygen-style comments are better supported by the AST.

Language Features:

  • Allow contract types and enums as keys for mappings.
  • Allow function selectors to be used as compile-time constants.

Compiler Features:

  • AST: Add a new node for doxygen-style, structured documentation that can be received by contract, function, event and modifier definitions.
  • Code Generator: Use calldatacopy instead of codecopy to zero out memory past input.
  • Debug: Provide reason strings for compiler-generated internal reverts when using the --revert-strings option or the settings.debug.revertStrings setting on debug mode.
  • Structured Documentation: Report source locations for structured documentation errors.
  • Yul Optimizer: Prune functions that call each other but are otherwise unreferenced.

Bugfixes:

  • Assembly Output: Added missing source field to legacy assembly json output to complete the source reference.
  • Parser: Fix an internal error for abstract without contract.
  • Type Checker: Make invalid calls to uncallable types fatal errors instead of regular.

We especially thank all the contributors that made this release possible:

a3d4, Alexander Arlt, Bhargava Shastry, Brian L. McMichael, cameel, Chris Chinchilla, Christian Parpart, Daniel Kirchner, Djordje Mijovic, Erik Kundt, Gaith Hallak, Jason Cobb, Kamil Śliwak, Leonardo Alt, Mathias Baumann, Nicolas, pinkiebell, rodiazet.

If you want to perform a source build, please only use solidity_0.6.3.tar.gz and not the zip provided by github directly.