Commit Graph
4637 Commits
Author SHA1 Message Date
Kamil Śliwak 0141c52a60 More crash test cases 2023-09-14 17:34:12 +02:00
Kamil Śliwak 206c06f0b3 [TMP] Repros for crashes in semantic tests 2023-09-14 17:34:12 +02:00
Kamil Śliwak 761f5b342f fixup! Type inference draft. 2023-09-14 07:56:36 +02:00
Nikola Matic 319a6c4999 Move around experimental tests
Exclude list for AST JSON tests

Fix type inference shellcheck failure

Disable shellcheck SC2086
2023-09-14 07:56:33 +02:00
Daniel Kirchner d8a36a1d58 Type inference draft. 2023-09-13 22:54:02 +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 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
Nikola Matic ae36323edb Fix missing std qualifier for ASAN 2023-09-05 08:49:23 +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
PaulandNikola Matić 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
Kamil Śliwak c965d6332c SyntaxTest: Allow derived test cases to filter out warnings and infos 2023-08-23 18:00:01 +02:00
Kamil Śliwak 73b9077ab0 SyntaxTest: Default-initialize boolean fields without showing the value
- These get re-initialized in constructor anyway. The only purpose if initializing here is our convention to always initialize primitive types at declaration time. We don't want to have to repeat the defaults though.
2023-08-23 18:00:01 +02:00
Kamil Śliwak 1bb596096b fixup! Change semantic tests to use the proper via IR pipeline, without rerunning on exceptions 2023-08-22 20:43:46 +02:00
Kamil Śliwak a4d777643d fixup! Change semantic tests to use the proper via IR pipeline, without rerunning on exceptions 2023-08-22 20:19:20 +02:00
Kamil Śliwak 38decf05dd Update gas expectations 2023-08-22 20:00:03 +02:00
Kamil Śliwak ffd495bd89 Increase gas in call_options_overload test to make it pass on homestead
- After the test framework changes it fails via Yul on Homestead but passes on all other EVM versions and on legacy. The test itself does not seem to be testing these specific numbers so and increasing them resolves the problem.
2023-08-22 20:00:03 +02:00
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 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
Kamil Śliwak 339053f185 AnalysisFramework.formatErrors(): Fix _withErrorIds flag not having any effect 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