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
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
Kamil Śliwak
b0a986ffff
Allow event definitions at file level
2023-09-15 14:47:40 +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
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
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