Commit Graph

7321 Commits

Author SHA1 Message Date
Daniel Kirchner
b9db435684 Rerun SolidityEndToEndTest.cpp tests on stack errors. 2023-08-22 20:00:03 +02:00
Kamil Śliwak
bc6d10f11d SemanticTest: Add a setting that explicitly states the minimal Yul optimization level that avoids "Stack too deep" 2023-08-22 20:00:00 +02:00
Daniel Kirchner
8e9496eb8b Change semantic tests to use the proper via IR pipeline, without rerunning on exceptions 2023-08-22 19:58:31 +02:00
Kamil Śliwak
9adbced98e Remove parser error recovery mode 2023-08-22 12:00:11 +02:00
Daniel
c96db51013
Merge pull request #14309 from ethereum/astPropertyTests
AST Property tests
2023-08-21 19:21:20 +02:00
Kamil Śliwak
36429e397c Fix ICE when requesting --combined-json outputs other than AST with --stop-after parsing 2023-08-21 17:50:41 +02:00
Kamil Śliwak
a15ef59eec Remove the ability to produce an AST in presence of errors in --error-recovery mode
This reverts commit 7fd7cc1e76.
2023-08-21 17:50:41 +02:00
Matheus Aguiar
969aea6d33 Added new kind of test: check for specific properties of AST 2023-08-21 12:37:40 -03:00
Kamil Śliwak
397a5543a4 fixup! BytesUtils: Don't introduce garbage when formatting byte vectors shorter than expected 2023-08-17 20:45:16 +02:00
Kamil Śliwak
0f5aacefa0 BytesUtils: Don't format parameters shorter than 32 bytes as integers 2023-08-17 20:00:54 +02:00
Kamil Śliwak
368ea01bb2 BytesUtils: Don't introduce garbage when formatting byte vectors shorter than expected 2023-08-17 20:00:44 +02:00
Kamil Śliwak
2baf9d4d82 Put stripPreReleaseWarning() next to withPreamble() 2023-08-17 17:39:27 +02:00
Kamil Śliwak
ec92685bcb Unify preamble handling between AnalysisFramework and SolidityExecutionFramework 2023-08-17 17:39:27 +02:00
Kamil Śliwak
18db62cf41 Unify preamble handling between test cases based on AnalysisFramework 2023-08-17 17:39:27 +02:00
Kamil Śliwak
0c2fce579a Take into account multi-line license comments when adding preamble in test frameworks 2023-08-17 17:39:27 +02:00
Daniel Kirchner
aaba5c408a Remove obsolete main function yul optimiser step. 2023-08-16 17:28:32 +02:00
Kamil Śliwak
339053f185 AnalysisFramework.formatErrors(): Fix _withErrorIds flag not having any effect 2023-08-11 14:15:56 +02:00
Kamil Śliwak
a59fc39f10 Use printErrorInformation() over printExceptionInformation() where possible 2023-08-11 14:15:56 +02:00
Kamil Śliwak
8407c8c615 SourceReferenceFormatter: Support full range of options in formatErrorInformation() 2023-08-11 14:15:56 +02:00
Kamil Śliwak
b7d2c8bb0a SourceReferenceFormatter: Line wrapping and unused includes 2023-08-11 14:15:56 +02:00
Kamil Śliwak
e357b8bc42
Merge pull request #14474 from ethereum/refactor-analysis-framework-error-filtering
Sane error filtering in `AnalysisFramework`
2023-08-07 20:02:45 +02:00
Daniel
0fbc5cc7d3
Merge pull request #14469 from ethereum/push0-rematerializer
Push0 rematerializer
2023-08-07 18:26:08 +02:00
Nikola Matic
96e7b4f46b Rematerialize zero literals 2023-08-07 17:33:16 +02:00
Kamil Śliwak
6d8b1374c5 Use AnalysisFramework's error formatting and filtering features in more test cases 2023-08-07 14:40:34 +02:00
Kamil Śliwak
e42242cd6f AnalysisFramework.formatErrors(): Require providing errors explicitly 2023-08-07 14:40:34 +02:00
Kamil Śliwak
6c1bcb9a81 AnalysisFramework.formatErrors(): Support colored output and error IDs 2023-08-07 14:26:23 +02:00
Kamil Śliwak
6f3a379557 AnalysisFramework: Add filteredErrors() 2023-08-07 14:26:23 +02:00
Kamil Śliwak
e62bc30e9e AnalysisFramework.filterErrors(): Provide default for _includeWarningsAndInfos 2023-08-07 14:26:23 +02:00
Kamil Śliwak
f87bef2431 AnalysisFramework: Make it possible to customize CompilerStack creation 2023-08-07 14:06:16 +02:00
Kamil Śliwak
aecb11eff4 Make better use of virtual functions to customize CommonSyntaxTest in test cases based on it 2023-08-07 14:05:43 +02:00
Pawel Gebal
6574c10f25 SMTChecker: Visit the condition in for and while loops after loop is unrolled 2023-08-03 13:36:41 +02:00
r0qs
ea7ee3d5fe
Fix yul ast ID to 0 instead of 1. 2023-07-28 17:48:35 +02:00
Pawel Gebal
db5baebff8 SMTChecker fix: Do not unroll loop after it completes 2023-07-26 16:31:03 +02:00
Martin Blicha
cdfc19b503 SMTChecker: Bring back counterexample checks in regression tests
Since the default is now to ignore the counterexamples when checking
test output, we bring back counterexample checks in tests where the
counterexample is (mostly) deterministic.
2023-07-25 12:26:21 +02:00
Martin Blicha
2e38798408 SMTChecker: Keep counterexamples on test expectation update 2023-07-24 18:36:18 +02:00
Nikola Matic
964bdc711c Fix ICE when emitting event from another contract 2023-07-21 21:49:09 +02:00
r0qs
dcbd645798
Delete old prb-math.sh script 2023-07-21 20:25:58 +02:00
r0qs
ab4f5f2983
Initial prototype of prb-math external tests using foundry rewritten in python
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2023-07-21 20:25:58 +02:00
r0qs
86602852be Add buglist entry
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2023-07-18 18:15:32 +02:00
Daniel Kirchner
5c7214cbe3 Always generate code for .selector member access. 2023-07-18 18:15:32 +02:00
Nikola Matić
64427412c4
Merge pull request #14347 from ethereum/fixTypeCheckingAbiDecode
Disallow the use of `TypeType` in complex expressions
2023-07-18 18:14:45 +02:00
Nikola Matic
82cb5338a9 Relax delegatecall type restriction plus test 2023-07-18 17:07:13 +02:00
Daniel Kirchner
110e2a656d Restrict mobile types of function types.
Move ternary tests to semanticTests
2023-07-18 14:13:36 +02:00
Matheus Aguiar
4fd5bbf50b Restrict mobileType of TypeType 2023-07-18 12:58:11 +02:00
Matheus Aguiar
f3fc19080a Override mobileType of MagicType to null 2023-07-18 10:56:02 +02:00
Daniel Kirchner
0ab0842c29 Disallow conversions between declaration function types. 2023-07-17 18:33:07 +02:00
Kamil Śliwak
ba3f9dd2a2 FullInliner: Do not include calls whose arguments may have side-effects 2023-07-17 16:40:43 +02:00
Kamil Śliwak
5e1e0e7752 FullInliner: Fix order of arguments of inlined functions 2023-07-17 16:40:43 +02:00
Kamil Śliwak
a07f6c443a Tests for Yul argument evaluation order after optimization 2023-07-17 16:40:43 +02:00
Kamil Śliwak
edceb4d2d1 Allow testing FullInliner without ExpressionSplitter 2023-07-17 16:40:43 +02:00