Martin Blicha
475cfe2532
Ignore standard error output from solvers
2023-09-05 12:39:20 +02:00
Martin Blicha
d8c1a124e7
Bring back solving with temporary file for Eldarica
2023-09-05 12:39:19 +02:00
Martin Blicha
497ca183b4
Small cleanup
2023-09-05 12:39:19 +02:00
Martin Blicha
1b68b5764d
SMTChecker: Ignore model checking without callback
2023-09-05 12:39:19 +02:00
Martin Blicha
b6326f4d4d
Do not stop reading solver's output after it terminated
2023-09-05 12:39:19 +02:00
Martin Blicha
b8f89fa45d
SMTSolverCommand: Use pipe instead of temporary file for the query
2023-09-05 12:39:19 +02:00
Martin Blicha
342df8a515
Ensure SMT-LIB file is complete
2023-09-05 12:39:19 +02:00
Martin Blicha
d9dc8f475e
Enable resource limit for Z3
2023-09-05 12:39:19 +02:00
Martin Blicha
f4b849972c
Remove smtlib2 solver option
2023-09-05 12:39:17 +02:00
Martin Blicha
72974adb92
Fix check for SMT query in UniversalCallback
2023-09-05 12:37:56 +02:00
Martin Blicha
e7fe310bc2
Remove unnecessary header
2023-09-05 12:37:56 +02:00
Martin Blicha
1e190abf6e
Initial work on unified way to interact with solvers
2023-09-05 12:37:56 +02:00
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
Rodrigo Q. Saramago
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. Saramago
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
Rodrigo Q. Saramago
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 Kirchner
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