Kamil Śliwak
afb8fb4927
Create libraries for yul-phaser and solc to avoid compiling their sources again for soltest
2021-06-22 17:47:45 +02:00
chriseth
c5923f7fcf
Prevent calls to unimplemented modifiers.
2021-06-22 17:08:28 +02:00
Kamil Śliwak
98e83303b1
Remove assertions preventing calldata->calldata conversion when cleanup is needed
2021-06-22 16:10:16 +02:00
Kamil Śliwak
0311b955c2
isolate_tests.py: Parse Sphinx block parameters correctly
2021-06-21 20:54:12 +02:00
Djordje Mijovic
838f59fa5b
Adding origin location notation to yul ir.
2021-06-21 18:48:20 +02:00
chriseth
0df8a38e55
Support metadata via IR.
2021-06-21 18:20:31 +02:00
hrkrshnn
eb04dfcd3e
Updated expectation of FixedFeeRegistrar.sol
2021-06-17 10:09:47 +02:00
chriseth
614683019b
Merge pull request #11426 from ethereum/test-fixedfee
...
Move contracts/FixedFeeRegistrar to semanticTests/externalContracts
2021-06-16 18:34:10 +02:00
chriseth
5b4a2f66e1
Directly restart processing calling functions.
2021-06-14 13:54:05 +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
Kamil Śliwak
4a19c7e495
Treat invalid external function type as a fatal error to prevent the type from being used
...
- `returnParameterTypesWithoutDynamicTypes()` assumes it won't encounter such types.
2021-06-02 21:44:39 +02:00
Kamil Śliwak
d96cc3469a
FunctionDefinition.resolveVirtual(): Skip unimplemented functions when lookup happens via super
2021-06-02 16:16:15 +02:00
Kamil Śliwak
67e87147b4
Extra asserts, test renaming, test for super in modifiers
2021-06-02 16:15:51 +02:00
Kamil Śliwak
3c7112ed2b
Remove the assertion against functions bound to types for which should not be possible
...
- The list was wrong - we do support string and int literals
- The assertion was meant to guard against silently skipping over types for which there is no special handling. The current code handles everything in a generic way though and likely will not have to be adjusted for newly added types so the risk of that happening is low.
2021-06-02 13:59:42 +02:00
chriseth
4cbf9ff74c
Merge pull request #10143 from ethereum/issue-10084
...
ControlFlowAnalyser: Also consider called functions in a flow
2021-06-01 19:34:56 +02:00
Leo Alt
bf21cd400c
Fix conversion from bytes to fixed bytes
2021-06-01 17:55:18 +02:00
Mathias Baumann
56ebea8b2f
ControlFlowAnalyser: Also consider called functions in a flow
2021-06-01 15:54:37 +02:00
Leo Alt
547a6915ad
Fix ICE on external calls from constructor
2021-06-01 14:21:48 +02:00
Leo Alt
97a7c5429b
Add SMTChecker tests with modules
2021-06-01 13:35:44 +02:00
Leo Alt
8eb28b10cb
Add SMTChecker tests with modules
2021-06-01 13:35:10 +02:00
chriseth
0623658ddd
Properly set source location of bare blocks.
2021-05-31 18:28:17 +02:00
Alexander Arlt
376836a7fb
Fix typo.
2021-05-31 10:07:26 -05:00
Harikrishnan Mulackal
8ecf79474b
Merge pull request #11458 from ethereum/event_indexed_mixed
...
Add test with event where indexed parameters are not the first.
2021-05-31 16:19:52 +02:00
chriseth
3dfa68a574
Merge pull request #11456 from ethereum/ice-abstract-contract-mapping-constructor
...
Fix ICE related to mapping types in abstract contract constructor
2021-05-31 15:35:26 +02:00
chriseth
28aad7e0b4
Add test with event where indexed parameters are not the first.
2021-05-31 15:19:56 +02:00
hrkrshnn
138873d918
Fix ICE related to mapping types in abstract contract constructor
2021-05-31 14:56:49 +02:00
chriseth
c09dc6144c
Merge pull request #11050 from ethereum/isoltest-effects-events
...
[isoltest] Add support for events using call side-effects.
2021-05-31 14:38:14 +02:00
chriseth
6dd5bcd3f0
Merge pull request #11454 from ethereum/data-location-error
...
Error message: try-catch parameter cannot be in storage.
2021-05-31 14:31:01 +02:00
hrkrshnn
f582d48f7b
Error message: try-catch parameter cannot be in storage.
2021-05-31 11:25:08 +02:00
chriseth
29a995b937
Merge pull request #11433 from ethereum/panic-dedup
...
Insert a call to panic function in legacy codegen (and not inline it every single time)
2021-05-31 11:23:30 +02:00
Alexander Arlt
85e3fcb1bf
[isoltest] Extract event specific end-to-end tests.
2021-05-27 23:21:55 -05:00
Alexander Arlt
ec86e3e9ae
[isoltest] Add support for events using call side-effects.
2021-05-27 23:21:55 -05:00
Alex Beregszaszi
47167a42a7
Update tests
2021-05-27 18:31:54 +01:00
Alex Beregszaszi
cc8d341e28
Include utility functions in ExpressionCompiler tests
2021-05-27 18:31:54 +01:00
Leo Alt
d828aeee23
Update test nondet
2021-05-26 22:12:49 +02:00
Leo Alt
cb017b95cf
update tests
2021-05-26 22:12:49 +02:00
Alexander Arlt
3c57ede026
Fix for boost v1.76.
2021-05-26 08:44:23 -05:00
chriseth
caa833909d
Merge pull request #11244 from ethereum/berlin-gas-update
...
Change default EVM version to Berlin and update Gas costs.
2021-05-26 13:34:04 +02:00
hrkrshnn
dc15e31605
Increased the tolerance for two GasMeter tests.
2021-05-26 12:23:06 +02:00
hrkrshnn
97c9d21376
Force two tests to go out of gas.
2021-05-26 12:23:06 +02:00
hrkrshnn
4d6c951396
Isoltest gas update after Berlin gas cost changes
2021-05-26 12:23:06 +02:00
hrkrshnn
180e00f56d
Updated tests after changing EVM version to Berlin
2021-05-26 12:23:06 +02:00
hrkrshnn
d5564a0304
Set default EVM version to Berlin
2021-05-26 12:23:06 +02:00
hrkrshnn
7d28ea3746
Updated gas costs for Berlin
2021-05-26 11:36:43 +02:00
chriseth
6640fb8c8a
Merge pull request #11048 from ethereum/isoltest-effects
...
[isoltest] Add support for call side-effects.
2021-05-25 17:24:34 +02:00
hrkrshnn
d80a92752a
Added a gas test for storage costs
2021-05-25 12:42:32 +02:00
hrkrshnn
1839d195be
Clears EIP-2929 account and storage access indicator on new blocks.
...
For semantic tests each test (in the same test file) happens on a new block, however the storage and
account access indicators were not reset.
2021-05-25 12:32:59 +02:00
Alexander Arlt
66099fe938
[isoltest] Remove storage command left overs.
2021-05-24 08:36:46 -05:00
Alexander Arlt
e9ee571b35
[isoltest] Add support for call side-effects.
2021-05-22 00:12:07 -05:00
Kamil Śliwak
29c8f282e4
Merge pull request #11419 from ethereum/sc-inline
...
Properly support inliner in settings.optimizer.details
2021-05-21 17:51:39 +02:00
Alex Beregszaszi
cb2c246a7b
Move contracts/FixedFeeRegistrar to semanticTests/externalContracts
2021-05-21 13:51:19 +01:00
Alexander Arlt
799106acfe
[isoltest] Add account builtin.
...
Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
2021-05-21 12:38:05 +01:00
Alex Beregszaszi
75c72cd54d
Properly support inliner in settings.optimizer.details
2021-05-20 20:22:34 +01:00
Alex Beregszaszi
13388e283e
Merge pull request #11385 from ethereum/temporary-working-directory-helper
...
TemporaryWorkingDirectory helper
2021-05-20 20:06:03 +01:00
Kamil Śliwak
4a2080b3aa
TemporaryDirectory: Use boost::filesystem::equivalent() instead of == in path comparisons
2021-05-20 00:07:42 +02:00
Kamil Śliwak
828b15b34f
Implement TemporaryWorkingDirectory test helper
2021-05-20 00:07:42 +02:00
Kamil Śliwak
d85cc6c06a
Fix dangling reference produced by temporary passed to TestFileParser going out of scope
...
- This fixes the `stack-use-after-scope` error reported by asan.
2021-05-19 23:27:41 +02:00
Kamil Śliwak
752483b92f
Minor style tweaks in test TestFileParser (names and wrapping)
2021-05-19 23:27:41 +02:00
Leonardo
dac24294c7
Merge pull request #11384 from ethereum/expose-temporary-directory-helper
...
Expose TemporaryDirectory helper
2021-05-18 12:44:10 +02:00
Harikrishnan Mulackal
21af5408d9
Merge pull request #11397 from ethereum/v1-test-cleanup
...
Cleanup ABICoder V1 tests
2021-05-17 16:20:22 +02:00
Martin Blicha
9c98ab59f0
SMTChecker: fixed struct constructor where FixedBytes member is initialized with a string literal
2021-05-17 13:52:37 +02:00
Alex Beregszaszi
3e8e5f3bf9
Fix v1/v2 tests to behave like they did pre-0.8.0
2021-05-17 12:37:10 +01:00
Alex Beregszaszi
299873182b
Cleanup ABICoder V1 tests
...
Include the pragma explicitly, rename the file to have a _v1 suffix, and also add V2 counterparts where missing.
2021-05-17 12:37:10 +01:00
Harikrishnan Mulackal
85552b58d8
Merge pull request #11392 from ethereum/evmc-transfer
...
EVMHost: Fix selfdestruct with non-zero value at beneficiary and value-transfers with insufficient funds
2021-05-17 12:27:41 +02:00
Harikrishnan Mulackal
e76a8cbc31
Merge pull request #11395 from ethereum/prbmath
...
Fix prbmath.exp tests
2021-05-17 11:28:15 +02:00
Alex Beregszaszi
e73ee468a8
Update tests
2021-05-14 19:56:26 +01:00
Alex Beregszaszi
bb7f500bb1
Add sanity check into SemanticTest for not allowing ABIEncoderV1Only and compileViaYul together
2021-05-14 19:56:26 +01:00
Alex Beregszaszi
7dc514847a
Fix prbmath.exp tests
2021-05-14 15:29:12 +01:00
Alex Beregszaszi
a54699f452
EVMHost: Fix selfdestruct with non-zero value at beneficiary and value-transfers with insufficient funds
...
Create a helper for transfering balance between two accounts. Check sufficient funds are available during a call-with-value.
2021-05-14 00:10:49 +01:00
Alex Beregszaszi
3172d28c56
Upgrade hera to v0.3.2-evmc8
2021-05-13 13:15:13 +01:00
Kamil Śliwak
cdebbb0dbb
TemporaryDirectory: Expose boost::filesystem::path in class interface
2021-05-12 18:08:17 +02:00
Kamil Śliwak
5619702d31
Extract TemporaryDirectory test helper from yulPhaser's tests into a more general location
2021-05-12 17:16:29 +02:00
Alex Beregszaszi
99354a3b59
Upgrade evmone to 0.7.0
2021-05-12 16:56:23 +02:00
Alex Beregszaszi
c66c5c9f1d
EVMHost: properly populate implicit access list for Berlin
2021-05-12 16:49:04 +02:00
Alex Beregszaszi
5bfd26287c
Upgrade to EVMC 8.0.0
2021-05-12 16:49:04 +02:00
Daniel Kirchner
98e2b4e5ed
Merge pull request #11374 from ethereum/semanticTestVMLoadingAndFailures
...
Change loading of VMs and error messages during test.
2021-05-12 16:47:16 +02:00
Daniel Kirchner
06a9199967
Change loading of VMs and error messages during test.
2021-05-12 14:48:37 +02:00
Leo Alt
880a2fffb6
tests
2021-05-11 21:20:42 +02:00
Daniel Kirchner
6104ac1cdf
Remove more imports of ranges namespace.
2021-05-07 15:42:17 +02:00