Commit Graph
61 Commits
Author SHA1 Message Date
Nikola Matic 2a2a9d37ee Purge using namespace std from libsolidity/ast 2023-08-14 14:54:58 +02:00
Nikola Matic 8a41f4ac7e Introduce solidity-next pragma
Exclude pragma experimental error from ANTLR tests

Test for first pragma after non-pragma declaration

Resolve import pragmas

Change pragma name from next to solidity

Add Changelog entries

Address review comments
2023-05-15 19:25:13 +02:00
Marko Veniger 07def48f45 Adds NatSpec to AST for struct definitions. 2023-04-18 13:10:21 +02:00
Christian Parpart be8752b5d3 Adds natspec to AST for enum definition. 2023-04-05 14:58:32 +02:00
Kamil Śliwak 817a57b365 Use std:: prefix with std::forward() as well to satisfy Clang 2023-03-06 18:20:49 +01:00
wechman 9a36438441 User-defined operators: AST 2023-02-22 00:06:17 +01:00
Nikola Matic 83c1f62026 Source location for named mapping keys 2023-01-17 12:25:23 +01:00
fa78e0f3d4 feat: allow named parameters in mapping types
Co-authored-by: Hari <webmail.hari@gmail.com>

test: add parser and abi test cases

docs: add example on using named parameters for mappings

- Add changelog

feat: update antlr grammar to allow named parameters in mappings

fix: prevent conflicting mapping parameter names

ref: change order of mapping initializers

test: update expectations and fix build

test: add more tests

fix: use common error & code for conflicting params

fix: issue with accessing nested mapping

test: add conflicting params tests for more nested levels

Update libsolidity/analysis/DeclarationTypeChecker.cpp

Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>

fix: error reported with the same code twice

test: add more tests for 3 level nested mapping

Address review comments
2022-12-08 11:56:58 +01:00
Marenz f7cc29bec1 Add std:: qualifier to move() calls 2022-08-30 11:12:15 +02:00
Mathias L. Baumann d4e2c2cc89 Merge pull request #13185 from ethereum/functionCall_locations
Add location for parameter names in FunctionCall ASTNode
2022-07-04 16:40:45 +02:00
Marenz 3a5218d3d5 Add location for parameter names in FunctionCall ASTNode 2022-06-29 18:37:36 +02:00
Marenz ee710eadd4 Add location for member in MemberAccess ASTNode 2022-06-29 18:37:09 +02:00
Marenz 5d2e134378 Add all path locations to the IdentifierPath ASTNode 2022-06-21 14:19:45 +02:00
Christian Parpart 4ae43884d0 Apply a better way to annotate unreachability to the C++ compiler. 2022-06-07 16:41:04 +02:00
Kamil Śliwak 539e139555 Add explicit throws after some assertions to work around a spurious warning in GCC 12.1 2022-06-01 20:37:48 +02:00
chriseth 9188519f11 Using for with global binding. 2022-03-14 17:39:14 +01:00
hrkrshnn 672951ccc7 Extend using-for. 2022-03-14 12:33:44 +01:00
Daniel Kirchner 290b1c3a90 Allow memory-safe inline assembly dialect flag. 2022-03-02 17:07:11 +01:00
Kamil Śliwak 7f7107405f Try out the new assertion macro variants with less arguments 2021-10-04 12:05:00 +02:00
hrkrshnn d67391531e Implemented ASTJson import export for UserDefinedValueType
Also added a test.
2021-09-08 21:19:30 +02:00
chriseth ffc5cfd9a5 Remove scanner from compiler stack. 2021-08-03 15:43:17 +02:00
chriseth 01dc77e5a2 Properly assign source names for AST import. 2021-07-14 15:12:10 +02:00
Djordje Mijovic e404b6e7a6 Refactoring yul source locations. 2021-05-04 16:05:23 +02:00
chriseth b552e5aeeb AST import and export for revert statement. 2021-03-30 21:15:46 +02:00
chriseth b04b189959 Syntax for custom errors. 2021-03-30 21:15:18 +02:00
hrkrshnn ef0c4cc39f AST Import: For constructors, a public visibility is ignored. 2021-03-11 10:44:19 +01:00
Christian Parpart 32ba5f5ae7 libsolidity: Extend the AST for named AST nodes in order to get precise locations for names.
The actual SourceLocation on an ASTNode is representing the whole
ASTNode whereas in an LSP (for example) you are also interested in the
SourceLocation of a name of a construct (e.g. variable decarlation, function definition, ...).

