Commit Graph
811 Commits
Author SHA1 Message Date
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
Kamil Śliwak 9adbced98e Remove parser error recovery mode 2023-08-22 12:00:11 +02:00
Kamil Śliwak b17757ea17 CompilerStack: Extend inconsistent error sanity check to cover stopAfter: parsing as well 2023-08-21 17:50:41 +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
Kamil Śliwak e8d050a1ce Simplify redundant state check in CompilerStack::analyze() 2023-08-21 17:50:41 +02:00
Nikola Matic f344dc164e Purge using namespace from libsolidity/lsp and parsing 2023-08-16 17:07:52 +02:00
Nikola Matic 342ba0324f Purge using namespace std from libsolidity/interface 2023-08-15 15:45:15 +02:00
Kamil Śliwak 4020552e1d SourceReferenceFormatter: Remove the ineffective _withErrorIds parameter from formatExceptionInformation() 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
r0qs ea7ee3d5fe Fix yul ast ID to 0 instead of 1. 2023-07-28 17:48:35 +02:00
Nikola Matic 964bdc711c Fix ICE when emitting event from another contract 2023-07-21 21:49:09 +02:00
Kamil Śliwak 3ecf968001 Merge pull request #14328 from ethereum/fix-incomplete-ast-in-standard-json-on-analysis-fail
Fix incomplete AST in standard json on analysis fail
2023-06-19 18:26:33 +02:00
Pawel Gebal d4be1d9c2f Add --print-smt flag to output SMTChecker SMTLIB code 2023-06-16 14:04:07 +02:00
Kamil Śliwak 712229a5c6 Fix StandardCompiler returning an incomplete AST in Standard JSON in case of an early exit during analysis 2023-06-15 10:50:04 +02:00
Kamil Śliwak b1a773be2f IRGenerator: Leave IR optimization up to the caller to avoid unnecessarily doing it twice 2023-06-07 19:44:40 +02:00
Kamil Śliwak 25be38905f YulStack: When Yul optimization is not requested, run Yul optimizer with a minimal sequence instead of disabling it 2023-06-07 12:13:38 +02:00
Nikola Matic 47969adf91 Experimental standard library
Change import syntax and cover with tests
2023-06-06 17:16:23 +02:00
Pawel Gebal f15b826431 Add optional bounds to unroll loops in BMC model checker 2023-06-02 18:32:38 +02:00
GiokaMarkella 28a1abf89a Yul AST output on the CLI and in Standard JSON 2023-05-26 12:35:31 +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
Alexander Arlt c5673278a7 Remove EWASM backend. 2023-05-11 10:56:55 -05:00
Alexander Arlt 4837d42361 Add experimental support to import AST via Standard JSON. 2023-05-09 14:07:38 -05:00
a29f77369a Move AST annotation of internal function dispatch IDs to ContractDefinition
Co-authored-by: Daniel <daniel@ekpyron.org>
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
2023-05-06 20:31:27 +02:00
chriseth 1e63615206 Export all events.
Update tests.

Additional tests

