Commit Graph
689 Commits
Author SHA1 Message Date
Jason Cobb 6db0d50094 Don't use identifiers starting with an underscore followed by an uppercase letter 2020-02-17 12:44:39 -05:00
Daniel Kirchner 3c9f18b749 Use IRVariable's in IR code generation and implement tuples. 2020-02-12 12:36:14 +01:00
Daniel Kirchner 6abe0a50b1 Define stack slot names in types. 2020-02-12 12:36:14 +01:00
Erik Kundt f2701db0aa Adds documentation for Solidity source upgrader. 2020-02-05 16:52:54 +01:00
chriseth 7cca036f4c Merge pull request #8224 from a3d4/refactor-sourcelocation
Replaced SourceLocation::isEmpty() with isValid() and hasText().
2020-02-04 22:23:51 +01:00
alex 3416c029cf Relaxed assert in AsmJsonImporter::createAsmNode. 2020-02-04 20:37:51 +01:00
Daniel Kirchner d3cbfb0c5c Allow user-defined types as mapping keys in parser and restrict to contracts during type checking. 2020-02-04 17:22:03 +01:00
alex 211227f50b Modified SourceLocation::hasText() to allow empty source. 2020-02-04 04:19:28 +01:00
alex e4b18e85e6 Replaced SourceLocation::isEmpty() with isValid() and hasText().
The function SourceLocation::isEmpty() had somewhat dual role.
Sometimes it indicates that the SourceLocation is invalid.
Sometimes it means that there is no corresponding source text.

Hence the proposal is to replace it with two functions, isValid() and hasText().

I also removed Scanner::sourceAt(). (Do we have a rule of thumb to remove unused code?)

Since hasText() checks that start and end are valid indices for source, I adjusted a couple of tests to avoid empty source strings.
2020-02-03 08:04:21 +01:00
Erik Kundt 4a179056ed Adds JSON import / export for structured documentation. 2020-01-30 18:26:01 +01:00
Erik Kundt ec27c2e507 Introduce AST node for structured documentation. 2020-01-30 18:25:56 +01:00
Erik Kundt 893fb4d05b Implements AST JSON import for function call options. 2020-01-23 21:20:01 +01:00
Mathias Baumann a3f23d3158 Implement new with CREATE2 and function call options. 2020-01-23 21:20:01 +01:00
Daniel Kirchner ee5ff4df4e Clean up visibility via contract name and fix ICE on calling unimplemented base function. 2020-01-16 19:13:04 +01:00
chriseth c017072bac Merge pull request #8013 from ethereum/warnings
Enable more warnings in the build system
2020-01-15 18:00:14 +01:00
Daniel Kirchner c450b18673 Remove remaining instances of new. 2020-01-15 17:25:08 +01:00
Alex Beregszaszi eafcb42be7 Enable more compiler warnings in the build system
"-pedantic -Wno-unknown-pragmas -Wimplicit-fallthrough"
2020-01-15 14:33:27 +00:00
djudjuu e8556fa1b2 Ast-Import from standard-json 2020-01-14 17:15:53 +01:00
Mathias Baumann adc4774d4a ASTJSON: Export evm version 2020-01-14 12:51:21 +01:00
chriseth a4e34b378a Merge pull request #8105 from ethereum/functionTypeRefactor
Add a new Function Type referring to FunctionDefinition's without calling context and use it to allow selector lookup.
2020-01-09 17:15:46 +01:00
Daniel Kirchner 9535c0f520 Introduce FunctionKind::Declaration and allow accessing function signatures via contract name. 2020-01-09 15:40:41 +01:00
Jason Cobb 3726f7448e Remove now-unused abstractAnnotation helper 2020-01-09 08:44:24 -05:00
Jason Cobb dc380f017f Make CallableDeclaration::annotation pure virtual 2020-01-09 08:37:32 -05:00
Jason Cobb dc6c19cafa Add methods for AST annotation implementation 2020-01-09 08:37:32 -05:00
Leonardo Alt a02308cfa5 Replace void cast by maybe_unused 2020-01-09 13:41:30 +01:00
chriseth 5ca3abd7cb Merge pull request #8106 from random-internet-cat/move-contract-kind
Move ContractKind from ContractDefinition to file-scope
2020-01-08 13:06:26 +01:00
Christian Parpart 345f9928ab Library libdevcore renamed to libsolutil. 2020-01-07 15:51:50 +01:00
Christian Parpart 6b23412fae C++ namespace cleanup (except tests). 2020-01-07 15:51:50 +01:00
Jason Cobb 529405deb6 Move ContractKind from ContractDefinition to file-scope 2020-01-07 09:11:29 -05:00
Jason Cobb 6679f92c8a Move all references to scope into annotation 2019-12-19 21:45:16 -05:00
Jason Cobb 69fd185903 Add new annotations for Scopables 2019-12-19 21:45:16 -05:00
Jason Cobb 30b1b39901 Have other annotations subclass DeclarationAnnotation 2019-12-19 21:45:16 -05:00
Jason Cobb be14d5f28d Add DeclarationAnnotation 2019-12-19 21:45:16 -05:00
Jason Cobb bc71f61467 Add ScopableAnnotation 2019-12-19 20:50:43 -05:00
chriseth bdd338a8de Merge pull request #7921 from ghallak/func-selector-ast-json
Add function selector to FunctionDefinition AST JSON
2019-12-16 14:07:35 +01:00
Gaith Hallak 371e6a4801 Add function selector to FunctionDefinition AST JSON 2019-12-16 15:16:54 +03:00
Alex Beregszaszi 4a2a2eb635 Remove Boost <1.55 workaround for multiprecision::msb() 2019-12-13 00:15:15 +00:00
chriseth f1e7bec11d Include public state variables' base functions in the AST. 2019-12-11 15:32:28 +01:00
chriseth 57824566e6 Use proxies. 2019-12-11 15:15:51 +01:00
chriseth 90feb8f72a Move Visibility out of Declaration. 2019-12-11 00:38:59 +01:00
chriseth a66b5ea0ad Fix visitor. 2019-12-10 16:54:04 +01:00
chriseth 152f42c6b2 Make ambigous override checker generic. 2019-12-09 18:41:39 +01:00
Mathias Baumann e999409c89 Sync & update AST exporting according to AST changes 2019-12-09 10:42:24 +00:00
chriseth e061f1e743 Merge remote-tracking branch 'origin/develop' into HEAD 2019-12-05 16:44:26 +01:00
Gaith Hallak 4d90180e24 Support referencing other constants in inline assembly 2019-12-05 13:27:17 +03:00
Daniel Kirchner 8b35918ad0 Replace superFunction by baseFunctions in AST annotations and JSON AST. 2019-12-05 03:33:32 +01:00
chriseth 1ebcc757e1 Merge remote-tracking branch 'origin/develop' into develop_060 2019-11-27 19:14:08 +01:00
chriseth 23181f549e Remove plain new operators from AST. 2019-11-27 18:03:09 +01:00
chriseth 0bb88dabb7 Restrict usage of plain "new". 2019-11-27 17:55:11 +01:00
chriseth b0db64ff5b Merge remote-tracking branch 'origin/develop' into develop_060 2019-11-26 16:19:35 +01:00