Features: Improved error messages for unexpected tokens. Proof-of-concept transcompilation to why3 for formal verification of contracts. Bugfixes: Writing to elements of bytes or string overwrite others. Arrays (also strings) as indexed parameters of events. “Successor block not found” on Windows. Using string literals in tuples. Cope with invalid commit hash in version for libraries. Some test framework fixes on windows. A big thank you to all contributors who helped make this release possible! Download the new version of Solidity here.... [Read More]
Solidity 0.1.6 Release Announcement
Features: .push() for dynamic storage arrays. Tuple expressions ((1,2,3) or return (1,2,3);) Declaration and assignment of multiple variables (var (x,y,) = (1,2,3,4,5); or var (x,y) = f();) Destructuring assignment ((x,y,) = (1,2,3)) Handling of multiple source files in the json compiler. Bugfixes: Internal error about usage of library function with invalid types. Correctly parse Library.structType a at statement level. Correctly report source locations of parenthesized expressions (as part of “tuple” story). A big thank you to all contributors who helped... [Read More]
Solidity 0.1.5 Release Announcement
Changes: Breaking change in storage encoding: Encode short byte arrays and strings together with their length in storage. Report warnings. Allow storage reference types for public library functions. Access to types declared in other contracts and libraries via .. Version stamp at beginning of runtime bytecode of libraries. Bugfix: Problem with initialized string state variables and dynamic data in constructor. Bugfix: Resolve dependencies concerning new automatically. Bugfix: Allow four indexed arguments for anonymous events. Bugfix: Detect too large integer constants... [Read More]
Solidity 0.1.4 Release Announcement
Changes: Bugfix: combined-json output of solc incorrectly returned the runtime binary instead of the binary. Bugfix: Accessing fixed-size array return values. Bugfix: Disallow assignment from literal strings to storage pointers. Refactoring: Move type checking into its own module. A big thank you to all contributors who helped make this release possible! Download the new version of Solidity here.
Solidity 0.1.3 Release Announcement
Changes: throw statement. Libraries that contain functions which are called via CALLCODE. Linker stage for compiler to insert other contract’s addresses (used for libraries). Compiler option to output runtime part of contracts. Compile-time out of bounds check for access to fixed-size arrays by integer constants. Version string includes libevmasm/libethereum’s version (contains the optimizer). Bugfix: Accessors for constant public state variables. Bugfix: Propagate exceptions in clone contracts. Bugfix: Empty single-line comments are now treated properly. Bugfix: Properly check the number of... [Read More]
Solidity 0.1.2 Release Announcement
Changes: Improved commandline interface (breaking change). Explicit conversion between bytes and string. Bugfix: Value transfer used in clone contracts. Bugfix: Problem with strings as mapping keys. Bugfix: Prevent usage of some operators. A big thank you to all contributors who helped make this release possible! Download the new version of Solidity here.