215 Commits
Author SHA1 Message Date
Mathias Baumann e590a99f39 Detect circular references for library and free functions 2021-03-30 23:06:30 +02:00
chriseth e877e2bba7 Use all referenced errors. 2021-03-30 21:15:46 +02:00
chriseth fb67051467 Revert statement. 2021-03-30 21:15:46 +02:00
chriseth b04b189959 Syntax for custom errors. 2021-03-30 21:15:18 +02:00
chriseth 99fcf62736 Extract referencedDeclaration as helper. 2021-03-24 17:01:50 +01:00
Mathias Baumann e197ebbdd1 Replace TypePointer with Type const* 2021-03-23 11:47: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 b965446182 Catch panic. 2020-12-22 11:08:44 +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 a0a02f2307 Merge remote-tracking branch 'origin/develop' into breaking 2020-11-23 19:28:08 +01:00
Leonardo ae8f484ed4 Merge pull request #10234 from ethereum/smt_named_arguments
[SMTChecker] Support named arguments in function calls
2020-11-20 12:24:51 -01:00
Leonardo Alt e4339b0526 [SMTChecker] Support named arguments in function calls 2020-11-20 11:52:26 -01:00
Alex Beregszaszi 82997fbf5e Change AST::interfaceId() to uint32_t 2020-11-19 23:33:08 +00:00
chriseth 5ffee049fa Merge remote-tracking branch 'origin/develop' into breaking 2020-11-03 14:05:14 +01:00
Leonardo Alt 94e2506132 Fix inherited state vars for BMC 2020-11-02 11:42:39 +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 346fe1c6c5 Constants at file-level. 2020-10-08 18:56:17 +02:00
chriseth 2037b7d6b8 Merge pull request #9820 from ethereum/new-annotation-field-virtual
Add annotation field ``requiresVirtualLookup``
2020-09-29 15:33:54 +02:00
Harikrishnan Mulackal d23aff4cbb Merge pull request #9918 from ethereum/isStateScopeCheck
Make isStateVariable regular scope check.
2020-09-29 09:33:03 +02:00
chriseth cb82d8239c Make isStateVariable regular scope check. 2020-09-28 19:31:54 +02:00
Mathias Baumann 8584c98b6a Add annotation field `requiresVirtualLookup` 2020-09-28 17:36:23 +02:00
a3d4 9b740b03ff Simplify DeclarationRegistrationHelper 2020-09-28 13:21:57 +02:00
Alex Beregszaszi 9aa9962f71 Add ContractDefinition::interfaceId() helper 2020-09-14 20:34:52 +01:00
chriseth 2934a1f037 Assign scopes as a separate step. 2020-09-02 20:45:33 +02:00
chriseth e9f91edc4b Update existing tests. 2020-08-18 11:46:59 +02:00
chriseth 9324fb4f20 Free functions. 2020-08-18 11:46:59 +02:00
chriseth c96e997a3c Fix member lookup for constructor in library. 2020-08-04 10:51:40 +02:00
chriseth 9be5ed1220 Merge remote-tracking branch 'origin/develop' into breaking 2020-07-21 11:35:28 +02:00
chriseth 93c792c696 Remove special treatment of `var`. 2020-07-20 17:22:04 +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 747aeb4999 Assert that visibility of constructor is not queried. 2020-07-07 11:49:44 +02:00
chriseth da36400576 Disallow visibility for constructors. 2020-07-07 11:49:44 +02:00
chriseth f372ba6fea Constructors cannot have calldata parameters. 2020-07-06 16:52:51 +02:00
Mathias Baumann 02328f3bbb Add unit denomination `gwei` 2020-06-24 18:24:56 +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 e5c19d8a2c Replace inContractKind by libraryFunction. 2020-06-09 17:56:58 +02:00
Alexander Arlt af8bb5fb60 Allow natspec comments on state variables. 2020-05-19 11:01:52 -05:00
Erik Kundt 7d37ed4531 Adds structured docs for variable declarations.
- adds natspec generation for state variables.
- exports structured docs for state variables to JSON.
2020-05-19 11:01:52 -05:00
chriseth 2d1e7d9504 Merge pull request #8931 from random-internet-cat/lazy-init
Add LazyInit
2020-05-14 18:54:19 +02:00
Jason Cobb cffd1eaff1 Use LazyInit for ContractDefinition::m_interfaceFunctionList 2020-05-14 10:32:01 -04:00
Jason Cobb 413fa92cee Use LazyInit for ContractDefinition::m_interfaceEvents 2020-05-14 10:29:29 -04:00
chriseth 3872a1f000 Add support for SPDX license identifiers. 2020-05-13 18:16:59 +02:00
hrkrshnn e2e32d372f virtual modifiers (in Abstract contracts) allow empty bodies 2020-04-23 17:26:59 +05:30
chriseth a371910674 Merge pull request #8642 from ethereum/interfaceid
Add support for interfaceId.
2020-04-23 12:24:49 +02:00
Alexander Arlt 3754a86ab2 Add support for interfaceID. 2020-04-16 12:17:40 -05:00
Daniel Kirchner f6d1cee06b Ensure that public callable parameters are valid for calldata. 2020-04-16 17:23:20 +02:00