Commit Graph

23668 Commits

Author SHA1 Message Date
Anton Bukov
de5af35fca Some fixes for PR comments 2023-10-02 12:46:10 +02:00
Anton Bukov
a522aea3c1 Remove "compileToEwasm" option 2023-07-05 13:15:54 +02:00
Anton Bukov
bcadf3c5de Add nested structs semantic tests for type(S).typehash 2023-07-05 12:35:04 +02:00
Anton Bukov
b65751c030 Fix spaces to tabs 2023-07-05 12:34:40 +02:00
Saw-mon & Natalie
f299f0cb33 moved and created new semantic tests. 2023-07-05 12:34:39 +02:00
Saw-mon & Natalie
283f85b091 more semantic and syntax tests 2023-07-05 12:34:39 +02:00
Saw-mon & Natalie
57d7226d1a fixed syntax test error messages. 2023-07-05 12:34:39 +02:00
Saw-mon & Natalie
c6e73707c7 fixed codestyle. 2023-07-05 12:34:39 +02:00
Saw-mon & Natalie
84918fb01e added syntaxt tests and updated the TypeChecker logic. 2023-07-05 12:34:39 +02:00
Anton Bukov
8023619d5c Fix tests for compile-time checks 2023-07-05 12:34:39 +02:00
Saw-mon & Natalie
7de314bd0d fixed typo 2023-07-05 12:34:39 +02:00
Saw-mon & Natalie
89424875de fix coding style 2023-07-05 12:34:39 +02:00
Saw-mon & Natalie
145dfcf6da fixed EIP-712 encoding type. 2023-07-05 12:34:39 +02:00
Anton Bukov
78981fac52 Update libsolidity/codegen/ir/IRGeneratorForStatements.cpp
Co-authored-by: Saw-mon & Natalie <3140080+Saw-mon-and-Natalie@users.noreply.github.com>
2023-07-05 12:34:39 +02:00
Anton Bukov
a8dc240d42 Update libsolidity/codegen/ir/IRGeneratorForStatements.cpp
Co-authored-by: Saw-mon & Natalie <3140080+Saw-mon-and-Natalie@users.noreply.github.com>
2023-07-05 12:34:39 +02:00
Anton Bukov
7ffbfe6781 Fix assert 2023-07-05 12:34:39 +02:00
Anton Bukov
1d40bb4940 Disallow to use typehash() for structs with nested mappings 2023-07-05 12:34:39 +02:00
Anton Bukov
c4e8d3754d Fix compilation error 2023-07-05 12:34:39 +02:00
Anton Bukov
63210e5a68 Update libsolidity/codegen/ir/IRGeneratorForStatements.cpp
Co-authored-by: Hari <webmail.hari@gmail.com>
2023-07-05 12:34:38 +02:00
Anton Bukov
3efe100179 Update libsolidity/codegen/ir/IRGeneratorForStatements.cpp
Co-authored-by: Hari <webmail.hari@gmail.com>
2023-07-05 12:34:38 +02:00
Anton Bukov
f9b9905c95 Update libsolidity/codegen/ExpressionCompiler.cpp
Co-authored-by: Hari <webmail.hari@gmail.com>
2023-07-05 12:34:38 +02:00
Anton Bukov
422676aef2 Update libsolidity/ast/Types.cpp
Co-authored-by: Hari <webmail.hari@gmail.com>
2023-07-05 12:34:38 +02:00
Anton Bukov
e7bb0b38e1 Rename methods encode* to eip712Encode* 2023-07-05 12:34:38 +02:00
Anton Bukov
4382dc3d2e Simplify type(S).typehash tests 2023-07-05 12:34:38 +02:00
Anton Bukov
9e397f90ad Fix test expected error 2023-07-05 12:34:38 +02:00
Anton Bukov
cebf2d2ca7 Add tests for type(S).typehash 2023-07-05 12:34:38 +02:00
Anton Bukov
8c1a9af76a Fix false positive test for type(S).typehash and update error messages 2023-07-05 12:34:38 +02:00
Anton Bukov
e8a311268d Extend type(X) validation to support structs 2023-07-05 12:34:38 +02:00
Anton Bukov
66c54ef128 Fix wrong failure 2023-07-05 12:34:38 +02:00
Anton Bukov
09e85879d7 Some fixes 2023-07-05 12:34:38 +02:00
Anton Bukov
b267b0e8cd Add missing includes 2023-07-05 12:34:38 +02:00
Anton Bukov
9b4da6bdea Improve typehash() computation for nested structs 2023-07-05 12:34:38 +02:00
Anton Bukov
f9a48b94d4 Handle nested structs encoding for EIP-712 2023-07-05 12:34:38 +02:00
Anton Bukov
54b46ce39e Add native support of EIP-712 struct typehash 2023-07-05 12:34:38 +02:00
Bhargava Shastry
5d7533b540
Merge pull request #14227 from ethereum/update-codegen-fuzzer
Stack optimizer fuzzer: Detect stack-too-deep during optimization
2023-07-03 14:52:27 +02:00
Leo
2f451a186b
Merge pull request #14377 from ethereum/fix-smtlib
SMTChecker: Fix generation of smtlib scripts
2023-06-30 16:58:26 +02:00
Martin Blicha
3599c8c6b9 SMTChecker: Fix generation of smtlib scripts
When both CHC and BMC engines are used, the type of state variable
changes when trusted mode for external calls is used. This is because in
CHC engine, trusted mode means we pack more information into the
symbolic state. In BMC this type is always simple.

