Commit Graph

6112 Commits

Author SHA1 Message Date
Bhargava Shastry
c07d24c66d Fix bug in break/continue placement and introduce do-while loops. 2021-06-14 13:28:43 +02:00
Bhargava Shastry
67644c0763 Introduce break/continue statements and fix stmt genarator logic 2021-06-14 13:28:43 +02:00
Bhargava Shastry
3d4787bb15 Introduce while stmt. 2021-06-14 13:28:39 +02:00
Bhargava Shastry
567e6d7569 Introduce if-elseif-else statement. 2021-06-14 13:28:35 +02:00
Bhargava Shastry
f720cd098f Minor refactor. 2021-06-14 13:28:30 +02:00
Bhargava Shastry
17971999b3 Initialise nesting depth of expression generator to zero. 2021-06-14 13:28:30 +02:00
Bhargava Shastry
d1b7078d8d Introduce if statement 2021-06-14 13:28:30 +02:00
Bhargava Shastry
c007e16ee5 Introduce expression statement. 2021-06-14 13:28:26 +02:00
Bhargava Shastry
c5f92c6bdc Remove circular deps 2021-06-14 13:28:21 +02:00
Bhargava Shastry
f234c8e53f Use shared_ptr refs where possible. 2021-06-14 13:28:21 +02:00
Bhargava Shastry
5b7f413bb2 Disable SMT checker to silence memory leak reports from z3 2021-06-14 13:28:21 +02:00
Bhargava Shastry
914fcedb77 Potential fixes to memory leaks 2021-06-14 13:28:21 +02:00
Bhargava Shastry
07fdbb309b Introduce typed expressions. 2021-06-14 13:28:17 +02:00
Bhargava Shastry
23edc14398 Introduce contract inheritance 2021-06-14 13:28:12 +02:00
Bhargava Shastry
ac6753a46e Introduce assignment operations. 2021-06-14 13:28:08 +02:00
Bhargava Shastry
f76157bc20 Destroy state properly 2021-06-14 13:28:03 +02:00
Bhargava Shastry
eb83ebf1bd Do not apply mutation if it is too large. 2021-06-14 13:28:03 +02:00
Bhargava Shastry
542395289c Fix bug in call statement generator 2021-06-14 13:28:03 +02:00
Bhargava Shastry
a9a80213b3 Add scoped variables 2021-06-14 13:28:03 +02:00
Bhargava Shastry
0e15a794d8 Introduce function call statements. 2021-06-14 13:28:03 +02:00
Bhargava Shastry
0000bb0eea Do not generate nested unchecked blocks; add typed literals. 2021-06-14 13:27:58 +02:00
Bhargava Shastry
fdb1bc0b3d Introduce unchecked basic blocks. 2021-06-14 13:27:58 +02:00
Bhargava Shastry
86fec73a8c Implement block nesting depth properly 2021-06-14 13:27:58 +02:00
Bhargava Shastry
c87d788f78 Add assignment statement 2021-06-14 13:27:58 +02:00
Bhargava Shastry
f6242ef6b7 Add assignment statement. 2021-06-14 13:27:58 +02:00
Bhargava Shastry
4b40b40bb6 Remove deprecated SMTChecker pragma. 2021-06-14 13:27:54 +02:00
Bhargava Shastry
a115e61be6 Add block statement 2021-06-14 13:27:50 +02:00
Bhargava Shastry
46bac2377f Fix bug in function output params 2021-06-14 13:27:45 +02:00
Bhargava Shastry
ef29a5e287 Add function output params 2021-06-14 13:27:45 +02:00
Bhargava Shastry
49bdc1571e Make contract function types external 2021-06-14 13:27:45 +02:00
Bhargava Shastry
bbd451dd16 Add function I/O params. 2021-06-14 13:27:45 +02:00
Bhargava Shastry
31ec048f76 Add types. 2021-06-14 13:27:41 +02:00
Bhargava Shastry
abb931b186 Resolve imported symbols 2021-06-14 13:27:37 +02:00
Bhargava Shastry
a4504b286d Add exports 2021-06-14 13:27:37 +02:00
Bhargava Shastry
6d2c990117 Add function 2021-06-14 13:27:32 +02:00
Bhargava Shastry
10a416c4a8 Contract changes 2021-06-14 13:27:28 +02:00
Bhargava Shastry
b3b72a2b91 Add contract 2021-06-14 13:27:28 +02:00
Bhargava Shastry
d86136679a Solidity fuzzer: Add simple import statements and test/source state. 2021-06-14 13:27:24 +02:00
Daniel Kirchner
284e8a103f Remove potentially non-deterministic test case. 2021-06-09 14:42:16 +02:00
chriseth
e5500b9f20
Merge pull request #11471 from ethereum/funcdef-unimplemented-modifier
Reports an error on unimplemented modifiers in a function definition.
2021-06-09 13:54:05 +02:00
Christian Parpart
a14ac1923d Fixes ICE when overriding an implemented modifier with an unimplemented one. 2021-06-09 13:15:20 +02:00
Kamil Śliwak
362fc6650d Extra tests for shadowing within function parameter lists 2021-06-09 12:37:12 +02:00
a3d4
f59145f21f Fix shadowing struct types by struct member names 2021-06-09 12:37:11 +02:00
a3d4
70b8b1c834 Do not warn about shadowing parameters in functions without implementation 2021-06-09 12:35:26 +02:00
Mathias Baumann
001a25db95 Fix crash in ControlFlowGraph related to free functions. 2021-06-09 11:10:33 +02:00
chriseth
3eaa37030a Fix infinite recursion in function call graph generator due to recursive constant references. 2021-06-08 16:39:30 +02:00
Mathias Baumann
354f9d1015 Fix: Allow multiple @return tags on public state variables 2021-06-07 15:16:46 +02:00
Mathias Baumann
aae9d347aa Split DocStringParsing in two stages
one requiring type info in the next step
2021-06-07 14:49:46 +02:00
chriseth
1f8f1a3db9
Merge pull request #11484 from ethereum/fix-unreachable-code-anaysis
Fix revert pruner modifying function flows wrong
2021-06-04 12:44:35 +02:00
chriseth
8da5d6a854 Update test expectations. 2021-06-04 12:04:04 +02:00