Version 0.4.14
This release contains several new features and bugfixes and also an important security fix: The ecrecover
function can be forced to return invalid data, which can be used to bypass authentication in very special circumstances.
Features:
- C API (
jsonCompiler
): Export thelicense
method. - Code Generator: Optimise the fallback function, by removing a useless jump.
- Inline Assembly: Show useful error message if trying to access calldata variables.
- Inline Assembly: Support variable declaration without initial value (defaults to 0).
- Metadata: Only include files which were used to compile the given contract.
- Type Checker: Disallow value transfers to contracts without a payable fallback function.
- Type Checker: Include types in explicit conversion error message.
- Type Checker: Raise proper error for arrays too large for ABI encoding.
- Type checker: Warn if using
this
in a constructor. - Type checker: Warn when existing symbols, including builtins, are overwritten.
Bugfixes:
- Code Generator: Properly clear return memory area for ecrecover.
- Type Checker: Fix crash for some assignment to non-lvalue.
- Type Checker: Fix invalid "specify storage keyword" warning for reference members of structs.
- Type Checker: Mark modifiers as internal.
- Type Checker: Re-allow multiple mentions of the same modifier per function.
We especially thank all our open source community contributors:
Antonio Tenerio-Fornés, benjaminion, Federico Bond, Harry Wright, hh3755, James Ray, Juaj Bednar, Luke Schoen, Loa Arias, maurelian, Nathan Hernandez, NIC619, Rhett Aultman, Skiral Inc and VoR0220.
If you want to perform a source build, please only use solidity_0.4.14.tar.gz and not the zip provided by github directly.