Commit Graph

3426 Commits

Author SHA1 Message Date
chriseth
a667384517
Merge pull request #7712 from ethereum/fixIstanbulAsmParsing
Fix assembly parsing by passing evm version.
2019-11-14 13:20:15 +01:00
chriseth
b099374d8c Fix assembly parsing by passing evm version. 2019-11-14 13:06:36 +01:00
chriseth
8d46f39643
Merge pull request #7707 from ethereum/smt_ice_implicit_conversion
[SMTChecker] Fix ICE in string literal to fixed bytes conversion
2019-11-14 11:52:58 +01:00
chriseth
f6191a7183
Merge pull request #7709 from ethereum/overloadMsgForMagic
Reconstruct function definition for magic variables in overload error message.
2019-11-14 11:24:54 +01:00
Leonardo Alt
5f43b8dbeb Output the storage layout of a contract via storageLayout artifact 2019-11-14 10:19:17 +01:00
chriseth
06588cde76 Reconstruct function definition for magic variables in overload error message. 2019-11-14 10:13:22 +01:00
Leonardo Alt
8efacfb545 [SMTChecker] Fix ICE in string literal to fixed bytes implicit conversion 2019-11-13 22:25:18 +01:00
Leonardo Alt
e3652627fd [SMTChecker] Fix ICE in CHC when function used as argument 2019-11-13 15:11:30 +01:00
chriseth
c0cf96cbc1
Merge pull request #7699 from ethereum/test-require-str
Test `require` with string literals
2019-11-13 12:20:23 +01:00
Mathias Baumann
c74b1daef2 Test require with string literals
fixes #6651
2019-11-13 12:01:25 +01:00
Daniel Kirchner
ce7268272d Allow obtaining the address of a library by conversion to `address`. 2019-11-12 17:09:13 +01:00
chriseth
a7e133b95c
Merge pull request #7696 from ethereum/semanticsTestsLibraryDeployment
Add support for external libraries to extracted semantics tests.
2019-11-12 15:50:36 +01:00
Daniel Kirchner
c7e3318dba Add support for external libraries to extracted semantics tests. 2019-11-12 15:19:04 +01:00
Leonardo Alt
dc2dff839c [SMTChecker] Remove flaky tests until we fix the SMTChecker tests 2019-11-12 12:58:42 +01:00
Leonardo Alt
b323134ef0 [SMTChecker] Update test expectations for z3 4.8.6 2019-11-11 18:43:59 +01:00
chriseth
a5f0422dcc
Merge pull request #7662 from ethereum/cmakeNoGlobInTests
Do not rely on cmake's GLOB for test/
2019-11-10 15:28:11 +01:00
Leonardo Alt
5dacaf57bc Fix ICE in FixedBytes IndexAccess 2019-11-08 17:29:40 +01:00
Daniel Kirchner
25a933a906 Do not rely on cmake's GLOB for test/ 2019-11-08 16:12:42 +01:00
chriseth
a081b720b9
Merge pull request #7587 from ethereum/abiv2-returndata-fuzz
Abiv2 returndata fuzz
2019-11-07 15:03:14 +01:00
Alex Beregszaszi
18542ebf31 Use evmc_load_and_configure to support passing EVMC options 2019-11-07 10:42:41 +00:00
Alex Beregszaszi
882cd3e285 Update EVMC to 6.3.1 2019-11-07 10:41:14 +00:00
Alex Beregszaszi
f77d7c2dc7 Ensure that EVMC capability is checked after loading evmone 2019-11-07 00:27:46 +00:00
Bhargava Shastry
9772cc44a0 abiv2 proto fuzzer: Fuzz return data coding 2019-11-06 23:42:10 +01:00
chriseth
aa8de4404e
Merge pull request #7610 from ethereum/fix-7472
yul proto fuzzer: Increase step limit for optimized code
2019-11-06 21:11:51 +01:00
Leonardo Alt
10e70b8603 [SMTChecker] Support inheritance and resolve overrides 2019-11-06 11:00:06 +01:00
chriseth
081845d775 EWasm binary transform. 2019-11-05 19:58:55 +01:00
Leonardo Alt
c5e081dc8c [SMTChecker] Refactor CHC loops and add if blocks 2019-11-05 09:28:59 +01:00
Bhargava Shastry
6a55949c04 yul proto fuzzer: Increase step limit upper bound for optimized code 2019-11-04 18:38:56 +01:00
chriseth
60b97bfb43 Fix test that resulted from merge conflict. 2019-11-04 18:06:43 +01:00
Leonardo
1eac3d1d83
Merge pull request #7582 from ethereum/smt_multid_array_assignment
[SMTChecker] Support assignments to m-d arrays and mappings
2019-11-04 17:37:33 +01:00
chriseth
e7c4378ce7
Merge pull request #7516 from ethereum/abiv2-proto-struct
Abiv2 proto struct
2019-11-04 17:04:16 +01:00
chriseth
62aa20137c
Merge pull request #7600 from ethereum/TypeConversionOnTheFly
[WASM] Inject type conversions on the fly if needed.
2019-11-04 16:20:57 +01:00
Bhargava Shastry
04becb9458 Minor refactoring 2019-11-04 15:47:04 +01:00
Bhargava Shastry
12ed08eddb Place upper bound number on number of array dimensions 2019-11-04 15:47:04 +01:00
Bhargava Shastry
3cfeca33c1 Abiv2 proto fuzzer: Refactor and add support for structs 2019-11-04 15:47:04 +01:00
chriseth
08cf616157
Merge pull request #7609 from ethereum/fix-7608
yul proto fuzzer: Catch exception early and propagate termination reason
2019-11-04 13:29:50 +01:00
chriseth
8337de5189 [WASM] Inject type conversions on the fly if needed. 2019-11-01 15:44:39 +01:00
chriseth
8780f2d595
Merge pull request #7604 from ethereum/datasizeOffsetSingle
[WASM] datasize and dataoffset only return a single value.
2019-11-01 15:39:50 +01:00
chriseth
cca7f01199 Tests for conditional unsimplifier 2019-11-01 14:07:25 +01:00
chriseth
ce87f11885 Test updates 2019-11-01 14:01:56 +01:00
chriseth
61a2d44f38 Conditional unsimplifier 2019-11-01 14:01:56 +01:00
chriseth
21b9606ed3 Test updates. 2019-11-01 14:01:56 +01:00
chriseth
19ccdfb0b3 No into body. 2019-11-01 14:01:56 +01:00
chriseth
5d6e983be3 Conditional simplifier. 2019-11-01 14:01:56 +01:00
chriseth
7f1593baa0 [WASM] datasize and dataoffset only return a single value. 2019-11-01 13:52:49 +01:00
Bhargava Shastry
e4ba1c02e8 yul proto fuzzer: Catch exception early and propagate termination reason to harness 2019-11-01 12:26:35 +01:00
chriseth
21227d748c Update polyfill and set name. 2019-10-31 18:51:19 +01:00
chriseth
3d1123cf61
Merge pull request #7599 from ethereum/fixLocalGlobalWast
Fix local and globals wast functions.
2019-10-31 18:14:42 +01:00
chriseth
04c62e2dc3 Fix local and globals wast functions. 2019-10-31 17:41:31 +01:00
Leonardo Alt
80a790b5c3 Remove solc-js DAO tests replacement 2019-10-31 16:16:13 +01:00
chriseth
d605f89167
Merge pull request #7548 from ethereum/fixWasmLayout
Wasm: Fix layout for text conversion.
2019-10-29 17:52:34 +01:00
chriseth
5d906cd58d
Merge pull request #7568 from ethereum/fixtest
Fix failing tests on ArchLinux and potentially MacOS
2019-10-29 12:37:51 +01:00
Mathias Baumann
b3a5c9c9c0 Fix failing tests on ArchLinux and potentially MacOS 2019-10-29 12:02:50 +01:00
Leonardo Alt
8a42e3f87a [SMTChecker] Support assignments to m-d arrays and mappings 2019-10-28 17:27:39 +01:00
chriseth
81e2d1ed14
Merge pull request #7528 from ethereum/fix-7434
yul interpreter: Initialize calldata with random data
2019-10-28 12:39:27 +01:00
chriseth
9719f099aa
Merge pull request #7551 from ethereum/060-cxx17-std-optional
Use `std::optional<>` rather than `boost::optional<>`
2019-10-28 12:17:31 +01:00
Christian Parpart
df729b3084 Make use of C++17 std::optional<> instead of boost::optional<>. 2019-10-28 11:39:30 +01:00
Henry Lee
24cbb4dd17 Treat magic variables as unknown identifiers in inline assembly
This fixes #4575. For keywords such as 'super' and 'this', will be
treated as unknown identifiers.
2019-10-28 14:59:50 +11:00
Erik Kundt
d470663c25 Update version pragma replacement in ext. tests. 2019-10-25 17:38:29 +02:00
chriseth
15e39f7d65
Merge pull request #7556 from ethereum/ice-7550
Check for use of modifiers in invalid contexts
2019-10-24 10:32:49 +02:00
chriseth
f399d8415f Fix layout for text conversion. 2019-10-23 16:43:29 +02:00
Mathias Baumann
c3e8023ad5 Fix wrong assert in overflow check 2019-10-23 14:59:34 +02:00
Mathias Baumann
8c5d1da5a5 Check for use of modifiers in invalid contexts 2019-10-23 12:36:20 +02:00
Mathias Baumann
ad7cf42aad Add missing dots in deprecation warning 2019-10-23 12:23:21 +02:00
Mathias Baumann
6ac12afd06 Disallow call of same-class-ctor as modifier 2019-10-23 10:29:41 +02:00
Bhargava Shastry
128c3c7cf6 yul interpreter: Initialize calldata with random data 2019-10-21 10:37:35 +02:00
chriseth
e626437d77
Merge pull request #7538 from ghallak/7198-remove-padded-zeros
Remove trailing zeros from the output of BytesUtils::formatBytes
2019-10-16 15:55:02 +02:00
chriseth
ebfe7391ff Use selfbalance for `address(this).balance`. 2019-10-16 14:25:56 +02:00
Gaith Hallak
8a8f553e4d Remove trailing zeros from the output of BytesUtils::formatBytes 2019-10-16 14:42:12 +03:00
Gaith Hallak
02ae43aad4 Fix the documentation for TestFunctionCall::format 2019-10-16 14:42:12 +03:00
Gaith Hallak
51ae296cac Modify the expectation files in ASTJSON tests. 2019-10-02 22:31:12 +02:00
Daniel Kirchner
7202ebb5b2 Fix internal compiler error for arrays of recursive structs. 2019-10-01 16:51:14 +02:00
Christian Parpart
00d7dac15f Fixes source location in warning for shadowing import delcarations. 2019-09-30 11:45:46 +02:00
Christian Parpart
f85f6ba7e0 Fixes doxygen style multiline comment parsing for files with CRLF as line terminators. 2019-09-25 12:59:46 +02:00
chriseth
45583895fc
Merge pull request #7473 from ethereum/refactorSteps
Refactor Optimiser Steps Interface.
2019-09-24 15:55:25 +02:00
chriseth
cda23d63e9
Merge pull request #7458 from ethereum/fixErrorMessage
Fix error message about accessing storage pointers.
2019-09-24 15:11:03 +02:00
chriseth
9ce1ca2340 Refactor Optimiser Steps Interface. 2019-09-24 14:52:01 +02:00
chriseth
973e4ca90a
Merge pull request #7453 from ethereum/smt_lib_const_array
[SMTChecker] Add "as const: function to SMTLib2Interface
2019-09-24 11:02:34 +02:00
chriseth
ca21659749 Fix error message about accessing storage pointers. 2019-09-24 10:52:02 +02:00
chriseth
bfc8fd23ac Document chainid and selfbalance. 2019-09-19 15:35:37 +02:00
Leonardo Alt
ed9674be8d [SMTChecker] Add as const function to SMTLib2Interface 2019-09-18 22:57:14 +02:00
chriseth
5a950908b6
Merge pull request #7432 from ethereum/fix-ossfuzz-build
ossfuzz: Create a separate cmake toolchain file for ossfuzz
2019-09-17 15:24:50 +02:00
chriseth
7c774c3a4b
Merge pull request #7444 from ethereum/solc-fuzzer-add-evmversion
solc fuzzer: Use randomly chosen evm version
2019-09-17 15:23:17 +02:00
Bhargava Shastry
9b31d72f43 solc fuzzer: Use randomly chosen evm version 2019-09-17 13:43:22 +02:00
mingchuan
520a3ccfff [YulOpt] declare SSA var when control flow joins 2019-09-17 13:22:02 +02:00
chriseth
5859a69c44
Merge pull request #7409 from ethereum/forLoopOutOfBody
[Yul] Move for loop condition out of body.
2019-09-17 12:58:56 +02:00
chriseth
68986a58b6 Test. 2019-09-17 12:32:46 +02:00
chriseth
7a79742f3d Out of body again. 2019-09-17 12:30:15 +02:00
chriseth
58f0f9dbea
Merge pull request #7417 from ethereum/fix-7355-v2
Update logic to track dynamically encoded parameters
2019-09-17 11:43:37 +02:00
Bhargava Shastry
48da5f07a5 ossfuzz: Create a separate cmake toolchain file for ossfuzz so that multiple fuzzing backends may be used 2019-09-16 18:35:15 +02:00
Leonardo Alt
eab9f65610 Fix ICE when pop dyn storage array of mapping 2019-09-16 16:33:17 +02:00
Bhargava Shastry
403fb7d88c Update logic to track dynamically encoded parameters 2019-09-16 14:25:37 +02:00
chriseth
2d601a4f23
Merge pull request #7414 from ethereum/refactorSSA
Refactor SSA transform.
2019-09-13 17:55:39 +02:00
Leonardo Alt
e1c238e25f [SMTChecker] Add loop support 2019-09-13 12:40:53 +02:00
Erik Kundt
e92b921123 [isoltest] Adds support for fallback and ether functions. 2019-09-13 10:55:46 +02:00
Erik Kundt
ad5fe2bf45 Fixes codespell. 2019-09-12 22:15:03 +02:00
chriseth
192946c1ba
Merge pull request #7413 from ethereum/ossfuzz-link-correctly
Link ossfuzz targets with -fsanitize=fuzzer instead of libFuzzingEngine
2019-09-12 20:22:53 +02:00
chriseth
20bada4c60 Refactor SSA transform. 2019-09-12 20:07:39 +02:00
Daniel Kirchner
f86c5da202 Fix SSA reverser in special case of declaration followed by self-assignment. 2019-09-12 18:17:13 +02:00
Bhargava Shastry
a7c987d931 Link ossfuzz targets with -fsanitize=fuzzer instead of libFuzzingEngine supplied by docker image 2019-09-12 11:26:05 +02:00