Kamil Śliwak
17aacfdb6a
test_via_ir_equivalence(): Fix quoting and locals
2023-05-23 15:25:48 +02:00
Kamil Śliwak
0ce5e4c94d
test_via_ir_equivalence(): Use assertions for precondition checks
2023-05-23 15:23:44 +02:00
Nikola Matic
e7f5303a39
Make ASTJSONTest an EVMVersionRestrictedTestCase
2023-05-17 18:10:16 +02:00
Nikola Matic
7a34d34045
Restrict experimental solidity to constantinople and above
2023-05-17 17:03:43 +02:00
r0qs
af74ab69c9
Workaround gp2 and prb-math external tests
2023-05-16 16:13:51 +02:00
Nikola Matic
8a41f4ac7e
Introduce solidity-next pragma
...
Exclude pragma experimental error from ANTLR tests
Test for first pragma after non-pragma declaration
Resolve import pragmas
Change pragma name from next to solidity
Add Changelog entries
Address review comments
2023-05-15 19:25:13 +02:00
Daniel
9804085934
Merge pull request #14216 from ethereum/fix_bmc_side_effects_in_statement
...
Fix encoding of side-effects inside if and ternary in BMC
2023-05-15 13:34:22 +02:00
Alexander Arlt
c5673278a7
Remove EWASM backend.
2023-05-11 10:56:55 -05:00
Leo Alt
678461e828
Fix encoding of side-effects inside if and conditional statements in the BMC engine
2023-05-11 16:44:09 +02:00
Alexander Arlt
4837d42361
Add experimental support to import AST via Standard JSON.
2023-05-09 14:07:38 -05:00
Daniel Kirchner
75a0c486a8
Adjust gas expectations due to new creation costs.
2023-05-09 18:22:44 +02:00
Daniel Kirchner
53626fc092
Bump docker images and evmone version.
2023-05-09 17:59:00 +02:00
Nikola Matic
9a87b587d5
Disallow immutable initialization in try catch statements
...
Trigger github
2023-05-09 14:48:14 +02:00
Daniel Kirchner
44da8507b1
Change default EVM version to Shanghai.
...
Co-authored-by: Rodrigo Q. Saramago <rodrigoqsaramago@gmail.com>
2023-05-08 16:34:23 +02:00
Rodrigo Q. Saramago
a29f77369a
Move AST annotation of internal function dispatch IDs to ContractDefinition
...
Co-authored-by: Daniel <daniel@ekpyron.org>
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
2023-05-06 20:31:27 +02:00
Nikola Matić
41742c5410
Merge pull request #14188 from ethereum/fuzz-ir-pipeline
...
Make use of IR codegen pipeline and selectively report stack too deep…
2023-05-06 13:04:13 +02:00
Rodrigo Q. Saramago
766db7daa4
Update gp2 external test script
2023-05-05 17:09:58 +02:00
Bhargava Shastry
889f0721a2
Make use of IR codegen pipeline and selectively report stack too deep errors for the new pipeline.
2023-05-05 11:39:56 +02:00
chriseth
1e63615206
Export all events.
...
Update tests.
Additional tests
Revert changes to the Natspec
2023-05-03 14:08:27 -03:00
Rodrigo Q. Saramago
75960e6db8
Fix throw of ExternalTestNotFound in external_tests.py
2023-04-28 18:28:07 +02:00
Rodrigo Q. Saramago
28a959295b
Move common.sh from test/externalTests to scripts/externalTests
2023-04-28 16:32:01 +02:00
Rodrigo Q. Saramago
778d6f4b26
Migrate externalTests.sh to python
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2023-04-28 16:31:49 +02:00
Rodrigo Q. Saramago
28c7fdae09
Migrate yulStackShuffling tests to isoltest
2023-04-25 15:53:01 +02:00
Leo
4a8d6618f5
Merge pull request #13974 from blishko/chc-path-condition
...
[SMTChecker] Use path condition in CHC engine
2023-04-24 16:24:53 +02:00
Daniel
cd5ae26e34
Merge pull request #14143 from ethereum/remove-type-categoryname
...
Remove the inaccurate `Type::categoryName()`
2023-04-23 22:05:35 +02:00
Alex Beregszaszi
ee92491aae
Upgrade to evmc 10.1.0
2023-04-23 15:51:06 +02:00
Martin Blicha
12bca24774
[SMTChecker] Use path condition when creating CHC targets
...
Without path condition, verification targets created inside ternary
operator ignore the condition of the operator inside the branches.
This led to false positives.
Further updates:
- Function calls should consider the conditions under which they are
called, otherwise the analysis may report false positives.
The fix proposed here is to add the current path condition to the edge
that propagates error from a function call.
- Increment error index after function call
This is necessary for the analysis of the ternary operator to work
correctly. No information should leak from a function call inside a
ternary operator in the first branch to the second branch, including
whether or not an error would have occured in the first branch.
However, for the execution that continues after the function call,
we still need to ensure that under the current path condition
the error has not occurred in that function call.
It would be better to isolate the analysis of the branches to separate
clauses, but I do not see an easy way for that now. In this way, even
though the function call in first branch is included in the clause of
the second branch, no information leaks.
- Additonal test for ternary operator
This tests the behaviour of SMTChecker on ternary operator with function
calls inside both branches. Specifically, it tests that SMTChecker
successfully detects a violation of a verification target in the second
branch when the same target is present also in the first branch, but
there it cannot be triggered because of the operator's condition.
2023-04-21 18:56:34 +02:00
Kamil Śliwak
34da6c8811
Remove the inaccurate Type::categoryName() and change the error message for invalid calls to one independent of the category
2023-04-20 13:50:22 +02:00
Rodrigo Q. Saramago
524db30f12
Update ubuntu ossfuzz references
2023-04-19 00:18:11 +02:00
Daniel
a77d4e281f
Merge pull request #14139 from ethereum/make-plus-binary-only
...
Make plus binary only (second attempt)
2023-04-18 21:20:31 +02:00
Matheus Aguiar
64f57ac3c7
Fix null dereference in using for directive when operator name is empty
2023-04-18 14:23:58 -03:00
Kamil Śliwak
8a14680851
Disallow unary plus at the parsing stage
2023-04-18 16:47:00 +02:00
Nikola Matić
8194acb3b7
Merge pull request #14119 from veniger/natspec-struct
...
Adds NatSpec to AST for struct definitions.
2023-04-18 16:05:20 +02:00
Marko Veniger
07def48f45
Adds NatSpec to AST for struct definitions.
2023-04-18 13:10:21 +02:00
Daniel Kirchner
421738b50d
Fix calldata handling during creation in EVMHost.
2023-04-18 12:53:50 +02:00
Daniel
c6aab84a0c
Merge pull request #14127 from ethereum/eip-3860
...
Add warning for EIP-3860 enforced initcode limits
2023-04-17 17:42:55 +02:00
Daniel
6d847e4e57
Merge pull request #14126 from ethereum/warm-coinbase
...
EVMHost: Support warm coinbase
2023-04-17 14:55:59 +02:00
Alex Beregszaszi
71bea997aa
Add and update tests
2023-04-15 13:47:11 +02:00
Alex Beregszaszi
4264b5ae07
EVMHost: Support warm coinbase
2023-04-15 13:19:08 +02:00
Alex Beregszaszi
d478c7d81a
EVMHost: Add "support" for Blake2f
2023-04-15 13:17:02 +02:00
Kamil Śliwak
593e207094
Merge pull request #14104 from ethereum/extract-parse-literal
...
Refactor literal parsing before adding suffixes
2023-04-12 14:52:04 +02:00
Daniel
6bc6ae94a6
Merge pull request #14050 from ethereum/contract-ast-internal-function-ids
...
Annotate internal function IDs
2023-04-12 14:11:39 +02:00
Kamil Śliwak
c1fffa892d
Parser: Extract literal parsing into a separate function
2023-04-12 12:30:05 +02:00
Kamil Śliwak
46457cfc25
Merge pull request #14103 from ethereum/extra-tests
...
A few extra tests for operators, denominations and virtual functions
2023-04-12 11:32:26 +02:00
hrkrshnn
41ce3feb0a
test: some tests for push0
...
1. `push0_disallowed.yul`: checks if `push0()` is a valid builtin in strict Yul
2. `push0_disallowed.sol`: checks if `push0()` is a valid builtin in inline assembly
3. `push0.sol`: simple semantic test that returns 0
4. `evmone_support.sol`: tests if push0 works properly in evmone
5. Updated some bytecode too large tests to use `shanghai` as version
6. Updated various tests where `push1 0` was hardcoded in different forms / expectations on bytecode
size (`Assembler.cpp`, `GasCosts.cpp`, `SolidityCompiler.cpp`, `SolidityExpressionCompiler.cpp`)
2023-04-12 00:10:24 +02:00
Kamil Śliwak
66fcd542bc
Tests for denominations in array sizes
2023-04-07 14:54:09 +02:00
Kamil Śliwak
fc7cd54849
Tests for changing virtual function mutability when overriding
2023-04-07 14:49:55 +02:00
Kamil Śliwak
5687f6e934
Tests for literal denominations with non-integer literals
2023-04-07 14:48:13 +02:00
Kamil Śliwak
8dd6f77692
Extra test for operator cleanup
2023-04-07 14:47:34 +02:00
Kamil Śliwak
e29a68d374
Merge pull request #14098 from ethereum/workaround-oz-ext-test-2
...
Skip `TransparentUpgradeableProxy` openzeppelin external tests due to partial viaIR support in Hardhat
2023-04-06 15:53:33 +02:00
Kamil Śliwak
a902c09cb7
Merge pull request #14086 from ethereum/gnosis-ext-workaround
...
Skip via-ir with yul optimizer for Gnosis external tests
2023-04-06 15:52:15 +02:00
Rodrigo Q. Saramago
f404eb0349
More openzeppelin workarounds
2023-04-06 13:23:36 +02:00
Rodrigo Q. Saramago
33b07c5dc6
Skip via-ir with yul optimizer for Gnosis external tests
2023-04-05 21:27:31 +02:00
Kamil Śliwak
9020efec58
Merge pull request #14087 from ethereum/better-error-for-invalid-call
...
Better error message when trying to call things that are not functions
2023-04-05 17:38:10 +02:00
Christian Parpart
be8752b5d3
Adds natspec to AST for enum definition.
2023-04-05 14:58:32 +02:00
Kamil Śliwak
a019f400d0
Better error message when trying to call things that are not functions
2023-04-04 17:30:37 +02:00
Kamil Śliwak
79d975a77d
Merge pull request #14078 from ethereum/fix_missing_keyword_unicode
...
Fix missing keyword `unicode` in grammar
2023-04-03 12:53:20 +02:00
Matheus Aguiar
4aa310034c
Added missing keyword unicode to Lexer
2023-03-28 13:51:43 -03:00
Leo Alt
ce9a7ee954
update smtchecker tests
2023-03-28 18:23:54 +02:00
Matheus Aguiar
0158de60be
Refactored NumberUnit and FunctionDefinition. Added OctalNumber. Fixed number followed by identifier with no whitespace.
2023-03-24 16:19:33 -03:00
Rodrigo Q. Saramago
a0e62bbd3d
Annotate function ID of functions that may be called via the internal dispatch.
...
Co-authored-by: Daniel <daniel@ekpyron.org>
2023-03-20 20:14:41 +01:00
chriseth
fac5666dc9
Re-implement unused assign / unused store eliminator.
2023-03-20 13:49:37 +01:00
Francois-Rene Rideau
acaa019785
Keep test/lsp.py working when not on a tty
2023-03-19 16:09:42 -04:00
Leo Alt
6c58f31b4a
add cli tests
2023-03-15 17:52:58 +01:00
Leo Alt
aacbe72079
group unsupported warnings
2023-03-15 17:06:06 +01:00
Leo Alt
21c0f78650
Report safe properties in BMC and CHC
2023-03-09 14:59:32 +01:00
Rodrigo Q. Saramago
f974dbc205
Update openzeppelin skipped tests that depends on hardhat via-ir full support
2023-03-07 18:50:48 +01:00
Bhargava Shastry
1ac3abfbb7
Strict assembly fuzzer: Change optimization setting from full to minimal.
2023-02-24 22:42:07 +01:00
wechman
aba5ac5e2a
User-defined operators: Tests
2023-02-22 00:40:03 +01:00
Kamil Śliwak
fa0d3a44a7
Tests for using enums and fixed-point types as user-defined types
2023-02-21 23:42:22 +01:00
Kamil Śliwak
38b5ae578b
Fix typo in test name: singed -> signed
2023-02-21 21:30:03 +01:00
Daniel Kirchner
4064116df4
Do not duplicate subassemblies.
...
Add LinkerObject check and more tests
2023-02-20 22:20:45 +01:00
Kamil Śliwak
973eda17b4
Merge pull request #13977 from ethereum/revert-openzeppelin-time-workaround
...
Remove openzeppelin workaround
2023-02-17 14:13:17 +01:00
Rodrigo Q. Saramago
228c355424
Remove openzeppelin workaround
2023-02-16 13:10:21 +01:00
chriseth
01b10e2515
Gas updates.
2023-02-15 21:33:06 +01:00
chriseth
07750ea23a
More aggressive runtime code exclusion.
2023-02-15 21:33:06 +01:00
Kamil Śliwak
e147654f92
Merge pull request #13971 from ethereum/improve-error-reporting-for-wrong-constructor-arguments
...
Improve error messages for wrong constructor arguments
2023-02-15 20:39:59 +01:00
Rodrigo Q. Saramago
ceaa7b53da
Skipping flaky openzeppelin tests
2023-02-15 18:54:15 +01:00
Kamil Śliwak
1a981af548
Only suggest removing parentheses from a construction call if they're empty
2023-02-15 14:27:03 +01:00
Kamil Śliwak
73183d3df9
Fix missing base constructor arguments being treated as an unimplemented function
2023-02-15 14:27:03 +01:00
Kamil Śliwak
bc3cbfa18d
Add more tests tests for calls to base constructor with missing or wrong arguments
2023-02-15 14:17:55 +01:00
Kamil Śliwak
16bc4c6b5f
Fix test for replacing base constructor
2023-02-15 14:17:55 +01:00
Daniel
7cd589eee4
Merge pull request #13961 from ethereum/fix-external-test-gp2
...
gp2 external test workaround
2023-02-13 21:36:36 +01:00
chriseth
91b14174d8
Merge pull request #13702 from ethereum/new_knowledge_engine
...
Re-implement KnowledgeBase using groups of constantly-spaced variables.
2023-02-13 20:05:47 +01:00
Rodrigo Q. Saramago
a5166f0a19
gp2 external test workaround
2023-02-11 17:16:03 +01:00
Leo
59f9ab4dee
Merge pull request #13939 from pgebal/fix_handling_bitwise_operators_when_parsing_z3_call_result
...
Fixes handling bitwise operators for z3 model checker
2023-02-09 12:16:28 +01:00
chriseth
695b250557
Update gas costs.
2023-02-09 10:47:12 +01:00
chriseth
47aa1c65ae
Re-implement KnowledgeBase using groups of constantly-spaced variables.
2023-02-09 10:47:11 +01:00
Pawel Gebal
a38549dc19
Fixes handling bitwise operators for z3 model checker
2023-02-08 18:37:17 +01:00
Leo Alt
db9c11a2a5
fix abstract nondet exception
2023-02-08 16:59:37 +01:00
Daniel
665bf29a84
Merge pull request #12958 from ethereum/yul-fuzzer-bound-memory-accesses
...
Yul grammar generator: Bound memory accesses.
2023-02-07 15:47:20 +01:00
Matheus Aguiar
a5c5e4602a
Cleanup of duplicated line leftover from previous fix
2023-02-06 18:10:31 -03:00
Nikola Matić
e48d495fb7
Merge pull request #13940 from ethereum/fix-workaround-gnosis-test
...
Replace quote marks with quotation marks in workaround of gnosis.sh external test
2023-02-06 21:48:38 +01:00
Matheus Aguiar
98c011328a
Replace quote marks with quotation marks
2023-02-06 16:53:23 -03:00
Leo Alt
8d91ccf028
[SMTChecker] Add a new trusted mode which assumes that code that is
...
available at compile time is trusted.
2023-02-06 17:02:33 +01:00
Matheus Aguiar
2b70b08d5f
Allow library external functions to be bound with using for
2023-02-02 13:39:19 -03:00
Bhargava Shastry
5c6e12b2c0
Update existing and add new test cases.
2023-02-02 11:40:39 +01:00
Bhargava Shastry
f8880cad82
Yul grammar generator: Bound memory accesses.
2023-02-02 08:10:53 +01:00
Rodrigo Q. Saramago
828f95ad9e
Fix pylint 2.16 warnings
2023-02-01 10:39:00 -03:00
Rodrigo Q. Saramago
feba4de509
Add paris constraints to SMTChecker
...
Co-authored-by: Daniel <daniel@ekpyron.org>
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
Co-authored-by: Leo <leo@ethereum.org>
2023-01-31 11:03:04 +01:00
Rodrigo Q. Saramago
d9d9ab30a2
Update default evm version to paris
2023-01-30 17:57:08 +01:00
Bhargava Shastry
564cf85725
Yul proto converter: Output prevrandao for evm versions >= paris
2023-01-30 09:19:33 +01:00
Nikola Matic
e7543d487d
Issue warning when using deprecated SELFDESTRUCT
2023-01-25 16:55:11 +01:00
Rodrigo Q. Saramago
ef6ff2f055
Adds support for the EVM version "Paris".
...
Deprecates `block.difficulty` and disallow `difficulty()` in inline assembly for EVM versions >= paris.
The change is due to the renaming introduced by EIP-4399 (see: https://eips.ethereum.org/EIPS/eip-4399 ).
Introduces `block.prevrandao` in Solidity and `prevrandao()` in inline assembly for EVM versions >= paris.
Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
Co-authored-by: Daniel <daniel@ekpyron.org>
Co-authored-by: matheusaaguiar <95899911+matheusaaguiar@users.noreply.github.com>
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
2023-01-23 18:50:36 +00:00
vlad
484ee8a621
Additional tests for edge cases for mutability, visibility, location, experimental, global, indexed and anonymous
2023-01-20 20:05:36 +01:00
vlad
7fbd36855d
Disallow usage of the indexed attribute for modifier parameters Added tests for edge cases of several keywords
2023-01-20 19:53:02 +01:00
vlad
6a0ea174b8
Disallow several indexed attributes for the same event parameter
2023-01-20 19:53:02 +01:00
Rodrigo Q. Saramago
a9757e963e
Remove more workarounds
2023-01-18 09:25:31 +00:00
Nikola Matić
db0ecd2413
Merge pull request #13878 from ethereum/gnosis-remove-workarounds-for-latest-dependencies
...
Remove workarounds for latest dependencies from gnosis ext test
2023-01-18 09:42:39 +01:00
Kamil Śliwak
6df65ca1a1
gnosis ext test: Remove workarounds that used to be necessary to make the test work with latest versions of its dependencies
2023-01-18 08:54:01 +01:00
Matheus Aguiar
7779b6f352
Forbid private library functions to be attached outside their declaration scope
2023-01-17 16:27:35 -03:00
Nikola Matic
83c1f62026
Source location for named mapping keys
2023-01-17 12:25:23 +01:00
Matheus Aguiar
82806c4236
Change filename in sed command
2023-01-16 12:54:02 -03:00
Nikola Matic
0ca97ba8b8
Add snark verifier benchmark test
2023-01-12 11:59:33 +01:00
Daniel
f441e1323a
Merge pull request #13384 from zemse/develop
...
Allow named parameters in mapping types
2023-01-09 17:59:29 +01:00
Nikola Matic
5ecf3075fb
Silence version check grep and up the node heap limit
2023-01-05 16:55:16 +01:00
Nikola Matic
17d57da082
Unpin v4-core dependency and neutralize packages
2023-01-04 12:02:13 +01:00
Pierre Grimaud
b314e1b37d
docs: fix typos
2022-12-25 22:39:50 +01:00
andy53
3bc535e1a1
Report when no contracts to compile
...
updates
2022-12-19 13:47:03 +01:00
Nikola Matic
4d627e6fc4
fixup! External tests maintenance
2022-12-16 14:49:01 +01:00
Nikola Matic
d1a158368a
External tests maintenance
2022-12-16 11:34:00 +01:00
Nikola Matic
cca1b460c9
Unpeg fixed dependency from elementfi external test
2022-12-15 16:45:44 +01:00
Nikola Matic
ab78f69bf5
Pin v4-core dependecy to fix failing exteral pooltogether test
2022-12-15 12:53:57 +01:00
Soham Zemse
fa78e0f3d4
feat: allow named parameters in mapping types
...
Co-authored-by: Hari <webmail.hari@gmail.com>
test: add parser and abi test cases
docs: add example on using named parameters for mappings
- Add changelog
feat: update antlr grammar to allow named parameters in mappings
fix: prevent conflicting mapping parameter names
ref: change order of mapping initializers
test: update expectations and fix build
test: add more tests
fix: use common error & code for conflicting params
fix: issue with accessing nested mapping
test: add conflicting params tests for more nested levels
Update libsolidity/analysis/DeclarationTypeChecker.cpp
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
fix: error reported with the same code twice
test: add more tests for 3 level nested mapping
Address review comments
2022-12-08 11:56:58 +01:00
Kamil Śliwak
71506bd3b3
Consistent terminology for attached/bound functions (file rename)
2022-12-07 19:31:44 +01:00
wechman
64a4f32bc2
Consistent terminology for attached/bound functions
2022-12-07 19:31:41 +01:00
chriseth
79c52b3c9e
Re-use knowledge about keccak calls.
...
Re-use knowledge about keccak calls.
Update gas cost.
More tests.
Fix bug.
Update libyul/optimiser/DataFlowAnalyzer.cpp
Remove util prefixes
fix test
More test cases.
Add Changelog entry
2022-12-07 14:16:13 +01:00
chriseth
0cf7236729
Add optimizor club benchmark.
2022-12-02 18:40:49 +01:00
chriseth
5e74e95b67
Update test/benchmarks/run.sh
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-12-02 14:08:41 +01:00
chriseth
a0f8cc922f
Add optimizor club benchmark.
2022-12-02 14:08:41 +01:00
Daniel
851cc09742
Merge pull request #13516 from ethereum/fix-yul-interpreter-memory-access
...
Fix memory expansion semantics in the yul interpreter.
2022-12-01 15:42:41 +01:00
Rodrigo Q. Saramago
0fb04432fa
Quick fix of prb-math
2022-11-30 16:24:44 +01:00
Leo Alt
77698f8108
Fix internal error when deleting struct member of function type
2022-11-30 12:47:32 +01:00
Kamil Śliwak
d0fb8c2e87
Fix another instance of the spurious unreachable warning, this time in SemVerMatcher
2022-11-29 23:26:22 +01:00
Leo Alt
608b424afc
Fix internal error when using user defined value types as mapping indices or struct members.
2022-11-29 13:04:01 +01:00
Leo
cc8baf7ea8
Merge pull request #13754 from ethereum/smt_fix_assignment
...
Fix internal error in assignment chains
2022-11-29 11:58:36 +01:00
Leo Alt
be8b05e6bf
Make isoltest not check SMTChecker counterexamples by default.
2022-11-28 20:55:15 +01:00
Leo Alt
07870d0318
Fix internal error in assignment chains that also assign to fully qualified state variables (, for example), where the contract expression is a tuble.
2022-11-28 18:45:50 +01:00
Leo Alt
a5dab6181c
Fix internal error when the abstract-nondet SMTChecker natspec annotation is used with a wrong option multiple times for the same function
2022-11-28 16:59:35 +01:00
Leo Alt
9a8dd4242f
Fix SMTChecker bug when a public library function is called internally by an internal library function, which in turn is called internally by a contract.
2022-11-28 13:07:18 +01:00
Vinay
9e7b85ac4b
Improve Error Reporting of SemVer Parser
2022-11-25 13:09:09 -03:00
Nikola Matić
bf1a2c7cee
Merge pull request #13734 from ethereum/add_perf_benchmarks
...
Add performance benchmarks.
2022-11-25 07:44:02 -05:00
chriseth
e9cc770d80
Add performance benchmarks.
2022-11-25 10:29:29 +01:00
Alexander Arlt
fe68200f30
[tests] Refactor scripts/ASTImportTest.sh. ( #13576 )
...
* [tests] Refactor scripts/ASTImportTest.sh.
Co-authored-by: Nuno Santos <nuno.santos@ethereum.org>
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-11-24 16:16:16 +01:00
Leo Alt
d660f0cab0
adjust nondeterministic tests
2022-11-24 13:08:06 +01:00
Leo Alt
504b70b6af
update smt tests
2022-11-24 13:08:06 +01:00
Leo Alt
c3a7adad27
update cli tests
2022-11-24 13:08:06 +01:00
Daniel
eb2f874eac
Merge pull request #13733 from ethereum/eofSetting
...
Add experimental EOF options for CLI and Standard JSON.
2022-11-23 20:37:24 +01:00
Daniel Kirchner
bf26d3be5a
Add experimental EOF options for CLI and Standard JSON.
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-11-23 19:53:44 +01:00
Leo Alt
24df40de9a
Allow running Eldarica from the command line
2022-11-22 21:16:45 +01:00
Daniel
3109ce2dbc
Merge pull request #12132 from ethereum/userDefinedSideEffectsCodeTransform
...
Use side-effects of user defined functions in evm code transform.
2022-11-22 14:26:57 +01:00
Alex Beregszaszi
eb8af2caec
Add basic support for the EVM version Paris
...
This mostly means testing with evmone, but instruction renaming of difficulty->prevrandao is omitted.
2022-11-21 14:56:46 +01:00
Bhargava Shastry
2c27405cbb
Fix zero size memory expansion semantics in the yul interpreter.
2022-11-21 11:53:42 +01:00
Daniel Kirchner
1b6063ede4
Disable zeppelin test failing due to hardhat heuristics.
2022-11-14 21:26:36 +01:00
chriseth
5ba8c109f4
Use side-effects of user defined functions in evm code transform.
2022-11-14 21:26:36 +01:00
Ishtiaque Zahid
3abf2724a1
changed output of formatNumberReadable so that it shows powers of two and one-less-than powers of two in a more compact format
2022-11-14 17:37:38 +01:00
Alex Beregszaszi
54b4598390
Move some tests from viaYul to appropriate groups
2022-11-10 22:21:15 +01:00
Alex Beregszaszi
0f65e17b7b
Update tests
2022-11-10 22:21:15 +01:00
Alex Beregszaszi
5a35c50d16
test: Support tracking gas refunds
2022-11-10 22:00:38 +01:00
nishant-sachdeva
efbd3666a7
added optimization. shl comes out from being distributed over and
2022-11-11 01:16:14 +05:30
Alex Beregszaszi
47ed36e0db
Upgrade CI and download instructions to evmone 0.9.1 and hera 0.6.0
2022-11-09 21:27:40 +01:00
Alex Beregszaszi
b49008af9e
Support EVMC_PARIS with randao from merge block
2022-11-09 21:27:40 +01:00
Alex Beregszaszi
5df92a374b
Update EVMHost to match EVMC10 changes
2022-11-09 21:27:40 +01:00
Alex Beregszaszi
458857d0d6
Upgrade to evmc 10.0.0
2022-11-09 11:45:40 +01:00
Paweł Bylica
4830194383
test: Update test expectations
2022-11-09 10:15:17 +01:00
Paweł Bylica
199f36585a
test: Improve precision of SSTORE cost in EVMHost
...
Add "original" field to storage_value to precise track "dirty" state of
a storage slot as defined in EIP-2200. In case a current storage value
is restored to original (after multiple modifications in a single
transaction), the storage slot is not considered "dirty" any more.
Previously, we only had a bool dirty flag to model this and a storage
slot was always considered "dirty" after first modification.
2022-11-09 10:15:14 +01:00
chriseth
cffacac9de
Hash number literals according to their value instead of their string representation.
2022-11-08 20:34:10 +01:00
Daniel
9a60c06335
Merge pull request #11087 from ethereum/precompile-prices
...
EVMHost: charge gas for precompiles
2022-11-08 19:56:42 +01:00
Paweł Bylica
c4b6f5f00b
test: Properly clear storage dirty flag
...
Clear storage dirty flag between transactions in EVMHost. The EIP-2200
dirty flag should be persisted only in a single transaction.
2022-11-08 18:13:17 +01:00
Duc Thanh Nguyen
4aac4c7bc4
Add Natspec devdoc inheritance support for events
2022-11-08 15:53:10 +01:00
wechman
52bfb8bd2d
Minor test naming/style corrections
2022-11-07 23:16:02 +01:00
wechman
6da09e8d9a
Error message tweak: built-in unary/binary operator
2022-11-07 17:13:41 +01:00
wechman
4c9a58eb0f
Don't include location in a message about binding function to a type
2022-11-07 17:13:09 +01:00
Alex Beregszaszi
b74b55198d
Update tests
2022-11-04 10:48:30 +01:00
wechman
d5428af5bb
Make the message about name not referring to a user-defined type more generic
2022-11-04 08:46:53 +01:00
wechman
c297183467
Test that built-ins cannot be bound to structs
2022-11-04 08:46:53 +01:00
Alex Beregszaszi
18a5aee38c
EVMHost: Introduce gas metering for precompiles
2022-11-03 22:18:34 +01:00
Nikola Matic
d5d573dfbe
Peg hardhat-tenderly to fix GP2 external tests
...
Empty
2022-11-03 09:07:58 +01:00
Daniel
0c168b154c
Merge pull request #13579 from ethereum/refactor-json
...
[libsolutil] Add new JSON helper functions.
2022-11-02 10:25:04 +01:00
Daniel
7ac4c70c9b
Merge pull request #13569 from ethereum/document-call-to-zero-init-function-type
...
Document legacy and IR behavior for call to zero initialized variable of function type
2022-11-01 15:42:12 +01:00
Daniel
05217fa8be
Merge pull request #13633 from ethereum/solc-return-codes
...
[solc] Exit code 2 for exceptions.
2022-11-01 14:18:41 +01:00
Daniel
bbaf8a4eb4
Merge pull request #13283 from ethereum/yulDebugger
...
Yul Debugger
2022-11-01 14:04:56 +01:00
Alexander Arlt
5b9096a381
[solc] Exit code 2 for exceptions.
2022-11-01 12:56:05 +01:00
Alexander Arlt
c23093e0f0
[libsolutil] Add new JSON helper functions.
2022-10-26 09:33:03 -05:00
Christian Parpart
4915c8eb8e
Merge pull request #13609 from ethereum/lsp-hover-provider
...
Adds basic `textDocument/hover`
2022-10-26 14:38:35 +02:00
Kamil Śliwak
05c457181e
Merge pull request #13227 from ethereum/functions_taking_calldata_args_should_be_assignable_to_function_pointer_of_same_type
...
functions taking calldata args should be assignable to function pointers of same type
2022-10-26 14:35:24 +02:00
Christian Parpart
9e7fe985bf
[Language Server]: Add basic document hover support.
2022-10-26 13:53:29 +02:00
George Plotnikov
6374b4fe23
regenerating tests expectation
2022-10-26 15:13:47 +05:00
George Plotnikov
376b923a79
adding support for no-pretty-print
2022-10-26 15:13:11 +05:00
nishant-sachdeva
8c0740748e
functions taking calldata args should be assignable to function pointers of same type
2022-10-26 13:29:02 +05:30
andy53
54965fb0ae
fix emit statments being printed on the same line
...
Update test/libsolidity/semanticTests/emit_three_identical_events.sol
Co-authored-by: Kamil Śliwak <cameel2@gmail.com>
Update test/libsolidity/semanticTests/emit_two_identical_events.sol
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
2022-10-25 19:22:07 +02:00
Kamil Śliwak
fb3d0a874e
Merge pull request #13643 from ethereum/ext-gp2-bug-fix
...
Fix gp2 ext test failing to build, not being able to resolve the the keyv dependency
2022-10-24 13:06:21 +02:00
Kamil Śliwak
b4c85c6d37
Merge pull request #13594 from ethereum/evmc-selfdestruct
...
EVMHost: implement selfdestruct better
2022-10-21 21:07:22 +02:00
Kamil Śliwak
5c5045ee26
Merge pull request #13644 from ethereum/builtin-tests
...
test: Move hashing algorithm tests to semanticTests
2022-10-21 20:17:47 +02:00
Alex Beregszaszi
4f07be6348
test: Move hashing algorithm tests to semanticTests
2022-10-21 15:59:47 +02:00
Rodrigo Q. Saramago
11e13f5a41
Replace npm by yarn
2022-10-20 20:32:36 -03:00
Kamil Śliwak
720db45d88
Merge pull request #13622 from ethereum/fix-failing-build
...
Silence integer precision loss warning for protobuf fuzzers.
2022-10-21 00:13:55 +02:00
Nikola Matić
af257408e4
Merge pull request #13638 from Bojidar00/move-files
...
refactor: Move error generating tests to /invalid
2022-10-20 09:23:47 -05:00
Alex Beregszaszi
24946ec318
EVMHost: implement selfdestruct better
2022-10-20 15:35:41 +02:00
Bojidar00
af9a1d8a18
refactor: Move error generating tests to /invalid
2022-10-20 14:04:12 +03:00