Commit Graph
23561 Commits
Author SHA1 Message Date
Kamil Śliwak 811b8e565b Merge pull request #14288 from ethereum/cli-and-standard-json-equivalence-tests
CLI and Standard JSON equivalence tests
2023-06-07 12:10:38 +02:00
Kamil Śliwak 64ef9d581b Command-line test for equivalence of optimizer options on the CLI and in Standard JSON 2023-06-07 10:29:45 +02:00
Kamil Śliwak e6716e3208 Helpers for removing decorations form solc output 2023-06-07 10:29:45 +02:00
Kamil Śliwak 25c78be73e Give error_message in msg_on_error an initial value to make it compatible with set -u 2023-06-07 10:29:45 +02:00
Kamil Śliwak c7372f3f22 Merge pull request #14268 from ethereum/resurrect-yul-optimizer-cli-options
Resurrect Yul optimizer CLI options
2023-06-07 10:28:16 +02:00
Daniel 09038ce4cb Merge pull request #14249 from ethereum/experimental-stdlib
Experimental standard library
2023-06-06 18:08:34 +02:00
Nikola Matic 47969adf91 Experimental standard library
Change import syntax and cover with tests
2023-06-06 17:16:23 +02:00
Kamil Śliwak 2769bb52f6 Make --optimize-yul work again 2023-06-06 09:54:07 +02:00
Kamil Śliwak 42a068b449 CommandLineParser: Store the state of EVM assembly and Yul optimizer explicitly
- Does not change the meaning of CLI options, just the way we map them to internal variables.
2023-06-06 09:54:07 +02:00
pgebal f1d2eda795 Merge pull request #14116 from pgebal/pgebal/add_option_to_add_bounds_to_unroll_loops_in_bmc
Add optional bounds to unroll loops in BMC model checker
2023-06-05 12:01:08 +02:00
Pawel Gebal f15b826431 Add optional bounds to unroll loops in BMC model checker 2023-06-02 18:32:38 +02:00
Kamil Śliwak dcecf00e30 Merge pull request #14292 from ethereum/command-line-test-docs
Document the command-line tests
2023-06-02 18:28:22 +02:00
Kamil Śliwak f5a531fd71 Merge pull request #14289 from ethereum/script-based-cmdline-tests
Move hard-coded tests out of `cmdlineTests.sh`
2023-06-02 17:30:25 +02:00
Kamil Śliwak 0e48e1251d Document the command-line tests 2023-06-02 16:11:04 +02:00
Kamil Śliwak f397b9a083 cmdlineTests: Add prefixes for temporary files/dirs 2023-06-02 16:10:40 +02:00
Kamil Śliwak 5c5f8e8dad cmdlineTests: Remove superfluous set and temporary dirs 2023-06-02 16:10:40 +02:00
Kamil Śliwak 00c2f511d3 cmdlineTests: Remove superfluous output from script-based tests and adjust the rest 2023-06-02 16:10:40 +02:00
Kamil Śliwak c1df8ed563 cmdlineTests: Remove unnecessary subshells
- Whitespace-only change, separated out to make it easy to diff.
2023-06-02 16:10:40 +02:00
Kamil Śliwak 6b061ba696 cmdlineTests: Extract script-based test out of cmdlineTests.sh
- Just extraction, with as few changes to the code as possible.
2023-06-02 16:10:40 +02:00
Kamil Śliwak dd10334754 cmdlineTests: Support tests that contain a script to run as an alternative to input.* files 2023-06-02 16:09:11 +02:00
Kamil Śliwak 72a384f4fe cmdlineTests: Ensure that leading symbols in names affect the sort order 2023-06-02 16:09:11 +02:00
Kamil Śliwak 4773b0b1e4 Merge pull request #14291 from ethereum/drop-gp2
Disable gp2 tests
2023-06-02 14:08:42 +02:00
Kamil Śliwak 5306838920 Merge pull request #14290 from ethereum/oz-fix
Remove unnecessary line from OZ external test script
2023-06-02 13:02:48 +02:00
r0qs a518310af9 Disable gp2 tests 2023-06-02 12:50:28 +02:00
r0qs 824e59dec2 Remove unnecessary line from OZ external test script 2023-06-02 12:09:53 +02:00
Kamil Śliwak 14d2ae2dfa Merge pull request #14282 from ethereum/fixOpenZeppelinExtTest
Remove sed commands targeting deleted files in openzeppelin external test
2023-05-31 12:17:56 +02:00
Matheus Aguiar d657e77f1e Remove problematic sed commands in openzeppelin external test 2023-05-31 02:11:33 -03:00
Nuno Santos 3eedc635c4 Misspelling and terms inconsistencies (#14280)
* Installing solidity tweeks

* A few more misspells

* More inconsistencies fixed

* Removed contractions according to our guide.
2023-05-30 20:49:25 +01:00
Leo a0933fa80a Merge pull request #14276 from ethereum/smtchecker-fix-ice
SMTChecker: External function call with struct member is not getter
2023-05-30 13:46:35 +02:00
Leo ceab4dfee5 Merge pull request #14269 from blishko/smtchecker-fix-analysis-external-calls
[SMTChecker] Remember verification targets from trusted external calls
2023-05-30 13:45:37 +02:00
Nikola Matić 4449f07df4 Merge pull request #14262 from davidBar-On/issue-14259-help-text-about-standard-input-usage
Fix help text about standard input usage
2023-05-29 15:53:58 +02:00
David Bar-On cf106c44fe Fix issue 14259 - help text about standard input usage 2023-05-29 13:30:39 +02:00
Kamil Śliwak 38468d03f4 Merge pull request #14272 from ethereum/fixInlinerDocs
Fix mistake about default value for inliner setting in docs
2023-05-26 17:02:38 +02:00
Matheus Aguiar 2260c23ce1 Fix mistake about default value for inliner setting 2023-05-26 10:25:26 -03:00
Martin Blicha 8ca453f82e SMTChecker: External function call with struct member is not getter
if a struct has a member that is a function pointer with `external`
attribute, and such a member is called, it is currently incorrectly
treated as a public getter in SMTEncoder.

The proposed fix is to make SMTEncoder::publicGetter more strict in
deciding whether an expression is a public getter.
The added condition, that the access happens on a state variable, is
exactly what is checked later with an assertion that is currently
failing.
2023-05-26 14:23:45 +02:00
Nikola Matić 477b621f2e Merge pull request #14274 from ethereum/enable-access-to-foreign-events 2023-05-26 13:49:13 +02:00
Kamil Śliwak 37506b1a90 Merge pull request #14177 from GiokaMarkella/develop
Add support for Yul ASTs output
2023-05-26 13:25:54 +02:00
Martin Blicha b0419da654 [SMTChecker] Remember verification targets from trusted external calls
Previously, we did not remember trusted external calls for later phase
when we compute possible verification targets for each function.
This led to false negative in cases where verification target can be
violated, but not by calling a public function directly, but only when
it is called as an external function from other function.

The added test cases witnesses this behaviour. The underflow in
`dec` cannot happen in any other way except what the `dec` is called
from `f`.

The same problem did not occur when the functions are called internally,
because for such cases, we have already been remembering these calls in
the callgraph in the CHC engine.
2023-05-26 13:03:44 +02:00
Nikola Matic 5893e099fe Allow qualified access to events from other contracts 2023-05-26 12:52:52 +02:00
GiokaMarkella 28a1abf89a Yul AST output on the CLI and in Standard JSON 2023-05-26 12:35:31 +02:00
Kamil Śliwak bb16f61e1c Merge pull request #14263 from ethereum/gh-auth-token-foundry-cmd
Prefer authenticated request to github api when the token is available
2023-05-26 12:30:11 +02:00
r0qsandKamil Śliwak f09838a03d Prefer authenticated request to github api when the token is available
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2023-05-26 10:56:24 +02:00
Kamil Śliwak 8c7404f639 Merge pull request #14264 from ethereum/remove-leftover-ewasm-bits-in-docs
Remove a few leftover mentions of Ewasm from optimizer docs
2023-05-25 12:25:14 +02:00
Kamil Śliwak 1cc656c550 docs: Remove a few leftover mentions of Ewasm 2023-05-25 11:38:16 +02:00
Kamil Śliwak a089aefc05 Merge pull request #14266 from ethereum/disallow-optimize-yul-and-no-optimize-yul-at-the-same-time
Disallow `--optimize-yul` and `--no-optimize-yul` at the same time
2023-05-25 11:37:38 +02:00
Nikola Matić 6db4f182a5 Merge pull request #14226 from kuzdogan/docs-add-immutable-ref
Mention `immutableReferences` in immutables docs
2023-05-24 20:02:12 +02:00
Kamil Śliwak a11b1c83f0 Disallow using both --optimize-yul and --no-optimize-yul at the same time 2023-05-24 15:54:40 +02:00
Kamil Śliwak b24e4fcbfa Command-line tests for --optimize-yul and --no-optimize-yul used together 2023-05-24 15:53:29 +02:00
Kamil Śliwak 4a1dbdaedb Merge pull request #14261 from ethereum/clean-up-via-ir-equivalence-test
Clean up via-IR equivalence command-line test
2023-05-24 12:16:26 +02:00
Kamil Śliwak 8c5304368d test_via_ir_equivalence(): Simplify by merging the asm loops
- And fix indentation
2023-05-23 15:30:07 +02:00