This version is synchronized to the Homestead changes on the main Ethereum network and introduces various breaking changes.
BREAKING CHANGES:
- You should not rely on division for literals resulting in a (truncated) integer. This is still the case but will change once we implement fixed point types, i.e. in the future 1/2 == 0.5 will be true, currently we have 1/2 == 0. Note that this only applies to literals ((2 + 7) / 2) and not variables (x / 2).
- Library calls now default to use DELEGATECALL (e.g. called library functions see the same value as the calling function for msg.value and msg.sender).
- Added new keywords assembly, fixed, ufixed, fixedNxM, ufixedNxM (for various values of M and N), inline in preparation for future features.
Features:
- <address>.delegatecall is provided as a low-level calling interface for DELEGATECALL
Bugfixes:
- Fixed a bug in the optimizer that resulted in comparisons being wrong.
A big thank you to all contributors who helped make this release possible!
Download the new version of Solidity here.