However, if BMC is run after CHC, in the current code state variables
are reset (and their declaration dumped into SMT-LIB script) before BMC
resets the type of the state variable.

The proposed solution is to simply reset the variable type before the
first variable of this type is created.
2023-06-30 15:57:51 +02:00
Daniel
30cd1a0fb4
Merge pull request #14370 from ethereum/smt-cleanup
Remove ReasoningBasedSimplifier from libyul
2023-06-28 16:31:13 +02:00
Martin Blicha
29041c8101 Remove ReasoningBasedSimplifier from libyul
Due to a design decision to move away from a bundled SMT solver,
ReasoningBasedSimplifier in its current form cannot be use any longer.
This is a necessary step to allow a unified way to call solvers using
only SMTLIB interface.

Since this optimization pass has always been marked as highly
experimental and never turned on by default, it should be OK to remove
it.
2023-06-28 14:38:36 +02:00
r0qs
c819243374
Merge pull request #14368 from ethereum/gh-built-in-triage-automation
Remove triage workflow in favor of github built-in automation
2023-06-28 12:37:49 +02:00
Kamil Śliwak
3bb492a28d
Merge pull request #14351 from ethereum/ci-deduplicate-base-env-with-anchors
Deduplicate environment variables in CI
2023-06-27 14:43:24 +02:00
Kamil Śliwak
8b64195d4b CI: Make jobs extend base environments instead of redefining them
- Also remove variables that are now redundant.
- Note that this adds new variables for jobs that previously did not have them. This should not affect behavior because we were simply omitting those variables where they were not necessary.
2023-06-27 14:00:28 +02:00
Kamil Śliwak
793adc8106 CI: Define base environments in terms of environments of dicts they depend on 2023-06-27 13:56:36 +02:00
Kamil Śliwak
d12a981ba8 CI: Define aliases for all the base environment dicts 2023-06-27 13:56:36 +02:00
Leo
2cf03e3f0b
Merge pull request #14344 from pgebal/pgebal/fix-ice-internal-type
Fix error in SMTChecker: Use rich indentifier instead of external identifier to encode member access to functions
2023-06-27 12:31:25 +02:00
Bhargava Shastry
87d0c84960 Stack optimizer fuzzer: Detect stack-too-deep during optimization
Co-authored-by: r0qs <deepmarolaest@gmail.com>
2023-06-27 10:32:23 +02:00
r0qs
a4777937ed
Remove triage workflow in favor of github built-in automation 2023-06-26 22:53:29 +02:00
Daniel
34d2383f28
Merge pull request #14281 from alexjorgef/patch-1
Change installation documentation for Arch Linux
2023-06-26 19:42:11 +02:00
Alexandre Ferreira
b70477d795
Change installation documentation for Arch Linux
Correct inline code with double backquotes


Add more information

Add external links to packages;
Add a note to inform that packages don't have official support.
2023-06-26 17:58:03 +01:00
Daniel
1067232bbc
Merge pull request #14354 from ethereum/parallelize-bytecode-compare-presets
Parallelize optimized and unoptimized bytecode reports in CI
2023-06-26 12:57:52 +02:00