Commit Graph
198 Commits
Author SHA1 Message Date
Alex Beregszaszi 9062704054 Merge pull request #4753 from mattaereal/boost-to-string-patch
Replace boost:lexical_cast<std::string> for std::to_string.
2018-08-08 16:07:25 +01:00
Matías Aereal Aeón e902ce1aa0 Removing std:: from std::to_string and include for boost/lexical_cast 2018-08-08 11:26:30 -03:00
Matías Aereal Aeón 7dae58cbcc Replace boost:lexical_cast<std::string> for std::to_string. 2018-08-08 03:55:43 -03:00
Christian Parpart 5d9320c70b Disallow loos assembly in Solidity by permanently setting it to SyntaxError (from Warning) 2018-08-02 13:36:05 +01:00
Cryptomental a55abb550d AsmParser,TypeChecker: Fix typos.
Fix typos. The change requested as a separate PR during codespell PR.
Adapt tests as well.

Refs: #4442
2018-07-10 12:33:19 +02:00
Alex Beregszaszi e1d0bfe1ca JuliaType -> YulType 2018-06-14 09:31:28 +01:00
Alex Beregszaszi e0d95a6641 Rename internal variable 2018-06-14 09:31:28 +01:00
Alex Beregszaszi 782bc41dbd Rename JULIA/IULIA to Yul in assembly interface 2018-06-14 09:31:28 +01:00
Jason Cobb 6e29775d39 Remove suicide and sha3 assembly instructions 2018-06-04 01:04:48 +01:00
Julius Huelsmann 1d3a37faff Avoid "unneccesary parentheses in declaration of" warning with keeping a temporary variable. 2018-05-17 14:48:15 +02:00
Alex Beregszaszi e96bbe70d4 Assert that mandatory fields in the AST are present in AsmAnalysis 2018-05-10 10:48:48 +02:00
Alex Beregszaszi cc10839073 Have more uniform parser errors 2018-05-04 13:27:05 +01:00
chriseth fd1662d1c4 Warn about using loose inline assembly features as experimental 0.5.0 feature. 2018-03-06 17:45:34 +01:00
Alex Beregszaszi 5a54cd5c70 Only warn for shift instructions if not using constantinople 2018-03-01 17:19:35 +01:00
chriseth dc317a44e0 Provide EVM version to assembly analysis. 2018-03-01 17:19:35 +01:00
Alex Beregszaszi afa4a48e37 Remove ROL/ROR as they are not part of EIP145 anymore 2018-02-27 13:42:41 +01:00
Alex Beregszaszi 468d0f6199 Warn on using shift instructions 2018-02-27 13:42:31 +01:00
Alex Beregszaszi 42856e0f53 Add assertion for boolean literals in Julia-mode 2018-02-22 01:02:23 +01:00
Alex Beregszaszi ae02bb5aad Raise error on oversized number literals in assembly 2018-02-22 01:02:19 +01:00
chriseth e2bf5de8a2 Expect end of string at end of top-level block for assembly parser. 2018-02-21 00:41:39 +01:00
Alex Beregszaszi 8b20a7cd53 Disallow non-functional instructions in parseExpression early 2018-01-10 14:16:46 +01:00
Alex Beregszaszi 42f8875770 Show restricted instruction warning before argument mismatch issue 2018-01-08 00:39:22 +00:00
chriseth 124190336b Split inline assembly into loose and strict flavours. 2018-01-06 01:23:38 +00:00
Alex Beregszaszi fcbdaa32b9 Simplify parseElementaryOperation in regards to special instructions 2018-01-06 00:39:06 +00:00
Alex Beregszaszi a91393f4d7 Support some restricted tokens (return, byte, address) as identifiers in Julia 2018-01-05 15:53:49 +00:00
chriseth 54b6739962 Separate expression and statement. 2017-12-13 12:28:15 +01:00
Alex Beregszaszi 793537e089 Suggest the "if" statement too instead of jumps 2017-12-05 19:27:12 +00:00
Alex Beregszaszi bc875f6b9c Warn for assembly labels too 2017-12-05 19:27:12 +00:00
Alex Beregszaszi 745eefa36f Split Instruction and FunctionalInstruction in Julia 2017-12-05 14:52:11 +00:00
chriseth 240c79e614 Merge pull request #3265 from ethereum/rename_args_to_params
Rename arguments to parameters.
2017-12-04 06:49:44 -05:00
chriseth 43bb915454 Rename arguments to paramaters and returns to returnVariables. 2017-12-01 16:18:01 +01:00
Alex Beregszaszi 9f756e3797 Include missing forward declarations in AsmDataForward 2017-11-29 21:43:44 +00:00
chriseth 6dbc34e16e If statement for Iulia / inline assembly. 2017-11-22 16:25:24 +01:00
Alex Beregszaszi 8a32d7c3d7 Add helpers for isPush/isDup/isSwap 2017-10-02 10:34:54 +01:00
Alex Beregszaszi 3b813ed295 Support multiple assignment in inline assembly 2017-09-20 11:16:23 +02:00
chriseth 73771f5bb2 Named assembly labels. 2017-09-15 20:44:49 +01:00
chriseth 692e4c57e8 Check recursion depth in assembly parser. 2017-08-22 12:44:22 +02:00
Alex Beregszaszi 9897c56b2c Mark a lot of functions static (where possible) 2017-08-22 10:51:46 +01:00
Alex Beregszaszi 2a5772cff7 Mark appropriate constructors explicit 2017-08-22 10:51:46 +01:00
Alex Beregszaszi e2cfc9ee92 Mark a lot of functions const (where possible) 2017-08-22 10:51:46 +01:00
chriseth 2c5985de06 Be more strict about number literals in assembly. 2017-08-21 13:31:28 +02:00
Alex Beregszaszi b5da5f6e42 Merge pull request #2504 from ethereum/inlineasm-decl-empty
Support variable declarations without an assignment in assembly
2017-07-13 16:58:24 +02:00
Alex Beregszaszi 8d90e6fc4e Rename expectedItems to numVariables 2017-07-13 15:18:40 +02:00
Alex Beregszaszi cee93d946d Support parsing let statements without a value 2017-07-13 15:18:18 +02:00
chriseth 09e821619e Refactor exceptions and provide comment function. 2017-07-13 11:34:03 +02:00
Alex Beregszaszi 7798a27112 Add Julia mode as an option to EVMCodeTransform 2017-07-03 10:13:36 +01:00
Alex Beregszaszi d4fecc7b11 Warn on JUMP/JUMPI in inline assembly 2017-06-30 20:47:14 +01:00
Alex Beregszaszi 5cf2332d6d Support appendAssemblySize() in AbstractAssembly 2017-06-23 00:09:35 +01:00
Alex Beregszaszi d5f8ce90c7 Merge interface/Exceptions and interface/Utils 2017-06-22 11:25:07 +01:00
chriseth 868b5ad3aa Split block code generation into main and finalize. 2017-06-16 10:56:21 +01:00