Commit Graph

23865 Commits

Author SHA1 Message Date
Kamil Śliwak
201259d50b [TMP] Remove polymorphicInstance() from class type member types 2023-09-28 21:11:00 +02:00
Kamil Śliwak
bdd2f02c83
Merge pull request #14566 from ethereum/new-analysis-defining-builtins
Defining built-ins in experimental analysis
2023-09-28 21:10:16 +02:00
Kamil Śliwak
0819e31de8 Reject duplicate built-in type definitions 2023-09-28 17:43:16 +02:00
Kamil Śliwak
017771032b Replace hard-coded types with __builtin() 2023-09-28 17:43:16 +02:00
Kamil Śliwak
13abd0c9eb Add Builtin AST node 2023-09-28 17:43:16 +02:00
Kamil Śliwak
8304aca1c1 TypeSystemHelper: Add isPrimitiveType() 2023-09-28 17:43:16 +02:00
Kamil Śliwak
1072f1bd55 Syntax test for built-in types in experimental Solidity. 2023-09-28 17:43:16 +02:00
Kamil Śliwak
271d55cb04 fixup! Type inference draft. 2023-09-28 15:49:00 +02:00
Kamil Śliwak
353d50b0be Distinct identifiers and tokens for integer type and integer class
- Using the same name causes syntax ambiguities. It's also not allowed for user-defined classes and types.
2023-09-28 15:49:00 +02:00
Kamil Śliwak
e5915eac21 fixup! Type inference draft. 2023-09-28 15:49:00 +02:00
Kamil Śliwak
ef4864c576 fixup! Type inference draft. 2023-09-28 15:49:00 +02:00
Kamil Śliwak
ff06778fee fixup! Type inference draft. 2023-09-28 15:49:00 +02:00
Kamil Śliwak
6d43dfbd43 fixup! Type inference draft. 2023-09-28 15:49:00 +02:00
Kamil Śliwak
e3caed0ea4 fixup! Type inference draft. 2023-09-28 15:49:00 +02:00
Kamil Śliwak
1ffd65f089 fixup! Type inference draft. 2023-09-18 18:55:34 +02:00
Kamil Śliwak
6621dc6ba5 fixup! Type inference draft. 2023-09-18 18:55:25 +02:00
Kamil Śliwak
2956345cd4
Merge pull request #14558 from ethereum/new-analysis-type-class-registration-pass
Separate type class registration pass in experimental analysis
2023-09-18 14:07:16 +02:00
Kamil Śliwak
da83b35a71 Separate experimental analysis pass for type class registration 2023-09-14 17:32:51 +02:00
Kamil Śliwak
086c912c65 TypeSystem: make typeClassInfo() public 2023-09-14 17:32:51 +02:00
Kamil Śliwak
9f7764c215 Semantic test for type classes 2023-09-14 17:32:51 +02:00
Kamil Śliwak
acad00f461 fixup! Type inference draft.
Rebase fixes
2023-09-14 07:56:36 +02:00
Kamil Śliwak
0e95ca163c fixup! Type inference draft. 2023-09-14 07:56:36 +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
7c2f5ee171 Remove bogus unused IRVariable implementation (to be redone). 2023-09-13 22:54:10 +02:00
Daniel Kirchner
59ef5919fb Platform fixes. 2023-09-13 22:54:10 +02:00
Daniel Kirchner
5f894722df Add comment. 2023-09-13 22:54:10 +02:00
Daniel Kirchner
fadba0e4b8 error ids 2023-09-13 22:54:10 +02:00
Daniel Kirchner
4fb7e9934e Fix compiler warning. 2023-09-13 22:54:10 +02:00
Daniel Kirchner
5d1d365e2f style fixes 2023-09-13 22:54:10 +02:00
Daniel Kirchner
e4e0472407 Eliminate using namespace std. 2023-09-13 22:54:10 +02:00
Daniel Kirchner
d8a36a1d58 Type inference draft. 2023-09-13 22:54:02 +02:00
Daniel Kirchner
093ec110cf Scanner hack. 2023-09-13 22:39:25 +02:00
Daniel Kirchner
fa815764dd Basic infrastructure. 2023-09-13 22:37:00 +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