Alexander Arlt
c5673278a7
Remove EWASM backend.
2023-05-11 10:56:55 -05:00
Daniel Kirchner
75a0c486a8
Adjust gas expectations due to new creation costs.
2023-05-09 18:22:44 +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
Daniel Kirchner
421738b50d
Fix calldata handling during creation in EVMHost.
2023-04-18 12:53:50 +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
chriseth
fac5666dc9
Re-implement unused assign / unused store eliminator.
2023-03-20 13:49:37 +01:00
wechman
aba5ac5e2a
User-defined operators: Tests
2023-02-22 00:40:03 +01:00
Daniel Kirchner
4064116df4
Do not duplicate subassemblies.
...
Add LinkerObject check and more tests
2023-02-20 22:20:45 +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
chriseth
695b250557
Update gas costs.
2023-02-09 10:47:12 +01:00
Matheus Aguiar
2b70b08d5f
Allow library external functions to be bound with using for
2023-02-02 13:39:19 -03: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
Matheus Aguiar
7779b6f352
Forbid private library functions to be attached outside their declaration scope
2023-01-17 16:27:35 -03:00
Daniel
f441e1323a
Merge pull request #13384 from zemse/develop
...
Allow named parameters in mapping types
2023-01-09 17:59:29 +01:00
Pierre Grimaud
b314e1b37d
docs: fix typos
2022-12-25 22:39:50 +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
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
chriseth
5ba8c109f4
Use side-effects of user defined functions in evm code transform.
2022-11-14 21:26:36 +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
nishant-sachdeva
efbd3666a7
added optimization. shl comes out from being distributed over and
2022-11-11 01:16:14 +05:30
Paweł Bylica
4830194383
test: Update test expectations
2022-11-09 10:15:17 +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
Alex Beregszaszi
b74b55198d
Update tests
2022-11-04 10:48:30 +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
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
Alex Beregszaszi
4f07be6348
test: Move hashing algorithm tests to semanticTests
2022-10-21 15:59:47 +02:00
Daniel
2cb618a5c3
Merge pull request #13593 from ethereum/test-selfdestruct
...
Add test for selfdestruct
2022-10-17 17:43:08 +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
Alex Beregszaszi
96168a1438
Add test for selfdestruct
...
Also drop less useful EndToEndTest
2022-10-01 11:45:46 +02:00
Alex Beregszaszi
0357cedb5c
Update tests and include new for create/create2 calculation
2022-09-27 22:31:46 +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
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
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