Matheus Aguiar
5b8a9509fc
Enable each external script to work with solc binary relative path.
2022-06-29 13:55:21 -03:00
Marenz
3a5218d3d5
Add location for parameter names in FunctionCall ASTNode
2022-06-29 18:37:36 +02:00
Marenz
ee710eadd4
Add location for member in MemberAccess ASTNode
2022-06-29 18:37:09 +02:00
Marenz
4d8a14b653
Fix external test ens
...
By using the last known working commit.
Only a temporary measure.
2022-06-29 17:54:35 +02:00
chriseth
b70e064e8f
Merge pull request #13130 from ethereum/check-overflow-after-add-sub-operations
...
Check overflow after add sub operations
2022-06-27 15:33:57 +02:00
Mathias L. Baumann
9d72842635
Merge pull request #13163 from Ruko97/formatNumberReadable_signed_int
...
formatNumberReadable now prints signed integers as well
2022-06-27 12:31:32 +02:00
Ishtiaque Zahid
61febbd249
formatNumberReadable now prints signed integers as well
2022-06-24 07:15:15 +06:00
Matheus Aguiar
4fd5c11af7
Checks for overflow/underflow after add/sub operations.
2022-06-23 14:41:12 -03:00
Mathias L. Baumann
3ed9a38abc
Merge pull request #12966 from a3d4/fix-ice-structtype-nativemembers
...
Fix ICE caused by an immutable struct with mapping
2022-06-23 16:11:28 +02:00
Mathias L. Baumann
70ca05fd73
Merge pull request #13183 from ethereum/identifierPath_locations
...
Add all path locations to the IdentifierPath ASTNode
2022-06-23 14:39:41 +02:00
ywon0925
0ee38c5d54
Rename boostTest.cpp to soltest.cpp, changed CMakeLists.txt accordingly
2022-06-22 21:14:42 +09:00
ywon0925
b78960c604
Add a Catch to handle exception
2022-06-22 21:14:42 +09:00
Daniel Kirchner
d1e382f2a8
Python Z3 proofs of the rules.
2022-06-22 09:26:09 +02:00
Daniel Lupu
8c5f5c7db0
add rules for mod(mul(X, Y), A) & mod(add(X, Y), A)
2022-06-22 09:26:09 +02:00
Marenz
5d2e134378
Add all path locations to the IdentifierPath ASTNode
2022-06-21 14:19:45 +02:00
chriseth
c3ea86612e
Merge pull request #13161 from ethereum/rename-converter
...
Rename ASTJsonConverter to ASTJsonExporter
2022-06-20 14:49:42 +02:00
Daniel Kirchner
14ef22c112
Hot fix for library name updates in isoltest semantics tests.
2022-06-17 16:02:05 +02:00
Marenz
c88c74ceb8
Rename ASTJsonConverter to ASTJsonExporter
...
given that we have an ASTJsonImporter this name makes more sense.
2022-06-16 18:05:51 +02:00
Daniel Kirchner
384bb8b8f7
More gas adjustments.
2022-06-16 15:24:22 +02:00
Daniel Kirchner
9c3a0f11f9
Review suggested test adjustments.
2022-06-16 15:05:21 +02:00
Daniel Kirchner
c3781f7a1c
Gas cost updates.
2022-06-16 15:05:21 +02:00
Daniel Kirchner
1a9e66f4b0
Tests
2022-06-16 15:05:21 +02:00
Nishant Sachdeva
b80f4baae2
Merge pull request #12928 from StrongerXi/expand-purity-check-for-foreign-constants
...
Propagate purity information for member access to foreign pure variables
2022-06-16 17:53:49 +05:30
Ryan
3b2c6de61c
Propagate purity information for member access to foreign pure variables
2022-06-16 17:11:55 +05:30
Midhun07
697821b96b
Disallowed --metadata-literal, --model-checker-show-unproved, --model-checker-div-mod-no-slacks ----metadata-hash=swarm outside of compiler mode
2022-06-16 17:09:33 +05:30
Daniel Kirchner
416c3dc1a4
Merge pull request #13139 from ethereum/lvalueBytesPushWarning
...
Warn about multiple assignments to storage byte pushes.
2022-06-15 14:39:46 +02:00
Daniel Kirchner
16245f7b9b
Warn about multiple assignments to storage byte pushes and fix warnings about multiple storage to storage copies.
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-06-15 13:53:05 +02:00
Samuel Osewa
c21265f9f8
Changed error message for for Unicode character in non-unicode string literal
...
Co-authored-by: Kamil Śliwak <cameel2@gmail.com>
2022-06-15 16:12:24 +05:30
Daniel Kirchner
53c4facf4e
Fix compilation error.
2022-06-15 11:14:50 +02:00
Daniel Kirchner
187f0f070d
Some review suggestions.
2022-06-14 18:27:52 +02:00
Daniel Kirchner
5989f45e9e
Test updates.
2022-06-14 18:26:16 +02:00
Daniel Kirchner
7a84e9c875
Bugfix.
2022-06-14 18:26:16 +02:00
Daniel Kirchner
a27b063c10
Test for buggy behaviour.
2022-06-14 18:26:16 +02:00
Kamil Śliwak
dccc06cc29
Merge pull request #13135 from ethereum/foreign-event-access-revert-and-selector-cleanup
...
Revert access to foreign events and clean up event/error selector tests/docs
2022-06-14 18:14:30 +02:00
Matheus Aguiar
d0d71714a1
Changed sed command in zeppelin.sh to match renamed test file.
2022-06-14 10:32:57 -03:00
Kamil Śliwak
5375dfff9d
Refactor error/event selector tests
...
- Remove redundant semantic tests for error selector
- Consolidate semanticTests/error/ and semanticTests/errors/ dirs
- Make "selector syntax test" for errors and event an actual test for syntax rather than a copy of the same semantic test
2022-06-14 12:04:19 +02:00
Kamil Śliwak
acbdcc3711
Revert the change that made events accessible in other contacts via qualified access
2022-06-14 12:04:14 +02:00
Daniel Kirchner
aa7e4e02bb
A few more tests.
2022-06-10 20:12:09 +02:00
chriseth
51ef6a62da
Fix removal of memory stores in inline assembly blocks.
2022-06-10 17:32:28 +02:00
chriseth
14cdb76e4b
Add failing test
2022-06-10 17:32:28 +02:00
Matheus Aguiar
f15e53ce4d
Added printSelectedOptions and toString as method of CommonOptions and used the former to print settings in failed semanticTests.
2022-06-09 11:19:46 -03:00
Mathias L. Baumann
cf1b9a5241
Merge pull request #13109 from sourabhxyz/develop
...
Fix commandline tests not detecting a snippet with a broken free function definition
2022-06-09 15:31:54 +02:00
Kamil Śliwak
8e67b28e0f
Make the checks that detect if a docs snippet should compile a bit more robust against comments
2022-06-08 21:32:30 +02:00
Kamil Śliwak
0b80a56294
External test for Gnosis Protocol v2
2022-06-08 20:23:39 +02:00
Kamil Śliwak
5c76d8ee77
External test for Chainlink
2022-06-08 20:21:58 +02:00
Ryan
4b7ed2d47a
Display human readable type name in conversion error message
2022-06-08 18:23:51 +05:30
Marenz
9c4ea1dc68
lsp.py: Add missing check for non-interactive
2022-06-07 15:30:14 +02:00
a3d4
423f3d3088
Fix ICE caused by an immutable struct
2022-06-07 10:29:45 +02:00
nishant-sachdeva
61306a6f9d
disabling more zeppline tests that expect reverts with specific errors and they're broken via IR due to Hardhat heuristics.
...
Updated zeppelin.sh
Added cautionary comment for two sed commands that depend on the order of occurrence of the patterns in the files.
L122, and L123 both are referencing the 3rd occurrence of the patterns from their respective files.
This could result in an error in the future when the code is further modified.
2022-06-06 19:15:40 +05:30
Marenz
6c9754a784
lsp.py: Fix various problems with subdirectory edge cases
...
* fix properly path parsing with nested subdirectories
* fix regex to be able to handle `file://..`
* fix not checking all expected diagnostics
* Some extra comments and renames
2022-05-31 16:17:35 +02:00
Matheus Aguiar
3904a0d5ce
Revert workaround introduced in euler tests because it is no longer needed.
...
This reverts commit 98efb46031
.
2022-05-31 09:00:00 -03:00
Kamil Śliwak
1543cfc904
Merge pull request #13067 from ethereum/disable-zeppelin-test-cases-failing-after-relaxing-inlining
...
Disable more zeppelin test cases in which Hardhat's heuristics break after relaxing inlining.
2022-05-25 23:04:05 +02:00
Matheus Aguiar
be12f90775
Disable zeppelin test cases in which Hardhat's heuristics break after relaxing inilining.
...
Also disabled one test because of hardhat issue 2115 (revert due to overflow misdetected).
2022-05-25 16:24:18 -03:00
Kamil Śliwak
c8612078c4
Remove the ethers.js 5.6.2 workaround from all ext tests except for gnosis and uniswap
2022-05-25 16:20:49 +02:00
Kamil Śliwak
6937799587
gnosis: Pin typescript dependency at <= 4.7.0
2022-05-25 15:52:21 +02:00
chriseth
a8dc762850
Merge pull request #12818 from ethereum/benchmark-downloader
...
Benchmark downloader (script + CI job)
2022-05-23 15:41:13 +02:00
Kamil Śliwak
9618cb947d
download_benchmarks: Script for downloading benchmark results from CircleCI
2022-05-23 14:18:29 +02:00
chriseth
77038aa40e
Update test expectations.
2022-05-23 13:37:50 +02:00
Kamil Śliwak
f08d349791
Separate some inlining tests into pre- and post-homestead
2022-05-23 13:37:50 +02:00
Kamil Śliwak
49d5c0a292
Disable external test cases where Hardhat's heuristics break after relaxing inlining
2022-05-23 13:37:36 +02:00
chriseth
f0e43921f7
Merge pull request #12921 from ethereum/add_event_and_error_selector_fields_on_the_line_of_function_selector_field
...
Adding event and error selector fields
2022-05-23 11:34:13 +02:00
chriseth
2bbc9a1445
Merge pull request #13040 from ethereum/returndatacopyOptimizer
...
Do not remove potentially reverting returndatacopy cases.
2022-05-23 11:32:26 +02:00
Matheus Aguiar
98efb46031
Patches issue https://github.com/euler-xyz/euler-contracts/issues/119 .
...
After issue is resolved, this should be reverted/changed.
2022-05-23 11:26:50 +02:00
Daniel Kirchner
9fa907aac2
Do not remove potentially reverting returndatacopy cases.
2022-05-23 11:01:03 +02:00
chriseth
30335c13ff
Merge pull request #13001 from matheusaaguiar/develop
...
Don't add an empty data slot to ABI-encoded empty strings from storage
2022-05-23 10:56:30 +02:00
nishant-sachdeva
d4c06d2b4e
Adding event and error selector fields on the lines of the function selector fields
2022-05-23 10:49:16 +02:00
Kamil Śliwak
3f4d9cb035
Disable more external tests failing due to Hardhat heuristics
2022-05-20 15:59:57 +02:00
Kamil Śliwak
54c5b3de68
Re-enable the optimized IR preset in all external tests
2022-05-20 14:50:57 +02:00
Daniel Kirchner
953bc9fed2
Merge pull request #12983 from ethereum/hint-via-ir
...
Recommend `via-ir` whenever a stack too deep error is encountered.
2022-05-20 12:26:25 +02:00
Daniel Kirchner
a2f768d29a
Remove empty settings.
2022-05-19 20:23:28 +02:00
Daniel Kirchner
58d21f1e9d
Remove // compileViaYul: also
2022-05-19 20:23:28 +02:00
Daniel Kirchner
788dc6b4c8
Remove canEnableViaYul logic and default to compiling also via yul.
2022-05-19 20:23:28 +02:00
Daniel Kirchner
e93ad30e43
Remove obsolete enforce-via-yul logic and CI run.
2022-05-19 20:23:28 +02:00
nishant-sachdeva
7ff4cab0b9
issue has already been fixed. Adding test cases for confirmation
2022-05-19 15:36:59 +05:30
Matheus Aguiar
33ea6a679d
Fixed bug that added a superfluous empty slot for data when encoding an empty string coming from storage.
...
Added tests covering empty string, uninitialized string, emptry string literal, byte arrays and explicit call to `abi.encode`.
2022-05-18 14:50:26 -03:00
Marenz
0234e2aa6b
lsp.py: Fix broken console reading
2022-05-18 14:54:19 +02:00
Marenz
ca3af4b2a2
LSP: Implement semantic tokens
2022-05-18 14:54:16 +02:00
Kamil Śliwak
1164d1b4dd
Switch ENS external test to master branch
2022-05-17 13:02:12 +02:00
Kamil Śliwak
27e5afa23d
Patch external tests for the override data alignment issue until our patches are accepted upstream
2022-05-17 13:02:12 +02:00
chriseth
dfa0bcf760
More strict override check for data locations.
2022-05-17 13:02:12 +02:00
Kamil Śliwak
adf3eaac9b
gnosis: Update upstream repo URL
2022-05-17 10:57:21 +02:00
Kamil Śliwak
c57bc47060
gnosis: Disable newly added tests broken due to Hardhat heuristics
2022-05-17 10:57:21 +02:00
Kamil Śliwak
91177d74ee
perpetual-pools: Remove the ethers@5.6.1 workaround
2022-05-16 20:52:53 +02:00
Kamil Śliwak
e9f1bd00cc
gnosis: Workaround for problems caused by forcing ethers@5.6.1 in external tests
2022-05-16 20:52:30 +02:00
Kamil Śliwak
3bfb79df0c
gnosis: Workaround for getStorageAt() bug in Hardhat 2.9.5
2022-05-13 19:05:21 +02:00
Daniel Kirchner
12ee9aed50
Merge pull request #13013 from ethereum/revert-disallow-returndatacopy-in-pure-functions
...
Revert "Disallow RETURNDATASIZE and RETURNDATACOPY in inline assembly blocks in pure functions"
2022-05-13 18:52:37 +02:00
Leo Alt
6a126f6ccb
Update tests and hashes for z3 4.8.17
2022-05-13 15:25:10 +02:00
Matheus Aguiar
35661479b6
Revert "Disallow RETURNDATASIZE and RETURNDATACOPY in inline assembly blocks in pure functions"
...
This reverts commit f567eb1fb2
.
Correcting Bugfixes section of Changelog.
2022-05-13 08:35:21 -03:00
Daniel Kirchner
aafda389ea
Merge pull request #12907 from ethereum/calldataReencodeValidationBug
...
Calldatasize-check during ABI encoding from calldata values with nested dynamic arrays.
2022-05-12 17:56:44 +02:00
Daniel Kirchner
352a3c5f4b
Bug list entry, changelog entry and tests.
2022-05-12 13:08:30 +02:00
Leo Alt
cbaba6f913
update tests
2022-05-11 20:02:31 +02:00
Daniel Kirchner
d3a837b340
Bugfix.
2022-05-11 18:17:47 +02:00
Daniel Kirchner
d92ed3fd29
Test case for the buggy behaviour.
2022-05-11 18:17:47 +02:00
Daniel Kirchner
cbf9a4f1ed
Add bogus return to switch.
2022-05-11 13:58:06 +02:00
Kamil Śliwak
0e0d1972f9
Disable non-deterministic counterexamples in some SMT tests
...
- The counterexamples sometimes do appear and the tests fail.
2022-05-10 12:48:01 +02:00
Marenz
893122eb89
lsp.py: Support subdirectories
2022-05-09 14:54:55 +02:00
Marenz
02dfeb5427
lsp.py: Trigger fatal error when importing outside of test dir
2022-05-09 14:22:23 +02:00
Christian Parpart
e8d07772d9
lsp.py: Port to support running on Windows & adapt to changes due to prior merged PR.
...
- lsp.py: Fixes invalid-syntax by Python interpreter on Windows CI (older Python version).
- lsp.py: Savely strip CRLF from right side of the string, ignoring accidental multiple occurrences of \r (such as \r\r\n).
- lsp.py: Fixes reading single character from stdin (wrt. Windows platform).
- lsp.py: Adds header line reading to I/O tracing (useful for debugging).
- lsp.py: When running the tests on Windows, don't care test file content's newlines but simply expect LFs (instead of CRLF for example).
- Apply pylint notes.
- Fixing use of @functools.lru_cache for older python versions (CircleCI Windows)
2022-05-09 11:37:11 +02:00
Christian Parpart
c2f245b40a
Fixes to lsp.py with respect to Windows drive-letter paths in URI.
2022-05-09 11:37:11 +02:00
hrkrshnn
5ae17c8e65
Recommend via-ir
whenever a stack too deep error is encountered.
2022-05-05 19:22:03 +02:00
Leo Alt
201c6c6819
fix smt flaky test
2022-05-05 11:38:16 +02:00
Leo Alt
cba3d18f66
adjust for osx nondeterminism
2022-05-04 19:04:54 +02:00
Leo Alt
4fd7de36f1
update smt tests z3 4.8.16
2022-05-03 14:23:27 +02:00
chriseth
df29ea72f0
Merge pull request #12836 from ethereum/fixUsingGlobal
...
Fix using global with libraries.
2022-05-02 12:41:34 +02:00
chriseth
505fa7763f
Fix checks for "using for ... global" for libraries.
2022-05-02 12:40:56 +02:00
Alexey Shekhirin
cb24e5d545
fix(parser): error for unexpected token
2022-04-29 16:13:04 +04:00
chriseth
d55b84ff63
Merge pull request #12861 from ethereum/disallow-returndatacopy-in-pure-functions
...
Disallow RETURNDATACOPY and RETURNDATASIZE in inline assembly in pure functions
2022-04-28 13:15:04 +02:00
Christian Parpart
fbecdbe76d
Merge pull request #12798 from ethereum/lsp-tests-expectations
...
LSP.py: Implement expectations directly in the test files
2022-04-25 15:27:57 +02:00
Kamil Śliwak
8e085432bb
External test for Brink
2022-04-13 13:43:48 +02:00
Kamil Śliwak
e30d0a6199
externalTests: Allow adding extra settings to presets
2022-04-13 13:43:48 +02:00
Marenz
afd9feead4
LSP.py: Implement simple send/respond framework
2022-04-13 13:22:05 +02:00
Leo Alt
f9fa76c9d3
smt encode call
2022-04-11 12:19:41 +02:00
Joshua Quinones
e1a59397c6
Renamed AssemblyStack to YulStack
...
All files, references, variables, comments, etc. were renamed to YulStack.
2022-04-08 20:28:55 +02:00
Kamil Śliwak
f567eb1fb2
Disallow RETURNDATASIZE and RETURNDATACOPY in inline assembly blocks in pure functions
2022-04-08 14:48:35 +02:00
Kamil Śliwak
fb7c969ce8
Tests for assembly instructions allowed with mutable/view/pure functions
2022-04-08 14:47:32 +02:00
Christian Parpart
e74f03056c
Merge pull request #12283 from ethereum/soltest-graceful-error-handling
...
Graceful error handling in soltest/isoltest + improved soltestAssert()
2022-04-07 13:12:43 +02:00
Daniel Kirchner
52f5ffd876
Merge pull request #12804 from ethereum/benchmark-differ
...
Benchmark differ
2022-04-07 09:24:01 +02:00
Kamil Śliwak
b3048ccf07
Use EXIT_FAILURE and EXIT_SUCCESS constants in exit() and when returning from main()
2022-04-06 22:27:08 +02:00
Kamil Śliwak
7c83559881
soltest: Handle CLI validation errors gracefully
2022-04-06 22:26:21 +02:00
Kamil Śliwak
cf6704ae06
isoltest: Do not return an error code from --help
2022-04-06 22:26:21 +02:00
Kamil Śliwak
7bace8d25d
soltest: Don't assume that parse() can never return false
2022-04-06 22:26:21 +02:00
Kamil Śliwak
ed8403f456
isoltest: Handle parsing errors differently from unexpected exceptions
2022-04-06 22:26:21 +02:00
Kamil Śliwak
0bb885dab2
Bring soltestAssert() up to date with solAssert()
...
- Allow omitting description.
- Provide a default description.
- Use a custom exception type derived from util::Exception rather than std::exception.
2022-04-06 22:26:10 +02:00
Daniel Kirchner
c71d0aec83
Merge pull request #12898 from ethereum/via-ir-equivalence-tests
...
Create split_on_empty_lines_into_numbered_files function in scripts/common.sh
2022-04-06 13:16:24 +02:00
wechman
4d8a34370e
Create split_on_empty_lines_into_numbered_files function in scripts/common.sh
2022-04-06 07:26:18 +02:00
Ryan
3a17274691
Improve error message for static array with size too large
2022-04-05 17:36:37 +02:00
Kamil Śliwak
8c9856c52c
benchmark_diff: Add table mode with support for json, console and markdown output
2022-04-05 15:43:18 +02:00
Kamil Śliwak
ee5e878ad7
benchmark_diff: A Python script for diffing summarized benchmarks from external tests
2022-04-05 15:40:28 +02:00
Damian Wechman
d0bd365d2c
Merge pull request #12179 from akali/pretty-json
...
Set handlers use unified jsonPrint with prettifier if needed
2022-04-05 07:05:53 +02:00
Daniel Kirchner
fd763fa6ad
Merge pull request #12851 from ethereum/via-ir-equivalence-tests
...
Tests for the equivalence of one and two-stage compilation via IR ports multi-file contracts
2022-04-04 20:19:27 +02:00
Aisultan Kali
96376264e8
Set handlers use unified jsonPrint with prettifier if needed
2022-04-04 20:17:11 +02:00
Kamil Śliwak
1bc1f8bdbb
Merge pull request #12835 from dtedesco1/develop
...
Fix MultiSigWallet.sol order of functions
2022-04-04 17:37:28 +02:00
Kamil Śliwak
c06308146a
Merge pull request #12828 from ethereum/errorForUnary
...
Use error message for unary operators.
2022-04-04 17:13:28 +02:00
dtedesco1
2fabb3db8f
attempt rebase, fix free function, fix check errors
2022-04-04 22:49:12 +08:00
Kamil Śliwak
c7222044a2
externalTests.sh: Fix broken ${} syntax in the script
2022-04-04 14:16:42 +02:00
chriseth
755e043a6d
Use error message for unary operators.
2022-04-04 16:53:36 +05:30
wechman
1e7688e8a1
Tests for the equivalence of one and two-stage compilation via IR supports multi-file contracts
2022-04-04 11:09:43 +02:00
Kamil Śliwak
73443c0ada
elementfi: Switch all presets to compile-only
2022-04-01 23:06:21 +02:00
Kamil Śliwak
5ef0048d85
zeppelin: Disable the newly added Polygon-Child test, failing via IR due to Hardhat heuristics
2022-04-01 23:06:21 +02:00
Kamil Śliwak
b445e7e74c
Revert "perpetual-pools: Use Hardhat 2.8.4 to work around @openzeppelin/hardhat-upgrades's problem with parallel compilation on Hardhat 2.9.0"
...
This reverts commit 30008465bf
.
2022-03-28 19:51:46 +02:00
Kamil Śliwak
34c06c27a5
Downgrade ethers.js to 5.6.1 in ens, gnosis, euler, perpetual-pools and uniswap external tests
2022-03-28 17:56:30 +02:00
nishant-sachdeva
4c6066bfad
typeCheckAbiEncodeCallFunction should type check the arguments on functionPointerType->asExternallyCallableFunction instead of teh plain function type
2022-03-24 18:53:46 +05:30
Alexander Arlt
1a0988e503
libevmasm: refactor asm-json export & add support for source list.
2022-03-23 15:58:07 -05:00
Christian Parpart
13a4c79a9b
lsp.py: Adds --fail-fast (-f) to terminate early on first failure.
2022-03-23 17:34:04 +01:00
Marenz
0bf674b442
LSP test: Minor refactoring and better exception reporting
2022-03-21 13:23:02 +01:00
chriseth
430ecb6e16
Merge pull request #12795 from ethereum/morePopRemovalInPeepholeOptimizer
...
More pop removal in peephole optimizer.
2022-03-17 12:22:48 +01:00
chriseth
af86a80536
Merge pull request #12796 from ethereum/refactorStackCompressor
...
Refactor stack compressor
2022-03-16 16:36:41 +01:00
Daniel Kirchner
4b9c01752d
Test updates.
2022-03-16 15:34:38 +01:00
chriseth
75abe92eb2
Refactor stack compressor.
2022-03-15 21:28:47 +01:00
Daniel Kirchner
5cd98006d4
Fill in junk in stack layouts on terminating control flow paths.
2022-03-15 18:36:55 +01:00
Daniel Kirchner
b6cd3e154c
Test case for current behaviour.
2022-03-15 18:36:30 +01:00
chriseth
5afa2adec2
Merge pull request #12775 from ethereum/refactorDataFlowAnalyzer
...
Refactor data flow analyzer state access.
2022-03-15 15:52:40 +01:00
Daniel Kirchner
8cb01a9953
Fix and updated test.
2022-03-15 10:23:09 +01:00
Daniel Kirchner
db27051024
Test for old behaviour.
2022-03-15 10:23:09 +01:00
chriseth
eab4ca906c
Refactor data flow analyzer state access.
2022-03-14 19:32:33 +01:00
chriseth
e154d43176
Merge pull request #12288 from ethereum/exportUsing
...
Using global
2022-03-14 18:57:26 +01:00
chriseth
9188519f11
Using for with global binding.
2022-03-14 17:39:14 +01:00
Bhargava Shastry
e19c366532
Merge pull request #12789 from ethereum/yulFuzzerCustomMutation
...
Permit control flow mutations in global scope of a Yul program.
2022-03-14 16:23:18 +01:00
chriseth
7f360e61fc
Merge pull request #12781 from ethereum/fixImportDirectiveVisits
...
Fix import directive visits in type checker and view pure checker.
2022-03-14 15:35:37 +01:00
chriseth
3d8fc6b126
Merge pull request #12760 from ethereum/viaIRNonExperimental
...
Mark viaIR code generation as non-experimental.
2022-03-14 15:30:15 +01:00
Bhargava Shastry
e0d9dec874
Permit control flow mutations in global scope of a Yul program.
2022-03-14 15:04:32 +01:00
Daniel Kirchner
0f1a63c3fa
Fix import directive visits in type checker and view pure checker.
2022-03-14 14:53:06 +01:00
Daniel Kirchner
0172f61340
No longer mark Yul as experimental.
2022-03-14 14:48:01 +01:00
Daniel Kirchner
e58c0b561d
Mark viaIR code generation as non-experimental.
2022-03-14 14:48:00 +01:00
wechman
8a254b7a7f
Use sol file to validate test variants
2022-03-14 14:21:30 +01:00
wechman
4c1224e3bf
Generate ASTJSONTest variants only if a file with expected result exists
2022-03-14 14:21:30 +01:00
wechman
371a531381
Add "fail after parsing" scenario to ASTJSON tests
2022-03-14 14:21:30 +01:00
wechman
f431c6f058
Support compilation fail scenarios in ASTJSON tests
2022-03-14 14:21:06 +01:00
wechman
38639417e1
Non-fatal erros do not stop ASTJSON test execution
2022-03-14 14:21:06 +01:00
wechman
5f7ff667b9
Fix syntax errors in ASTJSON tests
2022-03-14 14:21:06 +01:00
wechman
d609409624
Add not_existing_import.json to ASTJSON tests
2022-03-14 14:21:06 +01:00
chriseth
3f6beaa0ad
Merge pull request #12121 from ethereum/extend-using-statement
...
Extend using statement
2022-03-14 14:10:16 +01:00
hrkrshnn
672951ccc7
Extend using-for.
2022-03-14 12:33:44 +01:00
Christian Parpart
2b2f8acc12
LSP: Implements goto-definition.
2022-03-14 11:59:41 +01:00
chriseth
60463cfd11
Merge pull request #12716 from ethereum/set-c-locale
...
Don't set locale used by C++ stdlib to the value from `LC_ALL` env variable even if it's valid
2022-03-14 10:38:19 +01:00
nishant-sachdeva
b7a9daa2f8
Generate warning when rational numbers are converted to their mobile type without explicit requests
2022-03-14 14:04:46 +05:30
Kamil Śliwak
2d834eaf67
A script and CI job for testing the compiler with different locales
2022-03-14 09:08:01 +01:00
Daniel Kirchner
26963775fe
Merge pull request #12736 from ethereum/reenable-tests-via-ir-in-ext-tests
...
Re-enable running tests via IR in external tests in cases where they don't pass due to Hardhat heuristics
2022-03-11 13:44:55 +01:00
Daniel Kirchner
09f667948b
Merge pull request #12746 from tfire/fix/remove-namespace-ast-annotations
...
Remove use of `using namespace` in header file
2022-03-11 12:49:13 +01:00
Nishant Sachdeva
1827df8a2d
Merge pull request #12779 from nishant-sachdeva/distinguish_different_types_in_error_messages_from_abiEncodecall
...
Error messages from abi encodecall are giving more details about the types of the involved variables
2022-03-11 16:50:45 +05:30
Daniel Kirchner
c13e611e98
Merge pull request #12768 from ethereum/euler-timeout-fix-attempt-2
...
Euler timeout fix: switch to TEST_TIMEOUT variable
2022-03-11 12:04:05 +01:00
nishant-sachdeva
624d2d3968
Error messages from abi encodecall are giving more details about the types of the involved variables
2022-03-11 16:14:55 +05:30
Tyler
3357567453
Fix CommonSyntaxTest.cpp and others
2022-03-10 18:16:12 -05:00
Tyler
1c58b91075
Merge branch 'develop' of github.com:tfire/solidity into fix/remove-namespace-ast-annotations
2022-03-10 17:39:29 -05:00
Tyler
1653b6c5b7
more qualifying
2022-03-10 17:36:46 -05:00
chriseth
4f02be110c
Unused store eliminator.
2022-03-10 18:25:28 +01:00
Kamil Śliwak
b5caa77482
euler: Use project's own TEST_TIMEOUT var for changing the timeout instead of mocha settings
2022-03-10 14:52:51 +01:00
chriseth
b3fe042884
Optimize eq iszero jumpi to xor jumpi and remove double jump.
2022-03-10 14:41:41 +01:00
Kamil Śliwak
e9f3f9361d
Re-enable running tests in external tests via IR in cases where they don't pass due to Hardhat heuristics
2022-03-10 14:13:00 +01:00
Daniel Kirchner
794752c649
Merge pull request #12765 from ethereum/euler-timeout-fix
...
Increase Hardhat timeout in Euler ext test
2022-03-10 13:15:59 +01:00
chriseth
6ab31420af
Remove unneeded header files.
2022-03-10 09:55:05 +01:00
chriseth
eff76f0f82
Merge pull request #12195 from ethereum/update-gnosis-ext-test
...
Run GnosisSafe external tests with Hardhat and directly on upstream
2022-03-10 08:42:11 +01:00
Tyler
047034544e
Merge branch 'develop' of github.com:tfire/solidity into fix/remove-namespace-ast-annotations
2022-03-09 18:55:22 -05:00
Kamil Śliwak
9ef600e572
euler: Override Hardhat test timeout
2022-03-09 20:37:08 +01:00
Kamil Śliwak
304c3984ad
Update gnosis external test to use upstream directly and use Hardhat
2022-03-09 19:57:16 +01:00
Kamil Śliwak
bebdcccacd
Merge pull request #12764 from ethereum/elementfi-disable-flaky-mockerc20yearnvault-tests
...
Disable flaky ElementFi tests in `mockERC20YearnVaultTest`
2022-03-09 19:55:05 +01:00
Kamil Śliwak
68bdb7f2e0
Disable flaky ElementFi tests
2022-03-09 18:58:02 +01:00
Daniel Kirchner
e7a3814977
Unit test.
2022-03-09 17:53:28 +01:00
Daniel Kirchner
e0c837b33b
Remove isCreation flag from OptimiserSettings.
2022-03-09 17:53:28 +01:00
Daniel Kirchner
0a9d752b8b
Add test case and adjust tests.
2022-03-09 17:53:28 +01:00
Daniel Kirchner
ce0a3e93f2
Store whether an evmasm Assembly is creation code.
2022-03-09 17:42:29 +01:00
Tyler
519e1c9402
Specify namespaces
...
Fix references into solidity::util
2022-03-08 00:09:17 -05:00
chriseth
77c40cd2af
Merge pull request #12740 from ethereum/remove-locale-dependent-operations
...
Replace all locale-dependent operations with locale-agnostic counterparts
2022-03-07 17:56:58 +01:00
wechman
52dfccca98
Replace all locale-dependent operations with locale-agnostic counterparts
2022-03-07 17:23:08 +01:00
chriseth
57e012da98
Merge pull request #12663 from ethereum/assemblyAnnotationDialectString
...
Assembly annotation as memory-safe using assembly flags.
2022-03-07 13:03:08 +01:00
chriseth
79eba921b8
Merge pull request #12659 from paarthmadan/pm/base-64-test-cases
...
Add Base64 test cases with and without inline assembly
2022-03-07 12:57:49 +01:00
chriseth
4f19d68ee9
Merge pull request #12620 from ethereum/assemblyAnnotation
...
Memory-safety annotation for inline assembly.
2022-03-07 12:48:41 +01:00
Paarth Madan
17fa85a2fb
Add Base64 test cases with and without inline assembly
...
Adds two implementations of Base64 encoding as specified in RFC4648.
Implementation (1) uses inline assembly, while Implementation (2) is
written purely in Solidity.
Assertions are added to replicate the test vectors specified in the RFC
for Base64 to ensure both implementations to specification.
2022-03-05 19:51:46 -05:00
Daniel Kirchner
c9373061aa
Merge pull request #12742 from msooseth/style_fix
...
Fixing style issue in ExecutionFramework.cpp
2022-03-04 15:23:25 +01:00
Mate Soos
66a779d267
Fixing style issue in ExecutionFramework.cpp
...
It should be `auto const&` not `const auto&`
2022-03-04 12:20:57 +01:00
nishant-sachdeva
beabc51c20
returnSize assigned according to truth value of returnInfo.dynamicReturnSize
2022-03-03 18:55:10 +05:30
Daniel Kirchner
b3764ad4ef
Merge pull request #12733 from ethereum/perpetual-pools-fix-race-condition-due-to-hardhat-parallel-compilation
...
Workaround for a race condition in Perpetual Pools ext test due to parallel compilation on Hardhat 2.9.0
2022-03-02 17:22:26 +01:00
Daniel Kirchner
93dd8ad553
Tests.
2022-03-02 17:07:11 +01:00
Kamil Śliwak
30008465bf
perpetual-pools: Use Hardhat 2.8.4 to work around @openzeppelin/hardhat-upgrades's problem with parallel compilation on Hardhat 2.9.0
2022-03-02 16:47:55 +01:00
Daniel Kirchner
6b6e163be5
Tests.
2022-03-02 16:42:28 +01:00
Daniel Kirchner
ad13062978
Patch external tests with a safe inline assembly annotation.
2022-03-02 16:42:28 +01:00
Daniel Kirchner
e6848caac1
Allow annotating inline assembly as memory-safe.
2022-03-02 16:42:28 +01:00
chriseth
b0dcd7b915
Split out disassemble to remove numeric from instruction includes.
2022-03-02 15:30:41 +01:00
Leo Alt
bef69b595b
Ignore cex in SMT test
2022-02-28 18:56:20 +01:00
chriseth
ebd584fcfb
Merge pull request #12206 from ethereum/extractExternalFunctionPart
...
Extract external function part
2022-02-28 13:04:14 +01:00
Kamil Śliwak
8962d53e3c
Merge pull request #12701 from a3d4/fix-running-tests-from-any-drive
...
Fix running path-related tests from any Windows drive
2022-02-28 12:58:45 +01:00
chriseth
ca4c983973
Merge pull request #12695 from ethereum/less-confusing-err
...
Make error message less confusing
2022-02-28 12:36:47 +01:00
a3d4
50ae21d1bf
Fix running tests from any drive
2022-02-22 18:11:42 +01:00
nishant-sachdeva
195f72e844
Added errorSelector field for custom errors
2022-02-21 19:14:33 +05:30
chriseth
e9592c3f8e
Update tests.
2022-02-21 14:32:52 +01:00
Marenz
175580fe90
Make error message less confusing
2022-02-17 16:52:36 +01:00
Kamil Śliwak
8aa3b7fea0
Neutralize packaged Uniswap contracts in yield-liquidator external test
2022-02-16 13:16:44 +01:00
Kamil Śliwak
ccbc865beb
elementfi: Bypass expiration check that won't pass due to test settings
2022-02-15 12:51:40 +01:00
Leo
947a599e91
Merge pull request #12441 from ethereum/benchmarking-ext-tests
...
Benchmarking external tests
2022-02-14 20:14:27 +01:00
Leo
e3e77c0f01
Merge pull request #12551 from ethereum/natspec-test
...
Add test for fixed natspec ICE
2022-02-14 19:51:03 +01:00
Leo
3915768753
Merge pull request #12594 from ethereum/solc-js-ext-test-local-checkout
...
solc-js external test on a local checkout
2022-02-14 19:44:46 +01:00
Daniel Kirchner
c47da51eab
Consider all grandparents in override analysis.
2022-02-14 15:31:31 +01:00
Daniel Kirchner
3b6c99f3e8
Merge pull request #12572 from ethereum/fixStackShuffling
...
Improved stack shuffling in corner cases.
2022-02-14 13:00:56 +01:00
nishant-sachdeva
276851ff91
Added support for FunctionType::Kind::StringConcat and functions string.concat
2022-02-10 22:08:47 +05:30
Daniel Kirchner
290b9326e3
Move stray semantics test to proper directory.
2022-02-10 13:43:49 +01:00
Kamil Śliwak
c6094bb0c2
externalTests: Benchmark reports
2022-02-09 17:02:40 +01:00
Kamil Śliwak
a7852cba75
Python script for parsing eth-gas-reporter output
2022-02-09 17:02:40 +01:00
Kamil Śliwak
7fc2253841
externalTests: Make comments about failing presets less terse
2022-02-09 17:02:40 +01:00
Kamil Śliwak
3e1aee1745
externalTests: Clean the build/ dir for Hardhat too
2022-02-09 17:02:40 +01:00
Marenz
46075d04d9
Include used events in `--hashes
` output
2022-02-09 13:50:42 +01:00
Marenz
3e7c68d9b0
Merge identifier query methods into one
2022-02-08 17:44:21 +01:00
joshieDo
9e62f21b25
Add event and error identifiers to cli hashes cmd
2022-02-08 17:44:21 +01:00
chriseth
5c3bcb6c2d
Merge pull request #12434 from ethereum/outputLocations
...
Output searched locations on import failure.
2022-02-08 17:16:46 +01:00
joshuatarkwski
6225dad332
Output searched locations on import failure.
2022-02-08 16:20:27 +01:00
chriseth
91b7d5fe5d
Merge pull request #12642 from ethereum/remove-solidityfixedfeeregistrar-ref
...
Remove a reference to unused SolidityFixedFeeRegistrar (retry)
2022-02-08 13:32:05 +01:00
Kamil Śliwak
28bc5db576
Merge pull request #12598 from a3d4/case-insensitive-root-in-normalizeclipathforvfs
...
Treat root path in normalizeCLIPathForVFS as case insensitive on Windows
2022-02-08 13:17:05 +01:00
Kamil Śliwak
122ad0770a
Merge pull request #12632 from a3d4/symlinks-on-windows
...
Clarify symlink handling on Windows
2022-02-08 13:16:24 +01:00
Mathias L. Baumann
c139d39b9b
Merge pull request #12589 from ethereum/emit-immutable-references
...
Emit immutable references for pure yul code
2022-02-07 13:21:44 +01:00
Marenz
b9fe628b70
Emit immutable references for pure yul code
2022-02-07 12:32:54 +01:00
chriseth
4715fafb82
Re-enable preset for poolTogether.
2022-02-07 11:31:59 +01:00