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
Kamil Śliwak
ed3d3959aa
Rename command line tests for the --no-cbor-metadata/appendCBOR option
2022-10-19 21:28:45 +02:00
Kamil Śliwak
4679ae0275
Merge pull request #13629 from ethereum/metadata-standard-json-bugfix
...
fix: `bytecodeHash` cannot be set to non-none for `appendCBOR=false`
2022-10-19 21:21:41 +02:00
Daniel
2cb618a5c3
Merge pull request #13593 from ethereum/test-selfdestruct
...
Add test for selfdestruct
2022-10-17 17:43:08 +02:00
hrkrshnn
6854e2b5d6
fix: bytecodeHash
cannot be set to non-none for appendCBOR=false
...
Testing: see `test/cmdlineTests/metadata_append_standard_json_error`
Closes: https://github.com/ethereum/solidity/issues/13628
2022-10-13 02:07:20 +02:00
Bhargava Shastry
898fbe9335
Silence integer precision loss warning for protobuf fuzzers.
2022-10-12 12:10:43 +02:00
Nikola Matić
16c4c7565a
Merge pull request #13546 from KatyaPrusakova/move-nonstruct-test
...
test copy_from_calldata.sol folder location update
2022-10-06 19:02:50 +02:00
Prusakova Katya
2d4aa990fb
test copy_from_calldata.sol folder location update
...
Rename copy_from_calldata
2022-10-06 18:14:15 +02:00
Kamil Śliwak
70b0fb6366
Merge pull request #13560 from rajgaur98/develop
...
Updated Whiskers for checking invalid tags
2022-10-04 17:33:05 +02:00
Kamil Śliwak
53e0a47a1c
Merge pull request #13265 from ethereum/no-append-metadata
...
Add `--no-append-metadata` in CLI and `metadata.append` in JSON
2022-10-04 17:32:22 +02:00
Alex Beregszaszi
96168a1438
Add test for selfdestruct
...
Also drop less useful EndToEndTest
2022-10-01 11:45:46 +02:00
Rajkumar gaur
bfd83c966a
Updated Whiskers for checking invalid tags
...
For Example, raise an error if it contains invalid tags like
<?ba<!b</b
2022-09-29 07:36:29 +05:30
Alex Beregszaszi
0357cedb5c
Update tests and include new for create/create2 calculation
2022-09-27 22:31:46 +02:00
Alex Beregszaszi
9aa304d43a
EVMHost: Calculate address for CREATE properly
2022-09-27 22:31:45 +02:00
Alex Beregszaszi
5f8b48793c
Merge pull request #13571 from ethereum/explicit-fixedhash
...
Drop implicit alignment argument from FixedHash (and improve FunctionSelector helpers)
2022-09-27 22:30:34 +02:00
Alex Beregszaszi
2a41295d03
Drop implicit alignment argument from FixedHash
2022-09-27 17:58:32 +02:00
Alex Beregszaszi
725253551e
Improve FunctionSelector helpers
2022-09-27 17:58:32 +02:00
Alex Beregszaszi
d1b8991c03
Merge pull request #13565 from ethereum/evmc-cleanup
...
EVMHost: a few more simplifications
2022-09-27 17:56:05 +02:00
Bhargava Shastry
bd57de6d68
Document legacy and IR behavior for call to zero initialized variable of function type.
2022-09-27 14:09:09 +02:00
Alex Beregszaszi
0f484ec93b
Replace use of boost::algorithm::all_of with ranges::all_of
2022-09-27 03:33:13 +02:00
Alex Beregszaszi
8230022e18
Remove unused include of boost/variant
2022-09-27 03:27:37 +02:00
Alex Beregszaszi
565423c934
Replace use of boost::adapters::filtered with ranges::views::filter
2022-09-27 03:14:17 +02:00
Alex Beregszaszi
50182d7ee0
EVMHost: replace precompileALTBN128PairingProduct with mapping
2022-09-26 21:39:18 +02:00
Alex Beregszaszi
f40d1d654d
EVMHost: Add size%192 check to bn128pairing
...
And also refactor resultWithFailure
2022-09-26 21:06:33 +02:00
hrkrshnn
d32661c0af
Added tests for --no-append-metadata
...
- Command line tests
- Documented the standard json
- Changelog
- A Change in SolidityExecutionFramework to prevent flaky gas tests
- A boost test for --no-append-metadata
- Removed an outdated comment
2022-09-26 20:40:34 +02:00
Alex Beregszaszi
c967a621eb
EVMHost: Reduce code duplication in precompiles
2022-09-26 15:38:55 +02:00
Alex Beregszaszi
a260000a16
EVMHost: Make it clear which MockedHost helpers are used
...
And also remove unused helpers.
2022-09-26 02:05:40 +02:00
Alex Beregszaszi
e3c7369413
EVMHost: Simplify some code and dcoument functions
2022-09-26 01:59:52 +02:00
Miles Liu
dad1a56321
Pretty print expected json output of command line tests
2022-09-22 18:49:55 +08:00
Miles Liu
4e929ee145
Fix stripping in CLI tests does not produce correct JSON formatting
2022-09-21 21:25:09 +08:00
Nishant Sachdeva
37597f9e88
Merge pull request #13162 from ethereum/cleanup_helpers_around_errors
...
cleaning up helpers around errors
2022-09-20 20:49:45 +05:30
nishant-sachdeva
eafd7218b7
refactored struct message to use std::variant for _typeOrSeverity
2022-09-20 19:20:43 +05:30
Nikola Matic
1f244cc1b3
Fix Euler tests by pinning v3-periphery
2022-09-20 14:12:57 +02:00
nishant-sachdeva
c8011d8719
Cleaning up helpers around errors
2022-09-19 10:51:14 +05:30
Daniel Kirchner
1fbee8259a
Merge pull request #13464 from ethereum/copying_reference_types
...
Add tests for copying reference types between data locations
2022-09-15 15:44:38 +02:00
Daniel Kirchner
5f63b3ca21
Merge pull request #13519 from ethereum/boost-tests-for-non-delimited-optimizer-sequence
...
Boost tests for non-delimited optimizer sequence
2022-09-14 13:10:03 +02:00
Marenz
692a99f891
yulRun: Add recursion protection
2022-09-14 11:40:23 +02:00
Marenz
d10d967008
yulRun: Fix unexpected return value for call* instructions and add tests
2022-09-14 11:40:08 +02:00
Marenz
b8699e7687
YulRunner: Add support for interactive inspection of the state
2022-09-14 11:40:02 +02:00
Marenz
4b69b5fdc1
YulRunner: Add support for external calls to the same contract
2022-09-14 11:40:02 +02:00
Marenz
53b67334c5
YulRunner: Add support for memoryguard() and literal parameters
2022-09-14 11:40:02 +02:00
Daniel Kirchner
1730e43bf7
Merge pull request #13514 from ethereum/yul-interpreter-create2
...
Fix create2 memory access in yul interpreter.
2022-09-14 11:19:11 +02:00
Nikola Matic
12ea1158bf
Remove std qualifier from string in Metadata tests
2022-09-14 09:12:03 +02:00
Nikola Matic
4a52be8fe7
Boost tests for non-delimited optimizer sequence
2022-09-13 19:39:15 +02:00
Nikola Matic
e37dc8e975
Address review comments
2022-09-13 17:23:31 +02:00
Nikola Matic
feba1bfeff
Rework metadata and cover with tests
2022-09-12 11:13:49 +02:00
Nikola Matic
314a1cc92f
Command line tests and minor touch ups
2022-09-12 11:13:49 +02:00
Nikola Matic
ddf0d784ac
Changelog and docs
2022-09-12 11:13:47 +02:00
Nikola Matic
f6f0d6a360
Make hardcoded parts of the optimizer sequence configurable
2022-09-12 10:57:36 +02:00
Bhargava Shastry
69d9869d21
Fix create2 memory access in yul interpreter.
2022-09-12 09:53:31 +02:00
wechman
0eae9e70ff
Tests for copying structs between data locations
2022-09-09 09:58:41 +02:00
wechman
dfe8fce369
Tests for copying nested array of structs between data locations
2022-09-09 09:42:40 +02:00
wechman
c4d97120bd
Add test for copying elements of nested storage array
2022-09-09 09:42:40 +02:00
Daniel Kirchner
a33da17300
Bugfix and tests.
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-09-08 11:54:14 +02:00
Daniel Kirchner
d5e2925326
broken yul optimizer test
2022-09-07 16:49:58 +02:00
wechman
0262621b9f
fixup! Add test for copying reference types between data locations
2022-09-07 10:45:53 +02:00
wechman
c5d8c5ad05
Add test for copying reference types between data locations
2022-09-07 10:45:53 +02:00
Nikola Matic
71d1209996
Pin hardhat version in bleeps tests
2022-09-06 17:55:23 +02:00
Nikola Matić
b4b5f7b355
Merge pull request #13489 from ethereum/pin-hardhat-version-in-yield-liquidator-tests
...
Pin hardhat version in yield-liquidator tests
2022-09-06 12:49:51 +02:00
Nikola Matic
8c4bbf1f4e
Pin hardhat version in yield-liquidator tests
2022-09-06 11:06:31 +02:00
Nikola Matic
deab2bf37e
Add comment to pinned GP2 hardhat version
2022-09-06 08:10:55 +02:00
Nikola Matic
53059936cc
Pin hardhat version in GP2 external tests
2022-09-05 20:52:46 +02:00
Daniel Kirchner
99f15ff04e
Merge pull request #13481 from ethereum/fix-artifacts-check-in-hardhat-external-tests
...
Fix compiler version check in hardhat artifacts json
2022-09-05 16:03:22 +02:00
Nikola Matic
e5769d784e
Fix compiler version check in hardhat artifacts json
2022-09-05 15:00:53 +02:00
Damian Wechman
6b99162457
Merge pull request #13406 from ethereum/slot_on_reference_fix
...
Fix `.slot` accessing via mapping reference in assembly
2022-09-05 14:00:18 +02:00
Leo
e048ba4d75
Merge pull request #13439 from ethereum/z3_4_8_11_smt_tests
...
Update SMT tests with z3 4.11.0
2022-08-30 12:51:13 +02:00
Leo Alt
16c0838f75
Update docker images and tests
2022-08-30 11:51:59 +02:00
Marenz
f7cc29bec1
Add std:: qualifier to move() calls
2022-08-30 11:12:15 +02:00
Leo Alt
e99e93ff5b
Fix pylint warning
2022-08-29 11:50:29 +02:00
Nikola Matić
7bfec3ba70
Merge pull request #13430 from ethereum/fix-gnosis-test-inconsistent-dependency
...
Fix inconsistent nested dependency in safe-contracts
2022-08-26 17:12:50 +02:00
Nikola Matic
71c3c26b29
Fix inconsistent nested dependency in safe-contracts
2022-08-26 09:40:03 +02:00
Christian Parpart
3fc7debbef
lsp: Code-review fixups.
2022-08-24 16:27:05 +02:00
Christian Parpart
d0854cb485
Applying CI-reported fixes.
2022-08-22 12:49:06 +02:00
Christian Parpart
d31e4dcc0a
lsp: Finishing last missing test wrt complex nested project directory structure and specifying custom includes, while using some (one) of them.
2022-08-22 12:49:06 +02:00
Christian Parpart
122fbc6ff7
Adds include-paths-nested test case.
2022-08-22 12:49:06 +02:00
Christian Parpart
b6ba43234e
lsp: Always load all solidity files from project for analyzing.
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-08-22 12:49:04 +02:00
Mathias L. Baumann
a3de6cd60e
Merge pull request #12762 from ethereum/emptyReturnRevert
...
Optimize ``return(x,0) -> pop(x) return(0,0)`` (and also for ``revert``).
2022-08-22 12:42:48 +02:00
Marenz
1b5332c2b9
Fix spelling mistakes and CI spellcheck job
2022-08-18 14:38:19 +02:00
wechman
cf3bae0839
Fix "slot" access via mapping reference in assembly
2022-08-17 07:53:52 +02:00
Nikola Matić
bb41ddd7ab
Merge pull request #13404 from ethereum/peg-hardhat-ethers-version
...
Peg hardhat-ethers version
2022-08-16 19:43:06 +02:00
Nikola Matic
6b6cfa1795
Peg hardhat-ethers version
2022-08-16 17:52:27 +02:00
Alexander Arlt
ee2c4cddcd
test/cmdlineTests.sh: fix verbosity.
2022-08-15 17:37:08 +02:00
Daniel Kirchner
a9c21863d4
Update tests.
2022-08-15 16:24:10 +02:00
Daniel Kirchner
733b0f63f6
Disable failing chainlink tests.
2022-08-15 15:42:51 +02:00
Daniel Kirchner
e996fe6247
Yul Optimizer: Simplify start offset of zero-length operations.
2022-08-15 15:42:51 +02:00
Matheus Aguiar
2282ea5e56
Added overflow checks after multiplication operation is executed.
2022-08-12 10:18:05 -03:00
Bhargava Shastry
c48be40ab8
Merge pull request #13380 from ethereum/multiple-indirections
...
Permit multiple indirections in coding calldata to and from memory/calldata
2022-08-12 12:20:28 +02:00
Bhargava Shastry
e3ed29d3b3
Permit multiple indirections in coding calldata to and from memory/calldata.
2022-08-12 09:33:06 +02:00
wechman
99ac7e09bb
fixup! Calldata validation tests
2022-08-11 07:55:10 +02:00
wechman
60e7e4a24c
fixup! Calldata validation tests
2022-08-11 07:39:02 +02:00
wechman
123a410795
fixup! Calldata validation tests
2022-08-11 07:38:54 +02:00
wechman
d066dd2bc0
Calldata validation tests
2022-08-11 07:38:28 +02:00
Kamil Śliwak
80f77dc1ad
Merge pull request #13360 from ethereum/update-bugs-by-version-no-error-on-update
...
`update_bugs_by_version.py`: don't fail when the list gets updated
2022-08-10 15:51:41 +02:00
Daniel Kirchner
9a429e2300
Fix ICE on invalid tuple assignments.
2022-08-09 12:41:47 +02:00
Kamil Śliwak
8874627dda
update_bugs_by_version: Don't fail when the list gets updated
2022-08-08 17:29:47 +02:00
Marenz
22c7cd22b9
Fix wrong cleanup when copying from calldata to memory
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-08-08 13:07:16 +02:00
Kamil Śliwak
5b0f4a724a
Merge pull request #13354 from ethereum/fuzz-calldata-to-calldata-coding
...
Place calldata to calldata coder sanity checks.
2022-08-08 12:40:38 +02:00
Bhargava Shastry
53947404e4
Place calldata to calldata coder sanity checks.
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-08-08 11:04:51 +02:00
Nikola Matic
40de2b0442
Add full stops to error messages
2022-08-05 09:52:48 +02:00
Duc Thanh Nguyen
a9e03f5e4a
Fix out-of-range compiler crash for nested tuple assignment involving
...
outer unary tuple
2022-08-04 12:45:46 -04:00
Nikola Matic
1543d23601
Disable failing zeppelin tests
2022-08-04 17:22:42 +02:00
Matheus Aguiar
9acf693aa2
Fixed bad cast when abiEncodeCall receives a tuple from a function.
2022-08-03 18:48:38 -03:00
rodrigobaraglia
95bc553ffc
replace boost/range/for_each with standard for loop over rangev3/view/zip in ContractABIUtils::overwriteParameters
2022-07-27 12:54:42 -03:00
Marenz
a1f6a3da9b
Disable faulty zeppelin tests that detect a wrong revert reason
2022-07-27 15:57:50 +02:00
Duc Thanh Nguyen
5072472917
Fix abi.encodeCall checks
2022-07-25 12:40:54 -04:00
Christian Parpart
5aeb80ec3c
lsp.py: Pass trace option during initialization already.
2022-07-13 16:41:30 +02:00
Christian Parpart
d89008da0a
lsp: Adding test for custom include paths.
2022-07-13 13:57:04 +02:00
Christian Parpart
31227e442e
lsp: Adds support for include paths and have {projectUri}/node_modules added by default.
...
- Factor out FileRepository's path resolving into own public function.
- Fixes sourceUnitNameToUri() path resolving in relation to include paths being used.
- Adding an solAssert().
- adds nother test for include-paths (bad include)
- Fixes a case on Windows there an ill-formed URI was generated.
- Dropping unnecessary if-branch when translating from sourceUnitName to URI.
2022-07-12 15:25:33 +02:00
Christian Parpart
5918955615
lsp: Fixes lsp.py to not bail out when no response is expected.
...
This is required for another PR to support sending notifications as part of the I/O being documented as comments.
2022-07-12 14:35:14 +02:00
Marenz
16b64f3aee
LSP rename
2022-07-08 11:52:45 +02:00
Mathias L. Baumann
b2ac0dada4
Merge pull request #13210 from timweri/display_human_readable_type_name_in_conversion
...
Display human readable type name in error messages
2022-07-06 17:31:53 +02:00
Duc Thanh Nguyen
0a14368315
Display human readable type name in conversion error message
2022-07-06 10:49:51 -04:00
Kamil Śliwak
a53f15f45f
Merge pull request #13240 from derekg/test-fix
...
Fix C++ compilation errors on 32-bit Raspbian due to `unsigned` -> `int` conversion
2022-07-04 22:08:06 +02:00
Mathias L. Baumann
d4e2c2cc89
Merge pull request #13185 from ethereum/functionCall_locations
...
Add location for parameter names in FunctionCall ASTNode
2022-07-04 16:40:45 +02:00
Derek Gottfrid
3f62ab069c
fix test w/ signed issues
2022-07-03 16:33:22 -04:00
Mathias L. Baumann
48669b4bec
Merge pull request #13219 from ethereum/whiskers
...
Add whiskers test for weird case
2022-06-30 17:45:54 +02:00
Alex Beregszaszi
cae1571aa7
Add whiskers test for weird case
2022-06-30 17:00:23 +02:00
William Entriken
2a957413d0
Update naming of Mainnet
2022-06-30 16:47:11 +02:00
Mathias L. Baumann
05496064fe
Merge pull request #13189 from ethereum/fix-externalTests-script
...
Enabled external tests to use relative paths to solc binary.
2022-06-29 19:46:00 +02:00
Matheus Aguiar
5b8a9509fc
Enable each external script to work with solc binary relative path.
2022-06-29 13:55:21 -03:00
Marenz
3a5218d3d5
Add location for parameter names in FunctionCall ASTNode
2022-06-29 18:37:36 +02:00
Marenz
ee710eadd4
Add location for member in MemberAccess ASTNode
2022-06-29 18:37:09 +02:00
Marenz
4d8a14b653
Fix external test ens
...
By using the last known working commit.
Only a temporary measure.
2022-06-29 17:54:35 +02:00
chriseth
b70e064e8f
Merge pull request #13130 from ethereum/check-overflow-after-add-sub-operations
...
Check overflow after add sub operations
2022-06-27 15:33:57 +02:00
Mathias L. Baumann
9d72842635
Merge pull request #13163 from Ruko97/formatNumberReadable_signed_int
...
formatNumberReadable now prints signed integers as well
2022-06-27 12:31:32 +02:00
Ishtiaque Zahid
61febbd249
formatNumberReadable now prints signed integers as well
2022-06-24 07:15:15 +06:00
Matheus Aguiar
4fd5c11af7
Checks for overflow/underflow after add/sub operations.
2022-06-23 14:41:12 -03:00
Mathias L. Baumann
3ed9a38abc
Merge pull request #12966 from a3d4/fix-ice-structtype-nativemembers
...
Fix ICE caused by an immutable struct with mapping
2022-06-23 16:11:28 +02:00
Mathias L. Baumann
70ca05fd73
Merge pull request #13183 from ethereum/identifierPath_locations
...
Add all path locations to the IdentifierPath ASTNode
2022-06-23 14:39:41 +02:00
ywon0925
0ee38c5d54
Rename boostTest.cpp to soltest.cpp, changed CMakeLists.txt accordingly
2022-06-22 21:14:42 +09:00
ywon0925
b78960c604
Add a Catch to handle exception
2022-06-22 21:14:42 +09:00
Daniel Kirchner
d1e382f2a8
Python Z3 proofs of the rules.
2022-06-22 09:26:09 +02:00
Daniel Lupu
8c5f5c7db0
add rules for mod(mul(X, Y), A) & mod(add(X, Y), A)
2022-06-22 09:26:09 +02:00
Marenz
5d2e134378
Add all path locations to the IdentifierPath ASTNode
2022-06-21 14:19:45 +02:00
chriseth
c3ea86612e
Merge pull request #13161 from ethereum/rename-converter
...
Rename ASTJsonConverter to ASTJsonExporter
2022-06-20 14:49:42 +02:00
Daniel Kirchner
14ef22c112
Hot fix for library name updates in isoltest semantics tests.
2022-06-17 16:02:05 +02:00
Marenz
c88c74ceb8
Rename ASTJsonConverter to ASTJsonExporter
...
given that we have an ASTJsonImporter this name makes more sense.
2022-06-16 18:05:51 +02:00
Daniel Kirchner
384bb8b8f7
More gas adjustments.
2022-06-16 15:24:22 +02:00
Daniel Kirchner
9c3a0f11f9
Review suggested test adjustments.
2022-06-16 15:05:21 +02:00
Daniel Kirchner
c3781f7a1c
Gas cost updates.
2022-06-16 15:05:21 +02:00
Daniel Kirchner
1a9e66f4b0
Tests
2022-06-16 15:05:21 +02:00
Nishant Sachdeva
b80f4baae2
Merge pull request #12928 from StrongerXi/expand-purity-check-for-foreign-constants
...
Propagate purity information for member access to foreign pure variables
2022-06-16 17:53:49 +05:30
Ryan
3b2c6de61c
Propagate purity information for member access to foreign pure variables
2022-06-16 17:11:55 +05:30
Midhun07
697821b96b
Disallowed --metadata-literal, --model-checker-show-unproved, --model-checker-div-mod-no-slacks ----metadata-hash=swarm outside of compiler mode
2022-06-16 17:09:33 +05:30
Daniel Kirchner
416c3dc1a4
Merge pull request #13139 from ethereum/lvalueBytesPushWarning
...
Warn about multiple assignments to storage byte pushes.
2022-06-15 14:39:46 +02:00
Daniel Kirchner
16245f7b9b
Warn about multiple assignments to storage byte pushes and fix warnings about multiple storage to storage copies.
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-06-15 13:53:05 +02:00
Samuel Osewa
c21265f9f8
Changed error message for for Unicode character in non-unicode string literal
...
Co-authored-by: Kamil Śliwak <cameel2@gmail.com>
2022-06-15 16:12:24 +05:30
Daniel Kirchner
53c4facf4e
Fix compilation error.
2022-06-15 11:14:50 +02:00
Daniel Kirchner
187f0f070d
Some review suggestions.
2022-06-14 18:27:52 +02:00
Daniel Kirchner
5989f45e9e
Test updates.
2022-06-14 18:26:16 +02:00
Daniel Kirchner
7a84e9c875
Bugfix.
2022-06-14 18:26:16 +02:00
Daniel Kirchner
a27b063c10
Test for buggy behaviour.
2022-06-14 18:26:16 +02:00
Kamil Śliwak
dccc06cc29
Merge pull request #13135 from ethereum/foreign-event-access-revert-and-selector-cleanup
...
Revert access to foreign events and clean up event/error selector tests/docs
2022-06-14 18:14:30 +02:00
Matheus Aguiar
d0d71714a1
Changed sed command in zeppelin.sh to match renamed test file.
2022-06-14 10:32:57 -03:00
Kamil Śliwak
5375dfff9d
Refactor error/event selector tests
...
- Remove redundant semantic tests for error selector
- Consolidate semanticTests/error/ and semanticTests/errors/ dirs
- Make "selector syntax test" for errors and event an actual test for syntax rather than a copy of the same semantic test
2022-06-14 12:04:19 +02:00
Kamil Śliwak
acbdcc3711
Revert the change that made events accessible in other contacts via qualified access
2022-06-14 12:04:14 +02:00
Daniel Kirchner
aa7e4e02bb
A few more tests.
2022-06-10 20:12:09 +02:00
chriseth
51ef6a62da
Fix removal of memory stores in inline assembly blocks.
2022-06-10 17:32:28 +02:00
chriseth
14cdb76e4b
Add failing test
2022-06-10 17:32:28 +02:00
Matheus Aguiar
f15e53ce4d
Added printSelectedOptions and toString as method of CommonOptions and used the former to print settings in failed semanticTests.
2022-06-09 11:19:46 -03:00
Mathias L. Baumann
cf1b9a5241
Merge pull request #13109 from sourabhxyz/develop
...
Fix commandline tests not detecting a snippet with a broken free function definition
2022-06-09 15:31:54 +02:00
Kamil Śliwak
8e67b28e0f
Make the checks that detect if a docs snippet should compile a bit more robust against comments
2022-06-08 21:32:30 +02:00
Kamil Śliwak
0b80a56294
External test for Gnosis Protocol v2
2022-06-08 20:23:39 +02:00
Kamil Śliwak
5c76d8ee77
External test for Chainlink
2022-06-08 20:21:58 +02:00
Ryan
4b7ed2d47a
Display human readable type name in conversion error message
2022-06-08 18:23:51 +05:30
Marenz
9c4ea1dc68
lsp.py: Add missing check for non-interactive
2022-06-07 15:30:14 +02:00
a3d4
423f3d3088
Fix ICE caused by an immutable struct
2022-06-07 10:29:45 +02:00
nishant-sachdeva
61306a6f9d
disabling more zeppline tests that expect reverts with specific errors and they're broken via IR due to Hardhat heuristics.
...
Updated zeppelin.sh
Added cautionary comment for two sed commands that depend on the order of occurrence of the patterns in the files.
L122, and L123 both are referencing the 3rd occurrence of the patterns from their respective files.
This could result in an error in the future when the code is further modified.
2022-06-06 19:15:40 +05:30
Marenz
6c9754a784
lsp.py: Fix various problems with subdirectory edge cases
...
* fix properly path parsing with nested subdirectories
* fix regex to be able to handle `file://..`
* fix not checking all expected diagnostics
* Some extra comments and renames
2022-05-31 16:17:35 +02:00
Matheus Aguiar
3904a0d5ce
Revert workaround introduced in euler tests because it is no longer needed.
...
This reverts commit 98efb46031
.
2022-05-31 09:00:00 -03:00
Kamil Śliwak
1543cfc904
Merge pull request #13067 from ethereum/disable-zeppelin-test-cases-failing-after-relaxing-inlining
...
Disable more zeppelin test cases in which Hardhat's heuristics break after relaxing inlining.
2022-05-25 23:04:05 +02:00
Matheus Aguiar
be12f90775
Disable zeppelin test cases in which Hardhat's heuristics break after relaxing inilining.
...
Also disabled one test because of hardhat issue 2115 (revert due to overflow misdetected).
2022-05-25 16:24:18 -03:00
Kamil Śliwak
c8612078c4
Remove the ethers.js 5.6.2 workaround from all ext tests except for gnosis and uniswap
2022-05-25 16:20:49 +02:00
Kamil Śliwak
6937799587
gnosis: Pin typescript dependency at <= 4.7.0
2022-05-25 15:52:21 +02:00
chriseth
a8dc762850
Merge pull request #12818 from ethereum/benchmark-downloader
...
Benchmark downloader (script + CI job)
2022-05-23 15:41:13 +02:00
Kamil Śliwak
9618cb947d
download_benchmarks: Script for downloading benchmark results from CircleCI
2022-05-23 14:18:29 +02:00
chriseth
77038aa40e
Update test expectations.
2022-05-23 13:37:50 +02:00
Kamil Śliwak
f08d349791
Separate some inlining tests into pre- and post-homestead
2022-05-23 13:37:50 +02:00
Kamil Śliwak
49d5c0a292
Disable external test cases where Hardhat's heuristics break after relaxing inlining
2022-05-23 13:37:36 +02:00
chriseth
f0e43921f7
Merge pull request #12921 from ethereum/add_event_and_error_selector_fields_on_the_line_of_function_selector_field
...
Adding event and error selector fields
2022-05-23 11:34:13 +02:00
chriseth
2bbc9a1445
Merge pull request #13040 from ethereum/returndatacopyOptimizer
...
Do not remove potentially reverting returndatacopy cases.
2022-05-23 11:32:26 +02:00
Matheus Aguiar
98efb46031
Patches issue https://github.com/euler-xyz/euler-contracts/issues/119 .
...
After issue is resolved, this should be reverted/changed.
2022-05-23 11:26:50 +02:00
Daniel Kirchner
9fa907aac2
Do not remove potentially reverting returndatacopy cases.
2022-05-23 11:01:03 +02:00
chriseth
30335c13ff
Merge pull request #13001 from matheusaaguiar/develop
...
Don't add an empty data slot to ABI-encoded empty strings from storage
2022-05-23 10:56:30 +02:00
nishant-sachdeva
d4c06d2b4e
Adding event and error selector fields on the lines of the function selector fields
2022-05-23 10:49:16 +02:00
Kamil Śliwak
3f4d9cb035
Disable more external tests failing due to Hardhat heuristics
2022-05-20 15:59:57 +02:00
Kamil Śliwak
54c5b3de68
Re-enable the optimized IR preset in all external tests
2022-05-20 14:50:57 +02:00
Daniel Kirchner
953bc9fed2
Merge pull request #12983 from ethereum/hint-via-ir
...
Recommend `via-ir` whenever a stack too deep error is encountered.
2022-05-20 12:26:25 +02:00
Daniel Kirchner
a2f768d29a
Remove empty settings.
2022-05-19 20:23:28 +02:00
Daniel Kirchner
58d21f1e9d
Remove // compileViaYul: also
2022-05-19 20:23:28 +02:00
Daniel Kirchner
788dc6b4c8
Remove canEnableViaYul logic and default to compiling also via yul.
2022-05-19 20:23:28 +02:00
Daniel Kirchner
e93ad30e43
Remove obsolete enforce-via-yul logic and CI run.
2022-05-19 20:23:28 +02:00
nishant-sachdeva
7ff4cab0b9
issue has already been fixed. Adding test cases for confirmation
2022-05-19 15:36:59 +05:30
Matheus Aguiar
33ea6a679d
Fixed bug that added a superfluous empty slot for data when encoding an empty string coming from storage.
...
Added tests covering empty string, uninitialized string, emptry string literal, byte arrays and explicit call to `abi.encode`.
2022-05-18 14:50:26 -03:00
Marenz
0234e2aa6b
lsp.py: Fix broken console reading
2022-05-18 14:54:19 +02:00
Marenz
ca3af4b2a2
LSP: Implement semantic tokens
2022-05-18 14:54:16 +02:00
Kamil Śliwak
1164d1b4dd
Switch ENS external test to master branch
2022-05-17 13:02:12 +02:00
Kamil Śliwak
27e5afa23d
Patch external tests for the override data alignment issue until our patches are accepted upstream
2022-05-17 13:02:12 +02:00
chriseth
dfa0bcf760
More strict override check for data locations.
2022-05-17 13:02:12 +02:00
Kamil Śliwak
adf3eaac9b
gnosis: Update upstream repo URL
2022-05-17 10:57:21 +02:00
Kamil Śliwak
c57bc47060
gnosis: Disable newly added tests broken due to Hardhat heuristics
2022-05-17 10:57:21 +02:00
Kamil Śliwak
91177d74ee
perpetual-pools: Remove the ethers@5.6.1 workaround
2022-05-16 20:52:53 +02:00
Kamil Śliwak
e9f1bd00cc
gnosis: Workaround for problems caused by forcing ethers@5.6.1 in external tests
2022-05-16 20:52:30 +02:00
Kamil Śliwak
3bfb79df0c
gnosis: Workaround for getStorageAt() bug in Hardhat 2.9.5
2022-05-13 19:05:21 +02:00