Bhargava Shastry
321e09b62f
Disable SMT checker to silence memory leak reports from z3
2021-06-09 18:38:44 +02:00
Bhargava Shastry
4e171a8b61
Potential fixes to memory leaks
2021-06-09 18:38:44 +02:00
Bhargava Shastry
248cef01e7
Introduce typed expressions.
2021-06-09 18:38:39 +02:00
Bhargava Shastry
23e76926ea
Introduce contract inheritance
2021-06-09 18:38:34 +02:00
Bhargava Shastry
d56dfcf750
Introduce assignment operations.
2021-06-09 18:38:30 +02:00
Bhargava Shastry
7394c60dd5
Destroy state properly
2021-06-09 18:38:25 +02:00
Bhargava Shastry
1d6d8e68f8
Do not apply mutation if it is too large.
2021-06-09 18:38:25 +02:00
Bhargava Shastry
a0197138d9
Fix bug in call statement generator
2021-06-09 18:38:25 +02:00
Bhargava Shastry
954bcf95ea
Add scoped variables
2021-06-09 18:38:25 +02:00
Bhargava Shastry
895e48a823
Introduce function call statements.
2021-06-09 18:38:25 +02:00
Bhargava Shastry
fd211d2631
Do not generate nested unchecked blocks; add typed literals.
2021-06-09 18:38:20 +02:00
Bhargava Shastry
52f227e40a
Introduce unchecked basic blocks.
2021-06-09 18:38:20 +02:00
Bhargava Shastry
1c43ecf9c8
Implement block nesting depth properly
2021-06-09 18:38:20 +02:00
Bhargava Shastry
638ab0bb68
Add assignment statement
2021-06-09 18:38:20 +02:00
Bhargava Shastry
3d6c5e8335
Add assignment statement.
2021-06-09 18:38:20 +02:00
Bhargava Shastry
986f65c219
Remove deprecated SMTChecker pragma.
2021-06-09 18:38:15 +02:00
Bhargava Shastry
ca209c2f09
Add block statement
2021-06-09 18:38:10 +02:00
Bhargava Shastry
b79ddb34c7
Fix bug in function output params
2021-06-09 18:38:05 +02:00
Bhargava Shastry
9d5c208493
Add function output params
2021-06-09 18:38:05 +02:00
Bhargava Shastry
4f6678b134
Make contract function types external
2021-06-09 18:38:05 +02:00
Bhargava Shastry
0f31604a1e
Add function I/O params.
2021-06-09 18:38:05 +02:00
Bhargava Shastry
093b619722
Add types.
2021-06-09 18:38:00 +02:00
Bhargava Shastry
99adff305c
Resolve imported symbols
2021-06-09 18:37:55 +02:00
Bhargava Shastry
bc53705e06
Add exports
2021-06-09 18:37:55 +02:00
Bhargava Shastry
e4aa3bab39
Add function
2021-06-09 18:37:51 +02:00
Bhargava Shastry
18b0c021bc
Contract changes
2021-06-09 18:37:46 +02:00
Bhargava Shastry
25ef4e0e8e
Add contract
2021-06-09 18:37:46 +02:00
Bhargava Shastry
fa9328cb0e
Solidity fuzzer: Add simple import statements and test/source state.
2021-06-09 18:37:42 +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
chriseth
a8ffa6c08d
Merge pull request #11482 from ethereum/fixUnreachable2
...
Fix control-flow handling of modifiers without body.
2021-06-03 16:56:05 +02:00
chriseth
2e3ee4c156
Fix control-flow handling of modifiers without body.
2021-06-03 13:31:15 +02:00
hrkrshnn
c3eef8af91
Fix ICE related to receive function having parameters.
2021-06-03 13:08:57 +02:00
chriseth
a30cf6c3e8
Merge pull request #11480 from ethereum/event-mapping-fatal-error
...
Errors about nested mapping in event parameter are fatal.
2021-06-03 11:39:26 +02:00
hrkrshnn
2309ae3edd
Added tests for internal or recursive types as event / error param
...
After converting the error about mapping parameter in event / error into a fatal type error, we were
missing tests that reached the "internal or recursive types" error.
2021-06-03 11:02:27 +02:00
hrkrshnn
cc915f023e
Errors about nested mapping in event parameter are fatal.
...
(Also applies for error parameters.)
2021-06-03 11:02:27 +02:00
chriseth
c55d173a28
Merge pull request #11479 from ethereum/fix-ice-when-assigning-implicitly-convertible-function-array-to-storage
...
Fix ICE when assigning implicitly convertible function array to storage
2021-06-03 10:52:21 +02:00
chriseth
b00027724a
Merge pull request #11478 from ethereum/fix-ice-when-calling-invalid-external-function-type
...
Treat invalid external function type as a fatal error
2021-06-03 09:00:38 +02:00
chriseth
93936129f1
Merge pull request #11476 from ethereum/fix-ice-on-library-bound-to-literal
...
Fix ICE in IR when a library is bound to a literal
2021-06-03 08:58:00 +02:00
Kamil Śliwak
ccf658b0e8
Fix assertion preventing assignment of arrays of implicitly convertible function types
2021-06-03 08:56:02 +02:00