Kamil Śliwak
03d09efb68
DataFlowAnalyzer: Fix variable clearing nondeterminism (affecting CSE and bytecode reproducibility) due to set insertions during iteration
2023-09-30 00:06:41 +02:00
Kamil Śliwak
059adba0a1
Repro for variable names affecting CSE
2023-09-30 00:06:41 +02:00
Kamil Śliwak
fe1f9c640e
Merge pull request #14565 from ethereum/viaIR-codegen-import-bug-test
...
Add test for via-ir codegen import bug
2023-09-30 00:04:55 +02:00
r0qs
ab2d3957cb
Add bytecode test for multiple sources compiler at same time
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2023-09-29 23:17:15 +02:00
Kamil Śliwak
2b7ec23edc
Merge pull request #14562 from ethereum/fix-viaIR-codegen-import-bug
...
Fix Via-IR bytecode divergence when compiling multiple files that are already included via imports
2023-09-29 23:01:37 +02:00
r0qs
e3b36f736d
Avoid sorting FunctionDefinitions by AST ID during codegen
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2023-09-26 14:02:00 +02:00
Daniel
cc7a14a61d
Merge pull request #14518 from ethereum/analysis-framework-refactor
...
`AnalysisFramework` refactor
2023-09-19 18:52:57 +02:00
Kamil Śliwak
3fb2f1db88
AnalysisFramework: Move common setup to the framework
2023-09-19 15:56:49 +02:00
Kamil Śliwak
d2bfb2f737
AnalysisFramework: Reimplement parseAnalyseAndReturnError() with runFramework()
2023-09-19 15:56:49 +02:00
Kamil Śliwak
b766268ff3
AnalysisFramework: Get rid of parseAndAnalyse() and success()
...
- There are too many badly named functions doing different things. E.g. SyntaxTest has both this and parseAndAnalyze().
2023-09-19 15:56:49 +02:00
Kamil Śliwak
309a8de530
Refactor AnalysisFramework to share more features between test cases that depend on it
2023-09-19 15:56:49 +02:00
Daniel
dc44f8ad91
Merge pull request #14550 from ethereum/events-at-file-level
...
File-level events
2023-09-18 14:36:14 +02:00
Daniel
586a7c54eb
Merge pull request #14503 from Saw-mon-and-Natalie/fix-test-typo
...
fixed `MSTORE` typo in `libevmasm` tests
2023-09-18 14:30:55 +02:00
Kamil Śliwak
b0a986ffff
Allow event definitions at file level
2023-09-15 14:47:40 +02:00
Nikola Matić
020b59680e
Merge pull request #14552 from ethereum/bump-cmake-and-boost-to-work-with-vs-2022
...
Work around differences in `lexically_normal()` on Boost 1.78+ and bump cmake and boost versions
2023-09-14 20:38:53 +02:00
Kamil Śliwak
5a5e0b5bb3
Merge pull request #14551 from zobront/develop
...
docs: add clarification about post-execution modifier behavior
2023-09-14 20:28:20 +02:00
Zach Obront
6e8b9dff51
docs: add clarification about post execution modifier behavior
2023-09-14 17:58:18 +02:00
Kamil Śliwak
70cf104f19
fixup! Bump cmake to 3.27.4 and boost to 1.83 on Windows to work with Visual Studio 2022
2023-09-14 17:44:08 +02:00
Saw-mon & Natalie
85b1cb9013
fixed MSTORE typo
2023-09-14 16:15:28 +02:00
Kamil Śliwak
0a69758468
FileReader::isPathPrefix(): Work around lexically_normal() no longer preserving UNC slashes on Boost 1.78+ on Windows
2023-09-14 16:12:43 +02:00
Nikola Matic
5d88b74746
install_deps.ps1: Remove downloaded packages and sources after installation
2023-09-14 16:12:43 +02:00
Nikola Matic
73d582d4b3
Bump cmake to 3.27.4 and boost to 1.83 on Windows to work with Visual Studio 2022
2023-09-14 16:12:43 +02:00
Daniel
9bce5f91dc
Merge pull request #14538 from ethereum/experimentalAnalysisBasicInfrastructure
...
New Analysis basic infrastructure
2023-09-13 13:00:56 +02:00
Kamil Śliwak
64a0f62700
Merge pull request #14506 from ethereum/extracted-natspec-json-tests
...
Replace Boost-based Natspec test case with one derived from `SyntaxTest`
2023-09-11 19:28:31 +02:00
Kamil Śliwak
b63a94031f
Generate expectations for moved Natspec syntax tests
2023-09-11 18:06:42 +02:00
Kamil Śliwak
dc68480f72
Move Natspec syntax tests to natspecJSON
2023-09-11 18:06:42 +02:00
Kamil Śliwak
d083925bed
natspecJSON: Generate missing expectations (including errors)
2023-09-11 18:06:42 +02:00
Kamil Śliwak
481c7256cb
natspecJSON: Include version
and kind
fields in expectations where missing
2023-09-11 18:06:42 +02:00
Kamil Śliwak
99bfdf930a
SolidityNatspecJSON: Convert Boost-based test cases into natspectJSON/*.sol tests
2023-09-11 18:06:42 +02:00
Kamil Śliwak
ba019e5a01
SolidityNatspecJSON: Manual conversion of two test cases that would not be handled correctly by the script
...
- dev_multiple_params_mixed_whitespace has whitespace that is not completely preserved
- dev_explicit_inherit_complex is a multi-file test
2023-09-11 18:06:42 +02:00
Kamil Śliwak
1041f071f0
SolidityNatspecJSON: A few tweaks and small fixes before automatic conversion
...
- Expectation order matching the order of contracts in the source
- Typos in test names
- Redundant prefixes in test names
- Wrong 'king' in some expectations (it's not checked by the test suite)
2023-09-11 18:06:42 +02:00
Kamil Śliwak
91cc72bcd4
NatspecJSONTest based on SyntaxTest
2023-09-11 18:06:42 +02:00
Matheus Aguiar
14aed39261
Introduce experimental analysis basic infrastructure
2023-09-11 12:29:44 -03:00
r0qs
34c86d90be
Merge pull request #14556 from ethereum/homebrew-update
...
Upgrade homebrew packages
2023-09-11 13:34:56 +02:00
r0qs
1cb04e84d9
Upgrade homebrew packages
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2023-09-11 12:49:32 +02:00
Daniel
16ae76cad7
Merge pull request #14533 from ethereum/fix-std-namespace-asan
...
Fix missing std qualifier for ASAN
2023-09-05 11:04:13 +02:00
Nikola Matic
ae36323edb
Fix missing std qualifier for ASAN
2023-09-05 08:49:23 +02:00
Daniel
e43968599e
Merge pull request #14468 from ethereum/push0-rematerializer-default-sequence
...
Push0 rematerializer default sequence
2023-09-04 19:27:33 +02:00
Nikola Matic
fdc6699159
Rematerialize zero literals with default cleanup sequence
...
Add unused pruner step to the end of the default cleanup sequence
2023-09-04 15:40:33 +02:00
Daniel
1b8e792eb6
Merge pull request #14530 from ethereum/fix-oz-failing-test
...
Fix failing OZ test
2023-09-04 13:08:47 +02:00
Nikola Matic
76e0d81354
Fix failing OZ test
2023-09-04 12:23:12 +02:00
Nikola Matić
737c1abbdf
Merge pull request #14525 from molecula451/purge-std
...
deprecate using namespace std
2023-09-04 11:02:15 +02:00
Paul
b3230b0bdc
deprecate using namespace std
...
test: updat filereader test
deprecate namespace std
deprecate namespace std
deprecate namespace std
deprecate namespace std
deprecate namespace std
deprecate namespace std
deprecate namespace std
deprecate namespace std
deprecated std namespace
deprecated std namespace
deprecated std namespace
deprecated std namespace
deprecated std namespace
deprecated std namespace
deprecated std namespace
deprecated std namespace
deprecated std namespace
depecrate namespace std
deprecated namespace std
check ci
clean line
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
purge line
pure line
deprecate std
deprecate std
deprecate std
deprecate std
deprecate std
deprecate
deprecate std
bye namespace
2023-09-04 10:12:07 +02:00
Nikola Matić
df03f1412d
Merge pull request #14522 from junaire/purge-using-namespace-std-in-libyul
...
Purge using namespace std in libyul
2023-08-29 12:38:50 +02:00
Jun Zhang
eff410eb74
Purge using namespace std in libyul
...
Signed-off-by: Jun Zhang <jun@junz.org>
2023-08-29 11:51:59 +02:00
Daniel
26912e0ee2
Merge pull request #14515 from junaire/bump-fmtlib-version
...
Bump fmtlib to 9.1.0
2023-08-28 17:24:20 +02:00
Nikola Matić
88b8368932
Merge pull request #14512 from junaire/yul-opt-kill-namespace-std
...
Purge using namespace std from libyul/optimiser
2023-08-28 16:01:03 +02:00
Jun Zhang
c2362c3362
Purge using namespace std from libyul/optimiser
...
Signed-off-by: Jun Zhang <jun@junz.org>
2023-08-28 21:14:56 +08:00
Jun Zhang
2cf23e15d8
Bump fmtlib to 9.1.0
...
In our downstream project, we have two dependencies: solidity and spdlog.
Both of them depend on fmtlib. Unfortunately, the versions of fmtlib they
use do not match, which leads to compilation failure.
The issue arises because spdlog attempts to use solidity's fmtlib, but the
specific version (v8.0.1) has a bug. Ref: https://github.com/gabime/spdlog/issues/2142
While we could keep this change in our own fork, we believe it would
be worthwhile to contribute it back to the upstream since spdlog is a
very popular logging library.
Signed-off-by: Jun Zhang <jun@junz.org>
2023-08-28 13:58:56 +08:00
Nikola Matić
925bfeb24b
Merge pull request #14513 from junaire/yul-backend-namespace-std
...
Purge using namespace std from libyul/backends
2023-08-28 07:56:38 +02:00