Commit Graph
7987 Commits
Author SHA1 Message Date
Alex Beregszaszi 494b9dbfaa Issue warning for using CREATE2 in inline assembly 2017-06-14 16:00:39 +02:00
Alex Beregszaszi bec30051c5 Introduce CREATE2 in the assembler 2017-06-14 16:00:39 +02:00
chriseth 98139ead42 Clarify functional style. 2017-06-14 15:46:16 +02:00
chriseth 1ae0e082b3 Merge pull request #2392 from federicobond/disallow-trailing-commas
Forbid trailing commas in named arguments
2017-06-14 15:31:40 +02:00
Alex Beregszaszi e6a36e0121 Include trailing zero in license 2017-06-14 14:14:52 +01:00
Alex Beregszaszi 412802a6c1 Include license text in emscripten output 2017-06-14 14:14:01 +01:00
Alex Beregszaszi 600e3ad240 Support shl/shr in LLL 2017-06-14 14:08:28 +01:00
RJ Catalano 1d644bed31 try to get rid of warning
Signed-off-by: RJ Catalano <rj@monax.io>
2017-06-14 08:06:03 -05:00
chriseth 1b1f35762e Enforce function arguments when parsing functional instructions. 2017-06-14 14:51:47 +02:00
chriseth 0b99c81f85 Merge pull request #2393 from ethereum/license_char_array
Convert license to character array.
2017-06-14 14:47:09 +02:00
chriseth 21aafaa704 Merge pull request #2331 from ethereum/ASTDocumentationEntry
documentation field added to ContractDefinition-Node
2017-06-14 14:32:27 +02:00
chriseth e232a105f0 Merge pull request #2327 from ethereum/assembler-object
Return assembler object in AssemblyStack
2017-06-14 14:28:06 +02:00
chriseth 07cc84fade Fix a crash about a non-callable expression. 2017-06-14 14:26:20 +02:00
chriseth 6441baae6b Merge pull request #2390 from travs/patch-1
Add linter-solium
2017-06-14 14:19:49 +02:00
chriseth 1ce949519d Move 0x to cmake file. 2017-06-14 14:17:53 +02:00
chriseth 43cfab70d0 Merge pull request #2389 from ethereum/moveLabelIDs
Move LabelIDs to generation phase.
2017-06-14 14:12:33 +02:00
chriseth 1d79059897 Convert license to character array. 2017-06-14 12:42:48 +02:00
Federico Bond fd8365df08 Forbid trailing commas in named arguments 2017-06-14 00:15:27 -03:00
Travis Jacobs 9191f8af5f Add linter-solium 2017-06-13 21:03:58 -02:30
Alex Beregszaszi c99c1c76f7 Merge pull request #2354 from benjaminion/patch-2
LLL: fix handling of "sha3" expression
2017-06-13 23:23:02 +01:00
chriseth 154002cda0 Move "active variable" to analysis phase. 2017-06-14 00:10:33 +02:00
chriseth 1bf717fd65 Remove struct constructor. 2017-06-14 00:03:08 +02:00
chriseth c554145f4d Move stack height to generation phase. 2017-06-14 00:01:06 +02:00
benjaminion 3299c479b6 LLL: fix handling of "sha3" expression
When PR #2317 changed the EVM opcode from SHA3 to KECCAK256 it broke the `(sha3 loc len)` expression in LLL. This PR fixes things while allowing existing code using the sha3 expression (such as the ENS registrar) to continue to compile.  I.e. both `(keccak256 loc len)` and `(sha3 loc len)` may be used, and the existing related sha3 macros continue to work.

Three end-to-end test cases have been added for kekkac256 and sha3.
2017-06-13 22:20:14 +01:00
chriseth 45d96959f8 Move LabelIDs to generation phase. 2017-06-13 22:01:15 +02:00
Yoichi Hirai d3f4c97c53 Merge pull request #2350 from benjaminion/patch-1
Change LLL opcode generated by "panic" to INVALID
2017-06-13 19:37:48 +02:00
chriseth d47fcbb612 Clarify statement about receiving ether
Fixes #2377
2017-06-13 19:08:13 +02:00
Edward Ruchevits 5f7bca94e5 Reverted functionHashes output to use method signature as keys 2017-06-13 18:04:33 +01:00
Edward Ruchevits 7c7df6f38b Removed duplicate code 2017-06-13 17:11:15 +01:00
Edward Ruchevits 2e816967d3 Allow including hashes of method signatures in --combined-json output 2017-06-13 17:03:17 +01:00
benjaminion c603369a51 Change opcode generated by (panic) to INVALID
EIP-141 ethereum/EIPs#141 has preserved 0xfe as an invalid opcode for aborting EVM execution. The EVM assembler supports this via the INVALID opcode.

The LLL "panic" expression used to generate a jump to an invalid location in order to abort EVM execution.  This change brings "panic" into line with EIP-141 by generating the INVALID opcode instead.
2017-06-13 17:01:38 +01:00
chriseth 6b052249da Merge pull request #2275 from ethereum/returndata_lll
Add RETURNDATACOPY and RETURNDATASIZE to assembly (and LLL)
2017-06-13 17:41:52 +02:00
Alex Beregszaszi 40f5690f68 Merge pull request #2353 from ethereum/license_output
Include license and warranty statement with solc.
2017-06-13 16:03:24 +01:00
Yoichi Hirai 8775e77305 Add a warning about a varialbe of the name of an instruction 2017-06-13 16:57:08 +02:00
Yoichi Hirai a7241df4b7 Add a failing test as suggested in
https://github.com/ethereum/solidity/pull/2275#discussion_r121438333
2017-06-13 16:57:08 +02:00
Yoichi Hirai a0f8c94dad Add a test about checking a warning 2017-06-13 16:57:08 +02:00
Yoichi Hirai 464dea2459 test: Add different styles of returndatacopy and returndatasize 2017-06-13 16:57:08 +02:00
Alex Beregszaszi 05af6c9255 Warn if returndatasize/returndatacopy is used 2017-06-13 16:57:07 +02:00
Yoichi Hirai 9ff3064d03 Mention RETURNDATACOPY in GasMeter and SemanticInformation 2017-06-13 16:57:07 +02:00
Yoichi Hirai 55737213d1 Add a changelog entry 2017-06-13 16:57:07 +02:00
Yoichi Hirai 0b22154a75 libevmasm: add RETURNDATACOPY and RETURNDATASIZE 2017-06-13 16:57:02 +02:00
Alex Beregszaszi 0c8c209194 Merge pull request #2375 from ethereum/macro_with_zero_args
LLL: macro with zero args
2017-06-13 14:44:29 +01:00
Yoichi Hirai c4f0608b68 More informative test 2017-06-13 12:28:03 +02:00
Yoichi Hirai 0909ffc26e Fix the expectation about the parse 2017-06-13 12:21:28 +02:00
chriseth ca70d82b96 Include abi specs in index and fix styling. 2017-06-12 18:33:23 +02:00
chriseth 3170fd9a93 Formatting of heading. 2017-06-12 17:50:03 +02:00
chriseth c66c5d4a21 Change fixed number example. 2017-06-12 17:49:11 +02:00
chriseth a0777a7ffb Include structs. 2017-06-12 17:43:48 +02:00
chriseth 3699d27cc9 Merge pull request #2368 from jamesray1/patch-5
Doxygen
2017-06-12 17:23:55 +02:00
chriseth e48a1a3851 Merge pull request #2372 from jamesray1/patch-13
Create types.rst
2017-06-12 17:21:28 +02:00