Skip to content

Version 0.6.8

Compare
Choose a tag to compare
@chriseth chriseth released this 14 May 12:45
0bbfe45

This release of Solidity fixes three important bugs in the code generator:

  • a missing callvalue check for constructors
  • a bug connected with array slices for arrays containing dynamic types
  • literal strings containing backslash characters in connection with ABIEncoderV2

In addition to that:

  • we introduced a recommendation to use SPDX license identifiers for all source files which are also stored in the contract metadata
  • it is possible to access the min and max values of an integer type directly
  • WebAssembly support has been extended

Important Bugfixes:

  • Add missing callvalue check to the creation code of a contract that does not define a constructor but has a base that does define a constructor.
  • Disallow array slices of arrays with dynamically encoded base types.
  • String literals containing backslash characters can no longer cause incorrect code to be generated when passed directly to function calls or encoding functions when ABIEncoderV2 is active.

Language Features:

  • Implemented type(T).min and type(T).max for every integer type T that returns the smallest and largest value representable by the type.

Compiler Features:

  • Commandline Interface: Don't ignore --yul-optimizations in assembly mode.
  • Allow using abi encoding functions for calldata array slices without explicit casts.
  • Wasm binary output: Implement br and br_if.

Bugfixes:

  • ABI: Skip private or internal constructors.
  • Fixed an "Assembly Exception in Bytecode" error where requested functions were generated twice.
  • Natspec: Fixed a bug that ignored @return tag when no other developer-documentation tags were present.
  • Type Checker: Checks if a literal exponent in the ** operation is too large or fractional.
  • Type Checker: Disallow accessing runtimeCode for contract types that contain immutable state variables.
  • Yul Assembler: Fix source location of variable declarations without value.

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

a3d4, Alex Beregszaszi, Alexander Arlt, Bhargava Shastry, Christian Parpart, Daniel Kirchner, Djordje Mijovic, Harikrishnan Mulackal, Kamil Śliwak, Mathias Baumann

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