Revert changes to the Natspec
2023-05-03 14:08:27 -03:00
Kamil Śliwak f5b2044ed1 Remove unused CompilerStack::m_sourceJsons 2023-04-20 20:01:45 +02:00
Alexander Arlt 611e02c038 Rename assemble() to assembleYul() in CompilerStack and CommandLineInterface 2023-04-20 20:01:45 +02:00
Kamil Śliwak ded9ef17e8 Misc small refactors: Use ranges::views::keys and fmt::format() 2023-04-20 20:01:45 +02:00
Alexander Arlt 2f78e9549a Misc small refactors: Superfluous std::, trailing commas in lists, whitespace, missing breaks, import order 2023-04-20 19:53:48 +02:00
Alex Beregszaszi 3edcfce478 Add warning for EIP-3860 enforced initcode limits 2023-04-15 13:43:05 +02:00
Rodrigo Q. SaramagoandDaniel a0e62bbd3d Annotate function ID of functions that may be called via the internal dispatch.
Co-authored-by: Daniel <daniel@ekpyron.org>
2023-03-20 20:14:41 +01:00
Leo Alt aacbe72079 group unsupported warnings 2023-03-15 17:06:06 +01:00
Leo Alt 21c0f78650 Report safe properties in BMC and CHC 2023-03-09 14:59:32 +01:00
Leo Alt 8d91ccf028 [SMTChecker] Add a new trusted mode which assumes that code that is
available at compile time is trusted.
2023-02-06 17:02:33 +01:00
ef6ff2f055 Adds support for the EVM version "Paris".
Deprecates `block.difficulty` and disallow `difficulty()` in inline assembly for EVM versions >= paris.
The change is due to the renaming introduced by EIP-4399 (see: https://eips.ethereum.org/EIPS/eip-4399).
Introduces `block.prevrandao` in Solidity and `prevrandao()` in inline assembly for EVM versions >= paris.

Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
Co-authored-by: Daniel <daniel@ekpyron.org>
Co-authored-by: matheusaaguiar <95899911+matheusaaguiar@users.noreply.github.com>
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
2023-01-23 18:50:36 +00:00
Daniel eb2f874eac Merge pull request #13733 from ethereum/eofSetting
Add experimental EOF options for CLI and Standard JSON.
2022-11-23 20:37:24 +01:00
Daniel KirchnerandKamil Śliwak bf26d3be5a Add experimental EOF options for CLI and Standard JSON.
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-11-23 19:53:44 +01:00
Leo Alt 24df40de9a Allow running Eldarica from the command line 2022-11-22 21:16:45 +01:00
Duc Thanh Nguyen 4aac4c7bc4 Add Natspec devdoc inheritance support for events 2022-11-08 15:53:10 +01:00
chriseth 08af255658 Merge pull request #13578 from ethereum/imported-source-type-refactoring
[libsolidity] Refactor Compiler Stack imported source type.
2022-10-20 15:27:36 +02:00
Alexander Arlt 0da1ce3a00 [libsolidity] Refactor Compiler Stack imported source type. 2022-10-20 14:30:40 +02:00
hrkrshnn 6854e2b5d6 fix: bytecodeHash cannot be set to non-none for appendCBOR=false
Testing: see `test/cmdlineTests/metadata_append_standard_json_error`

Closes: https://github.com/ethereum/solidity/issues/13628
2022-10-13 02:07:20 +02:00
Kamil Śliwak 53e0a47a1c Merge pull request #13265 from ethereum/no-append-metadata
Add `--no-append-metadata` in CLI and `metadata.append` in JSON
2022-10-04 17:32:22 +02:00
Alex Beregszaszi 725253551e Improve FunctionSelector helpers 2022-09-27 17:58:32 +02:00
hrkrshnn d32661c0af Added tests for --no-append-metadata
- Command line tests
- Documented the standard json
- Changelog
- A Change in SolidityExecutionFramework to prevent flaky gas tests
- A boost test for --no-append-metadata
- Removed an outdated comment
2022-09-26 20:40:34 +02:00
hrkrshnn f96e802e74 Add --no-append-metadata in CLI and metadata.append in JSON
Skips appending metadata to the binary
2022-09-26 20:40:34 +02:00
nishant-sachdeva eafd7218b7 refactored struct message to use std::variant for _typeOrSeverity 2022-09-20 19:20:43 +05:30
nishant-sachdeva c8011d8719 Cleaning up helpers around errors 2022-09-19 10:51:14 +05:30
Nikola Matic e37dc8e975 Address review comments 2022-09-13 17:23:31 +02:00
Nikola Matic feba1bfeff Rework metadata and cover with tests 2022-09-12 11:13:49 +02:00
Nikola Matic 314a1cc92f Command line tests and minor touch ups 2022-09-12 11:13:49 +02:00