Commit Graph

6786 Commits

Author SHA1 Message Date
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