Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | | Improve error message when trying to modify constant variables | Federico Bond | 2016-12-13 | 2 | -1/+8 | |
|/ / | ||||||
* | | Merge pull request #1468 from ethereum/memcpy-assembly | Yoichi Hirai | 2016-12-13 | 4 | -16/+82 | |
|\ \ | | | | | | | Implement memcpy without the identity precompile | |||||
| * | | Split memcopy into three functions. | chriseth | 2016-12-12 | 3 | -54/+79 | |
| | | | ||||||
| * | | Fix inline assembly. | chriseth | 2016-12-12 | 1 | -1/+2 | |
| | | | ||||||
| * | | Reset stack height after inline assembly block | Alex Beregszaszi | 2016-12-12 | 1 | -0/+1 | |
| | | | ||||||
| * | | Better assert message for appendInlineAssembnly | Alex Beregszaszi | 2016-12-12 | 1 | -1/+1 | |
| | | | ||||||
| * | | Implement identity call in inline assembly | Alex Beregszaszi | 2016-12-12 | 1 | -14/+21 | |
| | | | ||||||
| * | | Turn off the identity precompile for testing | Alex Beregszaszi | 2016-12-12 | 1 | -1/+1 | |
| | | | ||||||
| * | | Implement CompilerUtils::memoryCopy using inline assembly | Alex Beregszaszi | 2016-12-12 | 1 | -1/+26 | |
| | | | ||||||
| * | | Add usingIdentity option to CompilerUtils::memoryCopy | Alex Beregszaszi | 2016-12-12 | 2 | -2/+9 | |
| |/ | ||||||
* | | Merge pull request #1491 from ameten/refactoring | chriseth | 2016-12-13 | 1 | -1/+1 | |
|\ \ | |/ |/| | Just refactored some code | |||||
| * | - fixed a misprint. | Danil Nemirovsky | 2016-12-09 | 1 | -1/+1 | |
| | | ||||||
* | | Merge pull request #1464 from federicobond/warn-msgvalue | chriseth | 2016-12-11 | 4 | -0/+162 | |
|\ \ | | | | | | | Warn about using msg.value in non-payable function | |||||
| * | | Warn about using msg.value in non-payable function | Federico Bond | 2016-12-09 | 4 | -0/+162 | |
| |/ | ||||||
* / | Fix names of JSON AST nodes | Federico Bond | 2016-12-11 | 1 | -2/+2 | |
|/ | ||||||
* | Merge pull request #1351 from ethereum/truncate_bit | chriseth | 2016-12-08 | 3 | -3/+5 | |
|\ | | | | | Truncate a boolean from calldata into one bit | |||||
| * | codegen: clean not only booleans but all types before storing them into memory | Yoichi Hirai | 2016-12-01 | 2 | -4/+3 | |
| | | ||||||
| * | codegen: clean any data from the input | Yoichi Hirai | 2016-12-01 | 1 | -2/+2 | |
| | | ||||||
| * | codegen: truncate booleans before they enter storage | Yoichi Hirai | 2016-12-01 | 1 | -1/+0 | |
| | | ||||||
| * | codegen: cleanup booleans before storing them into memory | Yoichi Hirai | 2016-12-01 | 1 | -0/+2 | |
| | | ||||||
| * | codegen: truncate a boolean calldata down to one bit | Yoichi Hirai | 2016-12-01 | 1 | -0/+2 | |
| | | ||||||
* | | Merge pull request #1465 from ethereum/missing_keywords | chriseth | 2016-12-06 | 1 | -2/+2 | |
|\ \ | | | | | | | document missing keywords | |||||
| * | | parsing: `default` and `null` are reserved keywords | Yoichi Hirai | 2016-12-02 | 1 | -2/+2 | |
| | | | ||||||
* | | | Throw if calling the identity precompile (memoryCopy) failed | Alex Beregszaszi | 2016-12-02 | 1 | -1/+2 | |
|/ / | ||||||
* | | Add the `_runs` parameter. | chriseth | 2016-12-01 | 2 | -3/+3 | |
| | | ||||||
* | | Fix type of optimizeRuns | Alex Beregszaszi | 2016-12-01 | 1 | -1/+1 | |
| | | ||||||
* | | Use CBOR encoding. | chriseth | 2016-12-01 | 3 | -4/+11 | |
| | | ||||||
* | | Fix tests. | chriseth | 2016-12-01 | 2 | -10/+0 | |
| | | ||||||
* | | Add swarm hash to the end of the bytecode. | chriseth | 2016-12-01 | 5 | -12/+5 | |
| | | ||||||
* | | Make sure some keys are present. | chriseth | 2016-12-01 | 1 | -0/+3 | |
| | | ||||||
* | | Incorporate comments. | chriseth | 2016-12-01 | 1 | -10/+10 | |
| | | ||||||
* | | Metadata stamp. | chriseth | 2016-12-01 | 9 | -31/+126 | |
| | | ||||||
* | | Merge pull request #1462 from ethereum/fix-incorrect-assertion | chriseth | 2016-12-01 | 1 | -1/+1 | |
|\ \ | | | | | | | codegen: assertion did not assert non-nullness | |||||
| * | | codegen: assertion did not assert non-nullness | Yoichi Hirai | 2016-12-01 | 1 | -1/+1 | |
| |/ | | | | | | | | | This commit strengthens an assertion so that it makes sure that a pointer is not null. Moreover, `isLocalVariable(variable)` is now positively asserted, following the error message. | |||||
* | | Merge pull request #1463 from ethereum/duplicate-assignment | chriseth | 2016-12-01 | 1 | -2/+0 | |
|\ \ | | | | | | | codegen: this commit removes one of duplicate assignments | |||||
| * | | codegen: this commit removes one of duplicate assignments | Yoichi Hirai | 2016-12-01 | 1 | -2/+0 | |
| |/ | ||||||
* / | parser: recognize an end of comment of the form `**/` at the end of a ↵ | Yoichi Hirai | 2016-12-01 | 1 | -1/+6 | |
|/ | | | | | | multi-line doc comment This fixes #1433 | |||||
* | Include the grammar verbatim in the documentation | Alex Beregszaszi | 2016-11-30 | 1 | -110/+0 | |
| | ||||||
* | Rename dev::validate to dev::validateUTF8 | Alex Beregszaszi | 2016-11-29 | 2 | -3/+3 | |
| | ||||||
* | Make position optional in dev::validate | Alex Beregszaszi | 2016-11-29 | 2 | -4/+2 | |
| | ||||||
* | Use solUnimplemented wherever possible | Alex Beregszaszi | 2016-11-28 | 2 | -3/+3 | |
| | ||||||
* | Merge pull request #1395 from ethereum/grammar | chriseth | 2016-11-25 | 1 | -1/+1 | |
|\ | | | | | Properly define the pragma directive in the grammar | |||||
| * | Properly define the pragma directive in the grammar | Alex Beregszaszi | 2016-11-18 | 1 | -1/+1 | |
| | | ||||||
* | | Merge pull request #1381 from ethereum/overflown_enum_compared | chriseth | 2016-11-25 | 3 | -8/+35 | |
|\ \ | | | | | | | Enum overflow checking before writing to storage | |||||
| * | | codegen: cleanup values to fit in storage bytes | Yoichi Hirai | 2016-11-25 | 1 | -0/+4 | |
| | | | ||||||
| * | | codegen: storing of non-value types; add some assertions | Yoichi Hirai | 2016-11-25 | 1 | -8/+5 | |
| | | | ||||||
| * | | codegen: shorten the bit truncation | Yoichi Hirai | 2016-11-25 | 1 | -5/+2 | |
| | | | ||||||
| * | | codegen: merge type conversion and cleaning up | Yoichi Hirai | 2016-11-25 | 1 | -3/+2 | |
| | | | ||||||
| * | | codegen: document _chopSignBits parameter of convertType function | Yoichi Hirai | 2016-11-25 | 1 | -0/+1 | |
| | | | ||||||
| * | | codegen: add an option to CovertType so that it can truncate sign bits | Yoichi Hirai | 2016-11-25 | 3 | -10/+22 | |
| | | | ||||||
| * | | codegen: cleanup stored values in a more consistent way | Yoichi Hirai | 2016-11-25 | 1 | -4/+16 | |
| | | | ||||||
| * | | codegen: cleanup value types before storing them | Yoichi Hirai | 2016-11-24 | 1 | -0/+5 | |
| | | | ||||||
* | | | Indentation. | chriseth | 2016-11-25 | 1 | -1/+1 | |
| | | | ||||||
* | | | ast: string literals that are not valid UTF are not convertible to strings | Yoichi Hirai | 2016-11-25 | 2 | -1/+10 | |
|/ / | ||||||
* | | Fix licensing headers | VoR0220 | 2016-11-23 | 77 | -308/+308 | |
| | | | | | | | | Signed-off-by: VoR0220 <rj@erisindustries.com> | |||||
* | | Add appendCallValueCheck | Alex Beregszaszi | 2016-11-18 | 2 | -20/+14 | |
| | | ||||||
* | | Include payable for the constructor in the ABI | Alex Beregszaszi | 2016-11-18 | 1 | -0/+1 | |
| | | ||||||
* | | Add payable check for constructor in codegen | Alex Beregszaszi | 2016-11-18 | 1 | -0/+12 | |
|/ | ||||||
* | Some more assertions and style changes. | chriseth | 2016-11-16 | 2 | -17/+26 | |
| | ||||||
* | Change encoding to address-funid and add "function" as ABI type. | chriseth | 2016-11-16 | 6 | -18/+29 | |
| | ||||||
* | Fix parser for function type disambiguity. | chriseth | 2016-11-16 | 1 | -1/+12 | |
| | ||||||
* | Simple peephole optimizer that is activated even if not requested. | chriseth | 2016-11-16 | 2 | -5/+3 | |
| | ||||||
* | Check that no internals are used in any external function type. | chriseth | 2016-11-16 | 5 | -1/+45 | |
| | ||||||
* | Converted sub assembly to smart pointer. | chriseth | 2016-11-16 | 5 | -48/+50 | |
| | ||||||
* | Stored combined creation and runtime tags. | chriseth | 2016-11-16 | 10 | -62/+136 | |
| | | | | | | | Includes a change to Assembly to allow tags from sub-assemblies to be used. Sorry, this get a bit bigger than I thought. | |||||
* | ABI: Use external function. | chriseth | 2016-11-16 | 1 | -2/+2 | |
| | ||||||
* | Disallow payable internal functions. | chriseth | 2016-11-16 | 2 | -2/+5 | |
| | ||||||
* | Mention "payable" in the documentation. | chriseth | 2016-11-16 | 1 | -2/+2 | |
| | ||||||
* | Fix tests. | chriseth | 2016-11-16 | 1 | -1/+11 | |
| | ||||||
* | delete for function types | chriseth | 2016-11-16 | 2 | -0/+8 | |
| | ||||||
* | codegen: add a compilation mode and a runtime context to CompilerContext | Yoichi Hirai | 2016-11-16 | 4 | -6/+23 | |
| | ||||||
* | Added function types to the grammar. | chriseth | 2016-11-16 | 1 | -1/+4 | |
| | ||||||
* | Implement uninitialized storage functions. | chriseth | 2016-11-16 | 2 | -11/+17 | |
| | ||||||
* | Bugfix in code generator. | chriseth | 2016-11-16 | 1 | -1/+1 | |
| | ||||||
* | Change alignment. | chriseth | 2016-11-16 | 4 | -31/+43 | |
| | ||||||
* | Changelog entry and small fixes. | chriseth | 2016-11-16 | 2 | -5/+8 | |
| | ||||||
* | External functions in storage. | chriseth | 2016-11-16 | 3 | -18/+49 | |
| | ||||||
* | Fix some type checks and tests for internal / external function parameters. | chriseth | 2016-11-16 | 1 | -3/+3 | |
| | ||||||
* | Function type state variables. | chriseth | 2016-11-16 | 2 | -31/+68 | |
| | ||||||
* | Code generator for function types. | chriseth | 2016-11-16 | 4 | -2/+46 | |
| | ||||||
* | Function types. | chriseth | 2016-11-16 | 14 | -39/+241 | |
| | ||||||
* | Move InterfaceHandler from string to JSON | Alex Beregszaszi | 2016-11-15 | 6 | -39/+37 | |
| | ||||||
* | Rename ErrorTag to invalidJumpLabel in inline assembly | Alex Beregszaszi | 2016-11-15 | 1 | -1/+1 | |
| | ||||||
* | Support ErrorTag as a jump label in inline assembly | Alex Beregszaszi | 2016-11-15 | 1 | -1/+5 | |
| | ||||||
* | Merge pull request #1375 from ethereum/inline-assembly-stack-height | chriseth | 2016-11-15 | 1 | -7/+9 | |
|\ | | | | | Fix inline assembly stack warnings when using variables | |||||
| * | Fix inline assembly stack warnings when using variables | Alex Beregszaszi | 2016-11-15 | 1 | -7/+9 | |
| | | ||||||
* | | Do not include a trailing new line in the ABI JSON output | Alex Beregszaszi | 2016-11-15 | 1 | -1/+4 | |
|/ | ||||||
* | Unimplemented features moved to their own exception (#1361) | Rhett Aultman | 2016-11-15 | 7 | -17/+24 | |
| | | | | | | | | | | | | | | | | | | Unimplemented features moved to their own exception InternalCompilerError is an exception that really should be reserved for actual internal errors of the compiler. Unimplemented features can now use either solUnimplemented( ) or, if it should be conditional, then solUnimplementedAssert( ). * Revert some unimplemented exceptions, add handlers The jsonCompiler and CommandLineInterface needed handlers for the new UnimplementedFeatureException, and some cases I had moved on to the new exception were better treated as real internal compiler errors. * Standardize on "Unimplemented feature" message | |||||
* | Merge pull request #1367 from asinyagin/develop | chriseth | 2016-11-15 | 1 | -2/+2 | |
|\ | | | | | Print canonical names of structs and enums in AST | |||||
| * | Print canonical names of structs and enums in AST | Alex Sinyagin | 2016-11-14 | 1 | -2/+2 | |
| | | ||||||
* | | Merge pull request #1372 from ethereum/invalid_enum_as_external_ret | chriseth | 2016-11-15 | 1 | -2/+2 | |
|\ \ | | | | | | | Invalid enum as external ret | |||||
| * | | codegen: overflow checking also during conversion from enums | Yoichi Hirai | 2016-11-15 | 1 | -2/+2 | |
| |/ | ||||||
* / | codegen: add a missing `break;` | Yoichi Hirai | 2016-11-14 | 1 | -0/+1 | |
|/ | ||||||
* | Merge pull request #1365 from walter-weinmann/develop | chriseth | 2016-11-14 | 1 | -1/+1 | |
|\ | | | | | #1362: As it stands currently, the >>> operator will not be implemented. | |||||
| * | #1362: As it stands currently, the >>> operator will not be implemented. | Walter Weinmann | 2016-11-14 | 1 | -1/+1 | |
| | | ||||||
* | | codegen: move the enum overflow checking closer to the conversion into enums | Yoichi Hirai | 2016-11-14 | 1 | -8/+16 | |
| | | ||||||
* | | ast, codegen: disallow conversion between different enum types | Yoichi Hirai | 2016-11-12 | 2 | -2/+2 | |
| | | ||||||
* | | codegen: shorten the overflow checking when converting into enums | Yoichi Hirai | 2016-11-12 | 1 | -1/+2 | |
| | | ||||||
* | | parsing: ban empty enum definition. | Yoichi Hirai | 2016-11-12 | 1 | -0/+2 | |
| | | ||||||
* | | codegen: check the value range after converting something to an enum element | Yoichi Hirai | 2016-11-12 | 1 | -0/+8 | |
| | | ||||||
* | | ast: add EnumType::numberOfMembers() | Yoichi Hirai | 2016-11-12 | 2 | -1/+7 | |
|/ | ||||||
* | Merge pull request #1355 from ethereum/chriseth-patch-2 | chriseth | 2016-11-12 | 1 | -3/+3 | |
|\ | | | | | Fix semicolons | |||||
| * | Fix semicolons | chriseth | 2016-11-11 | 1 | -3/+3 | |
| | | ||||||
* | | Type checker: move the burden of computing mobile type to commonType | Yoichi Hirai | 2016-11-11 | 2 | -6/+6 | |
|/ | | | | This solves #621 | |||||
* | Add support for do/while loops | Rhett Aultman | 2016-11-10 | 8 | -9/+59 | |
| | | | | | | | This commit adds support for a standard do <statement> while <expr>; form of statement. While loops were already being supported; supporting a do/while loop mostly involves reusing code from while loops but putting the conditional checking last. | |||||
* | add payable to AST | yann300 | 2016-11-03 | 1 | -1/+2 | |
| | ||||||
* | Clear all value types prior to storing. | chriseth | 2016-10-31 | 1 | -7/+1 | |
| | ||||||
* | ast: ban signed EXP, fixing #1246 | Yoichi Hirai | 2016-10-25 | 1 | -1/+4 | |
| | ||||||
* | Suggest correct version for pragma and complain about pre-release version. | chriseth | 2016-10-25 | 2 | -7/+28 | |
| | ||||||
* | Merge pull request #1279 from ethereum/semver-helper | chriseth | 2016-10-25 | 1 | -0/+6 | |
|\ | | | | | Export major/minor/patch helpers on SemVerVersion | |||||
| * | Export major/minor/patch helpers on SemVerVersion | Alex Beregszaszi | 2016-10-25 | 1 | -0/+6 | |
| | | ||||||
* | | Merge pull request #1264 from ethereum/988 | chriseth | 2016-10-25 | 3 | -9/+21 | |
|\ \ | |/ |/| | State variable under contract's name | |||||
| * | analysis: determine if a member access on a contract is an l-value | Yoichi Hirai | 2016-10-25 | 1 | -0/+5 | |
| | | ||||||
| * | codegen: refactor common code | Yoichi Hirai | 2016-10-24 | 2 | -20/+15 | |
| | | ||||||
| * | codegen: if a member access has been resolved as a variable, follow that | Yoichi Hirai | 2016-10-24 | 1 | -0/+12 | |
| | | | | | | | | This fixes at least the first example in #988 | |||||
* | | More checks for missing mobile type. | chriseth | 2016-10-24 | 4 | -11/+44 | |
|/ | ||||||
* | codegen: skip contract L for L.Foo where Foo is a type | Yoichi Hirai | 2016-10-24 | 1 | -1/+6 | |
| | | | | Fixes #1116 | |||||
* | Fix crash in throw. | chriseth | 2016-10-24 | 1 | -1/+1 | |
| | ||||||
* | Merge pull request #1240 from ethereum/1151 | chriseth | 2016-10-24 | 1 | -1/+5 | |
|\ | | | | | ast: super contract type does not contain native members | |||||
| * | ast: simplifications suggested by @chriseth | Yoichi Hirai | 2016-10-20 | 1 | -7/+4 | |
| | | ||||||
| * | When a contract type is super, its members do not contain the functions of ↵ | Yoichi Hirai | 2016-10-20 | 1 | -1/+8 | |
| | | | | | | | | | | | | itself Fixes #1151 | |||||
* | | ast: add a null check | Yoichi Hirai | 2016-10-21 | 1 | -0/+1 | |
| | | ||||||
* | | ast: ContractDefinition::inheritableMembers contains enums as well as structs | Yoichi Hirai | 2016-10-21 | 1 | -0/+3 | |
| | | | | | | | | This fixes #1131 | |||||
* | | Support variable references within modifiers for inline assembly | Alex Beregszaszi | 2016-10-21 | 1 | -1/+1 | |
| | | ||||||
* | | Allow warnings for inline assembly block | Alex Beregszaszi | 2016-10-20 | 1 | -1/+1 | |
| | | ||||||
* | | Issue warnings if stack is not balanced after inline assembly block | Alex Beregszaszi | 2016-10-20 | 1 | -2/+24 | |
| | | ||||||
* | | Use warning function in TypeChecker | Alex Beregszaszi | 2016-10-20 | 1 | -5/+4 | |
|/ | ||||||
* | Use >> (SAR) to denote constant shifts | Alex Beregszaszi | 2016-10-20 | 1 | -1/+3 | |
| | ||||||
* | Reject negative shifts within constants | Alex Beregszaszi | 2016-10-20 | 1 | -4/+8 | |
| | ||||||
* | Support shifting constants | RJ | 2016-10-20 | 1 | -0/+22 | |
| | ||||||
* | Disallow unsupported RValues in inline assembly | Alex Beregszaszi | 2016-10-20 | 1 | -4/+2 | |
| | ||||||
* | Disallow magic variables in inline assembly | Alex Beregszaszi | 2016-10-20 | 1 | -0/+4 | |
| | ||||||
* | Omit non-convertible bound functions | Alex Beregszaszi | 2016-10-19 | 1 | -1/+2 | |
| | ||||||
* | Ensure that bound functions cannot be defined without self type | Alex Beregszaszi | 2016-10-19 | 2 | -2/+11 | |
| | ||||||
* | `super`'s size on stack is zero, because the expression compiler does not ↵ | Yoichi Hirai | 2016-10-18 | 1 | -0/+1 | |
| | | | | | | push an address. This is different from `this`, which is translated to `ADDRESS` instruction. | |||||
* | Check if a fixedBytes fits an integer type | Yoichi Hirai | 2016-10-14 | 1 | -1/+5 | |
| | | | | | | before looking up the size of the integer type. Fixes #1150. | |||||
* | Merge pull request #1169 from ethereum/inline-assembly-tags | Alex Beregszaszi | 2016-10-12 | 1 | -1/+3 | |
|\ | | | | | Fix assignment after tags in inline assembly | |||||
| * | Fix assignment after tags in inline assembly | Alex Beregszaszi | 2016-10-11 | 1 | -1/+3 | |
| | | ||||||
* | | Merge pull request #1181 from ethereum/formal_ignore_pragma | chriseth | 2016-10-11 | 2 | -0/+15 | |
|\ \ | | | | | | | formal: ignore pragmas during Why3 code generation | |||||
| * | | Chack for non-version pragmas | Yoichi Hirai | 2016-10-11 | 1 | -1/+10 | |
| | | | ||||||
| * | | formal: ignore pragmas during Why3 code generation | Yoichi Hirai | 2016-10-11 | 2 | -0/+6 | |
| |/ | | | | | | | Fixes #1177 | |||||
* / | Fix pragma keyword check | Yoichi Hirai | 2016-10-11 | 1 | -1/+1 | |
|/ | | | | Fixes #1192 | |||||
* | Merge pull request #1189 from NicolaiSoeborg/develop | chriseth | 2016-10-11 | 1 | -2/+2 | |
|\ | | | | | Add HexLiteral to grammar, fixes #1186 | |||||
| * | Fix: HexLiteral must be even number of nibbles | Nicolai | 2016-10-11 | 1 | -1/+1 | |
| | | | | | | | | | | solc even allow 0 nibbles: bytes a = hex""; | |||||
| * | Add HexLiteral to grammar, fixes #1186 | Nicolai | 2016-10-11 | 1 | -2/+2 | |
| | | ||||||
* | | Merge pull request #1168 from ethereum/rename-dev-sha3 | chriseth | 2016-10-11 | 5 | -5/+5 | |
|\ \ | | | | | | | Rename dev::sha3 to dev::keccak256 | |||||
| * | | Rename dev::sha3 to dev::keccak256 | Alex Beregszaszi | 2016-10-06 | 5 | -5/+5 | |
| | | | ||||||
* | | | Support address in inline assembly | Alex Beregszaszi | 2016-10-07 | 1 | -0/+3 | |
| | | | ||||||
* | | | Add alias keccak256() for sha3() | Alex Beregszaszi | 2016-10-06 | 1 | -0/+2 | |
| | | | ||||||
* | | | Support both suicide/selfdestruct in inline assembly | Alex Beregszaszi | 2016-10-06 | 1 | -2/+5 | |
|/ / | ||||||
* | | Merge pull request #1104 from ethereum/fixmemcosts | chriseth | 2016-09-17 | 1 | -4/+13 | |
|\ \ | | | | | | | Fix memory resize costs during call | |||||
| * | | Access output memory area so that we do not pay for resize during call. | chriseth | 2016-09-17 | 1 | -4/+13 | |
| | | | ||||||
* | | | Allow value transfer to library functions. | chriseth | 2016-09-17 | 1 | -1/+3 | |
|/ / | ||||||
* | | Fix crash for TypeName[k]. | chriseth | 2016-09-16 | 1 | -1/+1 | |
| | | ||||||
* | | Prepare for leaky exceptions | Yoichi Hirai | 2016-09-10 | 1 | -0/+4 | |
| | | | | | | | | | | Now toFormalType() reports errors by exceptions, they will be sometimes leaked to the wider context. This commits adds a catch. | |||||
* | | toFormalType reports errors by an exception | Yoichi Hirai | 2016-09-10 | 2 | -21/+71 | |
| | | | | | | | | This allows error reporting without passing `ASTNode` to `toFormalType()` | |||||
* | | Translate mapping types into Why3 arrays when keys are integers | Yoichi Hirai | 2016-09-10 | 1 | -0/+14 | |
| | | | | | | | | | | Even when the keys are signed the translation is supposed to work because Why3 arrays allow negative indices. | |||||
* | | Merge pull request #1047 from pirapira/address-in-prelude | chriseth | 2016-09-09 | 1 | -0/+9 | |
|\ \ | | | | | | | formal verification: Add Address module in the WhyML prelude | |||||
| * | | Add Address module in the WhyML prelude | Yoichi Hirai | 2016-09-08 | 1 | -0/+9 | |
| | | | | | | | | | | | | | | | | | | In the `--formal` output, this commit adds a module called `Address`, which defines the address type as unsigned integer type bounded at 2^160-1. | |||||
* | | | Fix problem with release version string. | chriseth | 2016-09-08 | 1 | -3/+5 | |
|/ / | ||||||
* | | Merge pull request #1041 from pirapira/typo_and_whitespace | chriseth | 2016-09-08 | 2 | -2/+2 | |
|\ \ | | | | | | | Fix a typo and a whitespace inconsistency | |||||
| * | | Fix a typo and whitespaces | Yoichi Hirai | 2016-09-07 | 2 | -2/+2 | |
| | | | ||||||
* | | | Merge pull request #1044 from pirapira/todo_item_to_issue | chriseth | 2016-09-08 | 1 | -1/+1 | |
|\ \ \ | | | | | | | | | Append an issue id #1043 to a @todo comment about it | |||||
| * | | | Append an issue id #1043 to a @todo comment about it | Yoichi Hirai | 2016-09-07 | 1 | -1/+1 | |
| |/ / | ||||||
* | | | Include assert for selfType on bound functions to avoid crash | Alex Beregszaszi | 2016-09-07 | 1 | -1/+2 | |
| | | | ||||||
* | | | Constructor must be internal or public | Alex Beregszaszi | 2016-09-06 | 1 | -0/+2 | |
| | | | ||||||
* | | | Reject constant constructors | Alex Beregszaszi | 2016-09-06 | 1 | -2/+6 | |
| | | | ||||||
* | | | Merge pull request #1016 from ethereum/reserved | chriseth | 2016-09-06 | 2 | -1/+12 | |
|\ \ \ | | | | | | | | | Report the usage of reserved keywords more nicely | |||||
| * | | | Raise proper error on reserved keywords | Alex Beregszaszi | 2016-09-06 | 1 | -1/+11 | |
| | | | | ||||||
| * | | | Introduce isReservedKeyword() | Alex Beregszaszi | 2016-09-06 | 1 | -0/+1 | |
| | | | | ||||||
* | | | | Merge pull request #1014 from ethereum/strict-fallback | chriseth | 2016-09-06 | 2 | -1/+2 | |
|\ \ \ \ | | | | | | | | | | | Reject constant modifier on the fallback function | |||||
| * | | | | Reject constant modifier on the fallback function | Alex Beregszaszi | 2016-09-06 | 2 | -1/+2 | |
| |/ / / | ||||||
* | | | | Merge pull request #1011 from walter-weinmann/wwe_grammar | chriseth | 2016-09-06 | 1 | -3/+3 | |
|\ \ \ \ | | | | | | | | | | | Changes related to issues #984, #989, #999, #1001 and #1004. | |||||
| * | | | | Considering comment from @chriseth regarding FunctionCall. | walter-weinmann | 2016-09-06 | 1 | -3/+1 | |
| | | | | | ||||||
| * | | | | Considering comments from @chriseth regarding ExpressionStatement and ↵ | walter-weinmann | 2016-09-06 | 1 | -4/+6 | |
| | | | | | | | | | | | | | | | | | | | | FunctionCall. | |||||
| * | | | | Changes related to issues #984, #989, #999, #1001 and #1004. | walter-weinmann | 2016-09-06 | 1 | -4/+4 | |
| | | | | | ||||||
* | | | | | Merge pull request #1008 from ethereum/stipendwithsend | chriseth | 2016-09-06 | 1 | -1/+6 | |
|\ \ \ \ \ | | | | | | | | | | | | | Provide gas stipend manually for send(0). | |||||
| * | | | | | Provide gas stipend manually for send(0). | chriseth | 2016-09-06 | 1 | -1/+6 | |
| | |/ / / | |/| | | | ||||||
* / | | | | Reserve view and pure as keywords | Alex Beregszaszi | 2016-09-06 | 1 | -0/+2 | |
|/ / / / | ||||||
* | | | | Merge pull request #665 from axic/feature/accept-ether | chriseth | 2016-09-06 | 9 | -44/+133 | |
|\ \ \ \ | | | | | | | | | | | BREAKING: Add payable modifier | |||||
| * | | | | Test and fixes for payable fallback in ABI. | chriseth | 2016-09-06 | 1 | -0/+1 | |
| | | | | | ||||||
| * | | | | Tests for payable / private combination. | chriseth | 2016-09-06 | 1 | -2/+2 | |
| | | | | | ||||||
| * | | | | Make constant and payable mutually exclusive. | chriseth | 2016-09-06 | 1 | -0/+2 | |
| | | | | | ||||||
| * | | | | Change function type to include and propagate payable and constant modifier. | chriseth | 2016-09-06 | 5 | -28/+78 | |
| | | | | | ||||||
| * | | | | Merged in changes from chriseth/payable | Alex Beregszaszi | 2016-09-06 | 4 | -33/+37 | |
| | | | | | ||||||
| * | | | | Do not include the payable keyword for constructors | Alex Beregszaszi | 2016-09-06 | 1 | -1/+0 | |
| | | | | | ||||||
| * | | | | Support payable keyword for functions | Alex Beregszaszi | 2016-09-06 | 7 | -1/+34 | |
| |/ / / | ||||||
* | | | | Merge pull request #995 from chriseth/fixutf8astjson | chriseth | 2016-09-06 | 1 | -2/+15 | |
|\ \ \ \ | | | | | | | | | | | Do not emit non-utf8 strings for ast json. | |||||
| * | | | | Do not emit non-utf8 strings for ast json. | chriseth | 2016-09-02 | 1 | -2/+15 | |
| | | | | | ||||||
* | | | | | Merge pull request #1006 from ethereum/nenewaccountgas | chriseth | 2016-09-06 | 1 | -1/+3 | |
|\ \ \ \ \ | |_|/ / / |/| | | | | Do not pay new account gas. | |||||
| * | | | | Do not pay new account gas. | chriseth | 2016-09-05 | 1 | -1/+3 | |
| | |/ / | |/| | | | | | | | | | | | | | | If we checked that the target contract exists, we do not have to pay the "new account gas". | |||||
* | | | | Merge pull request #1005 from ethereum/modifierbody | Yoichi Hirai | 2016-09-06 | 2 | -3/+4 | |
|\ \ \ \ | | | | | | | | | | | Require ";" after "_" | |||||
| * | | | | Update grammar.txt to reflect the change. | chriseth | 2016-09-05 | 1 | -2/+3 | |
| | | | | | ||||||
| * | | | | Require ";" after "_" | chriseth | 2016-09-05 | 1 | -1/+1 | |
| |/ / / | ||||||
* | | | | Merge pull request #993 from chriseth/fixshacrash | chriseth | 2016-09-06 | 1 | -0/+8 | |
|\ \ \ \ | |/ / / |/| | | | Guard encoding crashes with assertions. | |||||
| * | | | Improve error message. | chriseth | 2016-09-05 | 1 | -1/+1 | |
| | | | | ||||||
| * | | | Guard encoding crashes with assertions. | chriseth | 2016-09-02 | 1 | -0/+8 | |
| |/ / | ||||||
* / / | Do not use internal types for event parameters. | chriseth | 2016-09-02 | 1 | -1/+2 | |
|/ / | ||||||
* | | Merge pull request #935 from chriseth/pragma | chriseth | 2016-09-01 | 16 | -7/+566 | |
|\ \ | | | | | | | Version pragma | |||||
| * | | Use version string (including prerelease) for pragma matching. | chriseth | 2016-09-01 | 1 | -2/+3 | |
| | | | ||||||
| * | | Version pragma. | chriseth | 2016-09-01 | 16 | -7/+565 | |
| | | | ||||||
* | | | fix CompilerStack::absolutePath | Dimitry | 2016-09-01 | 1 | -1/+1 | |
|/ / | ||||||
* | | Make fallback function throw by default. | chriseth | 2016-08-30 | 2 | -4/+3 | |
| | | ||||||
* | | Merge pull request #664 from axic/feature/interface-fallback | chriseth | 2016-08-30 | 1 | -1/+9 | |
|\ \ | | | | | | | Introduce fallback entry in the ABI | |||||
| * | | Introduce fallback entry in the ABI | Alex Beregszaszi | 2016-08-27 | 1 | -1/+9 | |
| | | | ||||||
* | | | Merge pull request #941 from chriseth/versionString | Bob Summerwill | 2016-08-27 | 1 | -4/+2 | |
|\ \ \ | |/ / |/| | | Version string | |||||
| * | | Make versioning semver compatible and force commit hash availability. | chriseth | 2016-08-26 | 1 | -4/+2 | |
| | | | ||||||
* | | | Merge pull request #897 from Denton-L/remove-standard | chriseth | 2016-08-27 | 2 | -30/+8 | |
|\ \ \ | |/ / |/| | | BREAKING: Remove standard contracts | |||||
| * | | Remove standard contracts | Denton Liu | 2016-08-19 | 2 | -30/+8 | |
| | | | ||||||
* | | | Disallow fallback function to return values. | chriseth | 2016-08-26 | 1 | -0/+2 | |
| | | | ||||||
* | | | Merge pull request #921 from chriseth/astjsoncleanup | chriseth | 2016-08-23 | 2 | -36/+35 | |
|\ \ \ | | | | | | | | | JSON AST: Some attribute cleanup. Add linearized base contracts. | |||||
| * | | | JSON AST: Some attribute cleanup. Add linearized base contracts. | chriseth | 2016-08-19 | 2 | -36/+35 | |
| |/ / | ||||||
* / / | Fix crash when using json compiler with exponentiation. | chriseth | 2016-08-20 | 1 | -2/+7 | |
|/ / | ||||||
* | | Rename root AST JSON node to SourceUnit | Alex Sinyagin | 2016-08-18 | 1 | -1/+1 | |
| | | ||||||
* | | Do not add children to EnumValue and PlaceholderStatement elements in JSON AST | Alex Sinyagin | 2016-08-18 | 1 | -4/+2 | |
| | | ||||||
* | | Use the full names for JSON AST nodes | Alex Sinyagin | 2016-08-18 | 1 | -11/+11 | |
| | | ||||||
* | | Move creation of the root element of JSON AST to the SourceUnit visitor | Alex Sinyagin | 2016-08-18 | 2 | -5/+18 | |
| | | ||||||
* | | Add ast json converter for PlaceholderStatement | Alex Sinyagin | 2016-08-18 | 2 | -0/+13 | |
| | | ||||||
* | | Add ast json converter for ArrayTypeName | Alex Sinyagin | 2016-08-18 | 2 | -0/+13 | |
| | | ||||||
* | | Add ast json converter for ModifierInvocation and EventDefinition | Alex Sinyagin | 2016-08-18 | 2 | -0/+26 | |
| | | ||||||
* | | Add ast json converter for ModifierDefinition | Alex Sinyagin | 2016-08-18 | 2 | -0/+13 | |
| | | ||||||
* | | Add ast json converter for EnumValue | Alex Sinyagin | 2016-08-18 | 2 | -0/+13 | |
| | | ||||||
* | | Add ast json converter for EnumDefinition | Alex Sinyagin | 2016-08-18 | 2 | -0/+13 | |
| | | ||||||
* | | Add ast json converter for UsingForDirective | Alex Sinyagin | 2016-08-18 | 2 | -1/+14 | |
| | | ||||||
* | | Add a ast json converter for InheritanceSpecifier | Alex Sinyagin | 2016-08-18 | 2 | -0/+13 | |
| | | ||||||
* | | Merge pull request #918 from winsvega/solremove4 | chriseth | 2016-08-17 | 4 | -85/+1 | |
|\ \ | | | | | | | remove solidity --interface | |||||
| * | | remove solidity --interface | Dimitry | 2016-08-17 | 4 | -85/+1 | |
| | | | ||||||
* | | | Merge pull request #839 from chriseth/checkcode | chriseth | 2016-08-17 | 1 | -0/+7 | |
|\ \ \ | | | | | | | | | BREAKING: Make function calls throw if target does not have code. | |||||
| * | | | Make function calls throw if target does not have code. | chriseth | 2016-08-17 | 1 | -0/+7 | |
| |/ / | | | | | | | | | | | | | Low-level calls still just execute and will actually report "success". This allows `x.call.value(y)()` for x being a non-contract account. | |||||
* | | | Merge pull request #888 from chriseth/throwOnDivZero | chriseth | 2016-08-17 | 1 | -3/+10 | |
|\ \ \ | | | | | | | | | Throw on division by zero. | |||||
| * | | | Throw on division by zero. | chriseth | 2016-08-17 | 1 | -3/+10 | |
| | | | | ||||||
* | | | | BREAKING: return only exits current function/modifier | chriseth | 2016-08-17 | 2 | -35/+45 | |
| |/ / |/| | | ||||||
* | | | Merge pull request #836 from chriseth/unusedunderscore | chriseth | 2016-08-17 | 2 | -1/+29 | |
|\ \ \ | |/ / |/| | | BREAKING: Require modifiers to contain "_". | |||||
| * | | Require modifiers to contain "_". | chriseth | 2016-08-16 | 2 | -1/+29 | |
| | | | ||||||
* | | | Merge pull request #838 from chriseth/ecrecover | chriseth | 2016-08-17 | 1 | -5/+38 | |
|\ \ \ | | | | | | | | | Make ecrecover return zero for malformed input. | |||||
| * | | | Actually better to return zero on error. | chriseth | 2016-08-16 | 1 | -2/+0 | |
| | | | | ||||||
| * | | | Make ecrecover throw for malformed input. | chriseth | 2016-08-16 | 1 | -5/+40 | |
| |/ / | ||||||
* | | | Introduce hex literals (#832) | Alex Beregszaszi | 2016-08-16 | 3 | -0/+37 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Introduce hex keyword token * Support hex literals * Include tests for hex literals * Document hex literals | |||||
* | | | Reserved keywords update (#833) | Alex Beregszaszi | 2016-08-16 | 1 | -2/+6 | |
| | | | | | | | | | | | | | | | | | | | | | | | | * Reserve abstract, interface and payable keywords * Keywords as and using aren't reserved anymore - they're used * Reserve the static keyword | |||||
* | | | Provide inline assembly to the code generator. (#840) | chriseth | 2016-08-16 | 5 | -1/+87 | |
| | | | | | | | | | | | | | | | | | | * Directly usable inline assembly. * Add missing header. | |||||
* | | | Throw if contract creation fails. | chriseth | 2016-08-16 | 1 | -0/+3 | |
|/ / | ||||||
* | | Merge pull request #844 from Denton-L/remove-after | chriseth | 2016-08-12 | 4 | -9/+5 | |
|\ \ | | | | | | | BREAKING: Remove after | |||||
| * | | Remove after from grammar.txt | Denton Liu | 2016-08-11 | 1 | -1/+1 | |
| | | | ||||||
| * | | Remove After from Types.cpp | Denton Liu | 2016-08-11 | 1 | -3/+2 | |
| | | | ||||||
| * | | Revert "Change After to a deprecated token" | Denton Liu | 2016-08-11 | 1 | -5/+1 | |
| | | | | | | | | | | | | This reverts commit 91c97f73b50fc87662b5490b2fe6de1c6ef376c7. | |||||
| * | | Change After to a deprecated token | Denton Liu | 2016-08-11 | 1 | -1/+5 | |
| | | | ||||||
| * | | Remove After from ExpressionCompiler | Denton Liu | 2016-08-11 | 1 | -3/+0 | |
| | | | ||||||
| * | | Remove after from Token.h | Denton Liu | 2016-08-11 | 1 | -2/+2 | |
| | | | ||||||
* | | | Fix Mapping and InlineAssembly in JSON AST | Alex Sinyagin | 2016-08-12 | 1 | -0/+2 | |
| | | | ||||||
* | | | Fix JSON AST structure | Alex Sinyagin | 2016-08-12 | 1 | -0/+1 | |
|/ / |