This also properly encodes non-existend sources as `-1` in the JSON output (eliminating the use of `numeric_limits<size_t>::max()`).
2021-02-10 18:13:09 +01:00
chriseth 9a5902f9d7 Merge remote-tracking branch 'origin/develop' into breaking 2020-12-02 12:28:02 +01:00
Alex Beregszaszi a22077f736 Rename AsmData -> AST
Also attempt to only include ASTForward where appropriate.
2020-11-25 17:58:02 +00:00
chriseth ce50f05fc1 Merge remote-tracking branch 'origin/develop' into HEAD 2020-10-29 16:44:47 +01:00
Alex Beregszaszi 1ab6340828 Move AsmJsonImporter from libsolidity to libyul
It is next to AsmJsonConverter now and interdependencies are shrunk.
2020-10-29 14:06:34 +00:00
chriseth 527c073bb9 Checked arithmetic by default. 2020-10-19 16:58:37 +02:00
Mathias Baumann 006e5f2e1f Allow path syntax for super constructor calls 2020-10-13 14:32:11 +02:00
Mathias Baumann 0b7b174945 Add AST Node IdentifierPath 2020-10-13 14:32:11 +02:00
chriseth cb82d8239c Make isStateVariable regular scope check. 2020-09-28 19:31:54 +02:00
chriseth 2ff954ec2d Use kind in json AST for free function. 2020-08-18 11:46:59 +02:00
chriseth 9324fb4f20 Free functions. 2020-08-18 11:46:59 +02:00
Alex Beregszaszi 6eb60bc8cd Add check that regular and unicode string literals are well formatted 2020-07-27 18:21:17 +01:00
Alex Beregszaszi 5ecc84e92e Distinguish between stringLiteral and hexStringLiteral in the JSON AST 2020-07-27 10:19:24 +01:00
chriseth 9be5ed1220 Merge remote-tracking branch 'origin/develop' into breaking 2020-07-21 11:35:28 +02:00
Sachin Grover b7adb2aa42 Add SPDX license identifier if not present already in source file
Fixes: #9220
2020-07-17 20:24:12 +05:30
Daniel Kirchner 38c6ecbbe2 Remove finney and szabo denominations. 2020-07-13 18:07:10 +02:00
chriseth da36400576 Disallow visibility for constructors. 2020-07-07 11:49:44 +02:00
chriseth 3e3f9a472f Merge remote-tracking branch 'origin/develop' into breaking 2020-06-30 18:56:51 +02:00
Mathias Baumann 02328f3bbb Add unit denomination `gwei` 2020-06-24 18:24:56 +02:00
chriseth 8155ad2187 Merge remote-tracking branch 'origin/develop' into breaking 2020-06-15 17:11:41 +02:00
Djordje MijovicandKamil Śliwak c6e4943089 Adding fixes for signedness warnings in libsolidity
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2020-06-10 10:41:55 +02:00
chriseth 74b9b094c0 Merge remote-tracking branch 'origin/develop' into HEAD 2020-05-20 17:22:47 +02:00
hrkrshnn 4a001d568e Removed null members from JSON output 2020-05-20 16:56:33 +05:30
Alexander Arlt af8bb5fb60 Allow natspec comments on state variables. 2020-05-19 11:01:52 -05:00