Commit Graph
3491 Commits
Author SHA1 Message Date
chriseth 4908101ad7 Yul IR generation for member access to type types. 2020-04-22 11:25:27 +02:00
chriseth 1d8e742296 Merge pull request #8684 from ethereum/yulForSelector
Yul codegen for `.selector`.
2020-04-20 16:32:11 +02:00
chriseth 41ef13129b Merge pull request #8678 from ethereum/smt_remove_redundant_constraints
[SMTChecker] Remove redundant CHC constraints
2020-04-20 15:44:59 +02:00
chriseth 55483445e9 Merge pull request #8663 from ethereum/ir-function-generation-queue
[Sol->Yul] IR function generation queue (refactor)
2020-04-20 15:17:53 +02:00
chriseth c24c4f85e4 Merge pull request #8665 from ethereum/recursiveStructRefactoring
Recursive struct refactoring and a bunch of ICE fixes.
2020-04-20 13:24:19 +02:00
Kamil Śliwak c7947c1af6 Implement lazy function generation using function generation queue 2020-04-17 13:28:07 +02:00
Alexander Arlt 3754a86ab2 Add support for interfaceID. 2020-04-16 12:17:40 -05:00
Daniel Kirchner 150497c12a Stricter bounds for memory arrays. 2020-04-16 17:51:18 +02:00
Daniel Kirchner f6d1cee06b Ensure that public callable parameters are valid for calldata. 2020-04-16 17:23:20 +02:00
Daniel Kirchner 6093982606 Review suggestions. 2020-04-16 16:42:12 +02:00
Daniel Kirchner 3a5a4c6505 Another ICE test. 2020-04-16 16:42:12 +02:00
Daniel Kirchner 6f06154eb5 Move direct struct recursion check to detect recursion in global structs. 2020-04-16 16:42:12 +02:00
Daniel Kirchner b744a56801 Refactoring of errors and fixes for various ICEs. 2020-04-16 16:42:12 +02:00
Daniel Kirchner df1809f8da Annotate struct definitions with a recursive flag. 2020-04-16 16:42:12 +02:00
chriseth f271dfa2e2 Yul codegen for .selector. 2020-04-16 13:42:58 +02:00
chriseth 06adbc2c59 Implement bit operations. 2020-04-16 00:33:45 +02:00
Leonardo Alt bca43586c6 [SMTChecker] Remove redundant CHC constraints 2020-04-15 18:11:39 +02:00
Daniel Kirchner b86c927505 Disallow virtual and override for constructors. 2020-04-15 13:58:37 +02:00
Daniel Kirchner 0c5c93f3c2 Fix tuple assignments for empty tuples in Yul IR. 2020-04-15 11:10:52 +02:00
Christian Parpart d00d3c45b1 [Sol2Yul] Implements codegen part for try/catch statements. 2020-04-14 18:42:37 +02:00
Daniel Kirchner c47714f0ba Update ASTJSON tests that fail to compile. 2020-04-14 10:59:28 +02:00
Daniel Kirchner 3af43fd350 Extract typing. 2020-04-14 10:59:28 +02:00
chriseth 748afe0edd Merge pull request #8630 from ethereum/encoding-bug-functionCallOption
TypeChecker error when encoding functions with call options; tests
2020-04-08 16:33:24 +02:00
chriseth 9fab9df18c Merge pull request #8607 from a3d4/fix-nested-tuples
Fixed nested tuples on the right-hand side.
2020-04-08 12:29:52 +02:00
a3d4 aba0b2957c Fix tuple assignments with multi-slot components. 2020-04-07 18:39:25 +02:00
hrkrshnn 229587672f TypeChecker error when encoding functions with call options; tests 2020-04-07 21:11:46 +05:30
chriseth 236eff8416 Export immutability. 2020-04-07 17:30:54 +02:00
chriseth 51883958ab Merge remote-tracking branch 'origin/develop' into breaking 2020-04-07 11:14:28 +02:00
Leonardo Alt e3ec22124e [SMTChecker] Fix ICE in CHC internal calls 2020-04-07 01:09:03 +02:00
chriseth 806c835647 Merge pull request #8568 from aarlt/clang-tidy-apply-modernize-use-override
clang-tidy: Apply modernize-use-override.
2020-04-06 16:09:02 +02:00
Daniel Kirchner d68c526eaa Disallow external function pointers as immutables. 2020-04-03 11:56:51 +02:00
hrkrshnn 042ccd24ab Added error message for virtual (library) functions; test case 2020-04-03 15:09:57 +05:30
Alexander Arlt cae6e7769f Apply modernize-use-override. 2020-04-02 18:00:44 -05:00
chriseth d7a39c86ce Accessors for immutable variables. 2020-04-02 19:09:54 +02:00
chriseth 216fca5b70 Merge pull request #8578 from ethereum/interface-function-modifier-error
Added error for interface functions that have modifiers; test case
2020-04-02 18:05:32 +02:00
hrkrshnn ef2bef9ddc Added error for interface function with modifiers; test case 2020-04-02 20:30:43 +05:30
Leonardo Alt 39ff0deb05 Zero initialize memory arrays 2020-04-02 15:55:18 +02:00
Mathias Baumann ac7b31e559 Validate immutable variables 2020-04-02 13:52:27 +02:00
chriseth a2b427dc0b Merge pull request #8567 from ethereum/storage-pointer-checker
Removed redundant storage declaration check; test coverages
2020-04-02 13:46:51 +02:00
hrkrshnn 8e6567e399 New folder localStorageVariable for new testcases; added two new tests 2020-04-02 16:34:45 +05:30
hrkrshnn aec0ae8ec1 Extended test-coverage for storage declaration 2020-04-02 15:45:04 +05:30
hrkrshnn 79387b2ada Removed redundant declaration check; changed relevant test cases 2020-04-02 12:27:38 +05:30
Daniel Kirchner 77ea896b68 Properly handle assignments of immutables at declaration. 2020-04-02 08:35:22 +02:00
Daniel Kirchner fe9f8d520c Restrict size for dynamic memory array creation. 2020-04-01 17:25:09 +02:00
Alexander Arlt 3e649eb8e1 Disallow access to functions from inline assembly. 2020-04-01 10:34:55 +02:00
chriseth b83d82ab75 Merge pull request #8550 from a3d4/fix-8450-typechecker-compiler-error
Fix  a couple of internal compiler errors when assigning nested tuples
2020-03-31 22:21:58 +02:00
a3d4 c002cae691 Fix #8450. Prevented internal compiler errors when assigning nested tuples. 2020-03-31 03:25:26 +02:00
Djordje Mijovic 89d5ecdd24 [Sol2Yul] Adding support for constructor with parameters 2020-03-27 01:19:11 +01:00
chriseth 173f234860 Refactor: Replace inheritance hierarchy by most derived contract. 2020-03-26 18:27:39 +01:00
chriseth 165f7bf60f Move files. 2020-03-26 17:47:36 +01:00