Daniel Kirchner
8148619d5b
Merge branch 'develop' into develop_060
2019-11-12 10:32:41 +01:00
Leonardo Alt
b323134ef0
[SMTChecker] Update test expectations for z3 4.8.6
2019-11-11 18:43:59 +01:00
chriseth
c68b672d9c
Merge pull request #7673 from ethereum/switch-external-forks
...
Switch to external forks of Gnosis and Zeppelin
2019-11-11 17:17:45 +01:00
chriseth
2e5a42836c
Merge pull request #7681 from ethereum/develop
...
Merge develop into develop_060
2019-11-11 16:42:03 +01:00
Christian Parpart
f15d47f165
Yul: Remove obsoleted FunctionalInstruction.
2019-11-11 16:04:39 +01:00
Erik Kundt
af790cec5e
Switches to forks of external projects.
2019-11-11 13:14:56 +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
chriseth
138ee647f1
Provide different options for reason strings.
2019-11-07 14:13:53 +01:00
Daniel Kirchner
108992c335
Merge pull request #7640 from ethereum/smt_fix_060
...
[SMTChecker] Fix override tests
2019-11-07 14:10:10 +01:00
chriseth
c0b27d0bc1
Merge pull request #7648 from ethereum/inlineAssemblyShadowing
...
Error on shadowing and invalid names in inline assembly
2019-11-07 13:31:09 +01:00
Daniel Kirchner
0556f64722
Analyze inline assembly variable declarations for invalid or shadowing names.
2019-11-07 13:04:37 +01:00
Leonardo Alt
fc945880d1
[SMTChecker] Fix override tests
2019-11-07 11:49:32 +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
21e65076b3
Merge pull request #7650 from ethereum/develop
...
Merge develop into develop_060
2019-11-06 21:56:55 +01:00
cd10012
a94d22e5fe
Add documentation for extractReturnParameterDocs
2019-11-06 21:45:01 +01:00
cd10012
16fe59b7b4
Implement @erak review notes by creating function and adding constructor test
...
Update 060 doc with natspec change
Add two more tests with mixed usage
Fix solc-js
fix changelog
2019-11-06 21:44:59 +01:00
cd10012
f598b1515f
Give unamed parameters unique keys and update tests to new spec
...
Fix whitespace
2019-11-06 21:44:34 +01:00
cd10012
18fe693fdd
Add unamed return param test and check size in conditional
2019-11-06 21:44:09 +01:00
cd10012
b3ae601e88
Refactor to have multiple return params
2019-11-06 21:44:09 +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
chriseth
4d99bf68f4
Merge pull request #7638 from ethereum/develop
...
Merge develop into develop_060
2019-11-05 17:33:54 +01:00
chriseth
5388c919f0
Some changes to "abstract".
2019-11-05 13:55:31 +01:00
chriseth
cac2e843e6
Merge pull request #7618 from ethereum/addMoreAbstractKeywordsInTests
...
Add some more abstract keywords in test to make sure the correct property is tested.
2019-11-05 13:38:21 +01:00
Leonardo Alt
c5e081dc8c
[SMTChecker] Refactor CHC loops and add if blocks
2019-11-05 09:28:59 +01:00
chriseth
46ac16d25c
Merge remote-tracking branch 'origin/develop' into develop_060
2019-11-04 19:09:11 +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
7c258873bd
Add some more abstract keywords in test to make sure the correct property is tested.
2019-11-04 17:26:38 +01:00
Daniel Kirchner
3321fc56ea
Split fallback function and introduce "fallback()" and "receive()" syntax.
2019-11-04 17:17:58 +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
5392532d70
Fix override error message.
2019-11-04 13:37:23 +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
Alexander Arlt
c908c16acd
Remove InternalCompilerError on abstract contract instantiation.
2019-11-01 14:54:47 -05:00
Alexander Arlt
cd3ad73b5a
Update tests.
2019-11-01 14:54:47 -05:00
Alexander Arlt
e87924a96e
Update soltest related tests.
2019-11-01 14:54:47 -05:00
Alexander Arlt
54c5e604e5
Add new tests.
2019-11-01 14:54:47 -05: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
Bhargava Shastry
edc5059208
yul proto: Add leave statement
2019-11-01 11:18:05 +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
42b8c98567
Merge remote-tracking branch 'origin/develop' into develop_060
2019-10-31 18:03:25 +01:00
chriseth
04c62e2dc3
Fix local and globals wast functions.
2019-10-31 17:41:31 +01:00
chriseth
59c4d62b21
Merge pull request #7595 from ethereum/colony-develop-060
...
Switches to Colony fork temporarily
2019-10-31 17:39:30 +01:00
Leonardo Alt
80a790b5c3
Remove solc-js DAO tests replacement
2019-10-31 16:16:13 +01:00
Erik Kundt
38f6a58bac
Switches to Colony fork temporarly.
2019-10-31 14:26:33 +01:00
Mathias Baumann
6c6a9054b2
Implement override checking
2019-10-30 17:31:33 +01:00
Mathias Baumann
20e227afb5
Ensure list of overrides consists of contracts
2019-10-30 17:31:33 +01:00
Mathias Baumann
b76106fc4a
Parse override keyword for modifier definitions
2019-10-30 17:31:33 +01:00
Erik Kundt
ba8356f093
Updates fixed version pragma in ext. truffle tests.
2019-10-30 14:33:19 +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
499fe57d33
Tests
2019-10-29 14:32:16 +01:00
chriseth
91a92a01d5
Test updates.
2019-10-29 14:32:16 +01:00
chriseth
ceb8ee9124
[Yul] leave statement.
2019-10-29 14:32:16 +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
edf1e83fda
Merge remote-tracking branch 'origin/develop' into develop_060
2019-10-28 15:21:49 +01:00
chriseth
607bf24afe
Merge pull request #7386 from ethereum/060-strict-inline-assembly
...
Defaulting to strict inline assembly (instead of loose)
2019-10-28 12:48:58 +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
chriseth
07c67b98f6
Merge remote-tracking branch 'origin/develop' into HEAD
2019-10-28 12:12:52 +01:00
Christian Parpart
df729b3084
Make use of C++17 std::optional<> instead of boost::optional<>.
2019-10-28 11:39:30 +01:00
Christian Parpart
30a99e0df4
test: Adapts InlineAssembly test case for jump instruction (which doesn't "exist" in strict assembly).
2019-10-28 10:03:16 +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
Christian Parpart
f05718ef5d
Syntax tests: Adapted to changes.
2019-10-25 15:01:27 +02:00
Christian Parpart
3c1d12b16c
Assembly: Remove errorTypeForLoose property from AsmAnalyzer.
2019-10-25 15:01:26 +02:00
Christian Parpart
e40c498260
Adapting the tests to strict inline assembly.
2019-10-25 15:01:25 +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
Mathias L. Baumann
7e01696030
Merge pull request #7554 from ethereum/develop
...
Merge develop into develop_060
2019-10-21 17:05:12 +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
chriseth
9719d28526
Merge pull request #7475 from ethereum/move-solcjs-tests
...
Migrate solc-js tests
2019-10-16 12:35:09 +02:00
chriseth
cea6d6df8b
Merge remote-tracking branch 'origin/develop' into develop_060
2019-10-05 13:08:44 +02:00
Gaith Hallak
51ae296cac
Modify the expectation files in ASTJSON tests.
2019-10-02 22:31:12 +02:00
Gaith Hallak
6c7e849431
Modify the expectation files in ASTJSON tests
...
The following changes to expecation files are required for the ASTJSON
tests to pass:
* remove trailing spaces in ASTJSON tests
* replace indention tabs with 2 spaces in ASTJSON tests
* remove the space between the key and the colon in ASTJSON tests
2019-10-02 19:14:41 +03:00
Gaith Hallak
9d34d7de2f
Remove trailing spaces from JSON output
2019-10-02 18:01:47 +03:00
chriseth
f884373142
Merge branch 'origin/develop' into develop_060
2019-10-02 16:29:36 +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
Leonardo Alt
b40895c100
Fix try catch test
2019-09-26 18:27:09 +02:00
Leonardo
ca714a2d3d
Merge pull request #7485 from ethereum/develop
...
Merge develop into develop_060
2019-09-26 15:43:12 +02:00
Erik Kundt
e4f0414391
Updates solc-js test to 0.6.0.
2019-09-25 16:03:14 +02:00
Erik Kundt
8adde5abbe
Migrates solc-js test to ext. test infrastructure.
...
solc-js commit: 9d9de6338729cf5fbd62f479d54b7097e8a7e395
2019-09-25 16:03:08 +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
Leonardo
9c23f35bec
Merge pull request #7462 from ethereum/version-060
...
Build version 0.6.0
2019-09-24 12:48:00 +02:00
Erik Kundt
e3a29ffcd3
Updates tests to version 0.6.0.
2019-09-24 12:01:14 +02:00
Erik Kundt
9a42a93955
Updates solc-js tests to 0.6.0.
2019-09-24 12:01:08 +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
f3c4f466f6
Merge remote-tracking branch 'origin/develop' into develop_060
...
Had to adjust gas costs during merge.
2019-09-24 10:28:22 +02:00
chriseth
b5d6d5fcf9
Create.
2019-09-23 17:22:56 +02:00
chriseth
b5bc52f2a7
Control flow for try statements.
2019-09-23 17:22:56 +02:00
chriseth
644a402166
Tests.
2019-09-23 17:22:56 +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
Leonardo Alt
43d6e00b14
Add push() for dynamic storage arrays
2019-09-17 13:47:33 +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
5b3efee93b
Merge pull request #7442 from ethereum/develop
...
Merge develop into develop_060
2019-09-17 12:16:27 +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
Leonardo Alt
d685554980
Create option for metadata hash
2019-09-13 18:59:12 +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
Daniel Kirchner
c72d1ffb65
Merge pull request #7421 from ethereum/develop
...
Merge develop into develop_060
2019-09-13 12:14:02 +02:00
Daniel Kirchner
4782c800ec
Initial introduction of array slices with partial implementation for dynamic calldata arrays.
2019-09-13 10:57: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
50ce3b0ac8
Merge pull request #7420 from ethereum/develop
...
Merge develop into develop_060
2019-09-12 22:06:55 +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
chriseth
4f80117eef
Use builtin iszero for for loop condition rewriting.
2019-09-12 10:26:16 +02:00
chriseth
fcfe829534
Introduce LiteralRematerializer and thus simplify StructuralSimplifier.
2019-09-11 19:50:24 +02:00
chriseth
a064e0fc97
Merge pull request #7236 from ethereum/proto-add-object-access
...
Experimental support for object access builtins
2019-09-11 18:28:10 +02:00
chriseth
e9346ca38a
Merge pull request #7400 from ethereum/evmoneSearch
...
Fix evmone filename for auto-discovery for windows and macos.
2019-09-11 17:55:12 +02:00
chriseth
b962f58973
Merge pull request #7405 from ethereum/isoltest-format-fix
...
[isoltest] Add fallback formatting
2019-09-11 17:52:11 +02:00
Christian Parpart
e528c65c04
Merge pull request #7404 from ethereum/develop
...
Merge develop into 0.6.0
2019-09-11 15:49:38 +02:00
Erik Kundt
4162c3d7af
[isoltest] Adds fallback formatting.
2019-09-11 15:45:53 +02:00
Daniel Kirchner
2535091168
Replace preprocessor macros with constexpr expressions.
2019-09-11 13:03:05 +02:00
Christian Parpart
ccdca32f39
isoltest: Fixes matching tests on platforms that don't use forward slahes as path separators.
2019-09-11 12:53:20 +02:00
Flash Sheridan
733d40ddb5
Fix evmone filename for auto-discovery for windows and macos.
2019-09-11 12:28:05 +02:00
Bhargava Shastry
34022a2c8c
Pseudo-randomly choose object/data identifier that is in scope
2019-09-11 10:57:54 +02:00
Bhargava Shastry
d677a15507
Add object access builtin functions
2019-09-11 10:57:54 +02:00
chriseth
143e867353
Merge pull request #7390 from ethereum/sloadTest
...
Load resolver involving staticcall.
2019-09-10 13:25:15 +02:00
chriseth
acf10ef60f
Merge pull request #7393 from ethereum/develop
...
Merge develop into 0.6.0
2019-09-10 12:27:02 +02:00
chriseth
20f6fbf88e
Load resolver involving staticcall.
2019-09-10 12:09:13 +02:00
chriseth
ca0b38c8a3
Merge pull request #7327 from winsvega/newopcodes
...
add chainid and selfbalance to lllc
2019-09-10 12:00:26 +02:00
Leonardo Alt
5cfe0b7670
Allow explicit conversion from address to address payable
2019-09-09 23:46:00 +02:00
Erik Kundt
5e12e0cf27
[isoltest] Fixes auto-update for revert.
2019-09-09 22:46:43 +02:00
Dimitry
fd3ae0b24a
add chainid and selfbalance to lllc
2019-09-09 23:35:36 +03:00
Bhargava Shastry
09fa31ccc5
yul: Add new optimizer rules for create and create2 builtins
2019-09-09 17:06:56 +02:00
chriseth
96b6b45658
Merge pull request #7324 from ethereum/activateLoadResolver
...
[Yul] Activate load resolver.
2019-09-09 16:45:41 +02:00
chriseth
a272506a34
Merge pull request #7374 from ethereum/hexStringUnderscores
...
Allow underscores in hex strings.
2019-09-09 11:48:46 +02:00
Bhargava Shastry
e349fb1ce1
Abiv2 proto fuzzer: Crop at least 32 bytes if last dynamically encoded parameter is right padded
2019-09-09 10:07:30 +02:00
Daniel Kirchner
6f3341a204
Allow underscores in hex strings.
2019-09-06 17:58:35 +02:00
chriseth
9c72f25cce
Merge pull request #7368 from ethereum/errorReporter
...
Switch to new error reporter.
2019-09-06 15:53:29 +02:00
Daniel Kirchner
f4d990e5be
Drop constant and payable fields from ABI.
2019-09-06 14:42:09 +02:00
Daniel Kirchner
94ce0462ba
Add backup extension to all sed commands in the command line tests for OSX sed.
2019-09-06 14:19:49 +02:00
Daniel Kirchner
998f7de2c8
Change command line test from --ast to --ast-json.
2019-09-06 13:46:18 +02:00
Daniel Kirchner
f84371b2e0
Fix command line tests for new error reporter.
2019-09-06 13:31:57 +02:00
chriseth
ea0a952a69
Merge pull request #7362 from ethereum/develop
...
Merge develop into develop_060
2019-09-05 16:50:44 +02:00
Daniel Kirchner
9bcaeef39f
Fix test wrt changed json ABI sorting.
2019-09-05 13:39:23 +02:00
chriseth
7f797bc6ae
Merge pull request #7342 from ethereum/extendedMemorySizeInterpreter
...
Make memory addresses wrap in interpreter.
2019-09-05 13:14:57 +02:00
Bhargava Shastry
137a898eca
Yul proto fuzzer: Fix typo in low level call
2019-09-04 21:14:26 +02:00
chriseth
fd687f50ff
Merge pull request #7353 from ethereum/develop
...
Update 0.6.0 from develop
2019-09-04 20:21:37 +02:00
chriseth
5b4b4011c7
Extend memory beyond 32 byte addresses in interpreter.
2019-09-04 20:10:42 +02:00
chriseth
633932c5f1
Update tests.
2019-09-04 19:16:54 +02:00
Bhargava Shastry
c889e6e015
Yul proto fuzzer: Add create and call opcodes
2019-09-04 19:13:40 +02:00
Bhargava Shastry
6b27ef8fcb
Yul proto fuzzer: Additional blockchain opcodes
2019-09-04 19:13:40 +02:00
krk
33f7f960cf
Allow exponentials with signed base and unsigned power.
2019-09-04 17:32:47 +02:00
chriseth
7dd77784b7
Merge pull request #7335 from ethereum/abiSorting
...
Change ABI sorting order.
2019-09-04 17:18:27 +02:00
chriseth
8485a1abec
Change ABI sorting order.
2019-09-04 13:06:09 +02:00
Bhargava Shastry
fce65ec811
Randomize calldataload and storage slots and use dictionary tokens as function argument
2019-09-04 09:54:57 +02:00
Bhargava Shastry
d066ba71a4
Force call of every valid func declaration
2019-09-04 09:54:57 +02:00
Bhargava Shastry
4837ef4ada
Yul proto fuzzer: Make function definition a statement
2019-09-04 09:54:36 +02:00
Alex Beregszaszi
dce52509b4
Merge pull request #7329 from ethereum/istanbul
...
Introduce istanbul and berlin versions
2019-09-03 15:18:14 +01:00
chriseth
ea4ea5ae5d
Merge pull request #7333 from ethereum/yulopti_add_load_resolver
...
Add Load Resolver to Yulopti
2019-09-03 16:12:31 +02:00
chriseth
ebd16eb142
Merge pull request #7321 from ethereum/smt_const_array
...
[SMTChecker] Zero-initialize arrays
2019-09-03 15:51:59 +02:00
Leonardo Alt
d131784714
Add Load Resolver to Yulopti
2019-09-03 15:51:33 +02:00
chriseth
6e4e54cbc6
Merge pull request #7309 from ethereum/yulproto-refactor
...
Yul proto fuzzer: Do not shadow variables
2019-09-03 12:29:13 +02:00
chriseth
029941a168
Merge pull request #7251 from ethereum/sideEffectsForUserDefinedFunctions
...
Side effects for user defined functions
2019-09-03 12:10:56 +02:00
Bhargava Shastry
6427ec661a
Yul interpreter: Out of bounds mloads return zero
2019-09-03 09:51:15 +02:00
Leonardo Alt
a774b2d905
[SMTChecker] Zero-initialize arrays
2019-09-02 22:37:30 +02:00
chriseth
55024d40fe
Test updates.
2019-09-02 17:41:51 +02:00
chriseth
127bcfc69d
Take user function side-effects into account for unused pruner.
2019-09-02 17:41:51 +02:00
chriseth
1c5845e3f2
Side-effects of user-defined functions.
2019-09-02 17:41:51 +02:00
chriseth
c499758cd8
Merge pull request #7326 from ethereum/develop
...
Merge develop into 0.6.0 branch.
2019-09-02 16:11:20 +02:00
Bhargava Shastry
bcf0c1810c
Yul proto fuzzer: Do not reuse variable names
2019-09-02 15:23:10 +02:00
chriseth
9a6357ab09
Merge pull request #7188 from ethereum/abiv2-use-bytes-string-longer-than-32-bytes
...
Abiv2 use bytes string longer than 32 bytes
2019-09-02 15:05:43 +02:00
chriseth
bdf29277a2
Change interpreter memory to be non-contiguous.
2019-09-02 13:51:47 +02:00
Bhargava Shastry
46a133e848
Generate bytes and string literals that are longer than 32 bytes
2019-09-02 12:43:47 +02:00
Daniel Kirchner
467d420f7e
ABI and AST tests.
2019-09-02 12:23:21 +02:00
chriseth
a988b64597
Merge pull request #7312 from ethereum/fixInterpreterScopes
...
Fix handling of scopes in Yul Interpreter.
2019-09-02 12:05:33 +02:00
Daniel Kirchner
2b938d703c
Allow global enum definitions.
2019-09-02 11:52:51 +02:00
Bhargava Shastry
3963d0ca02
Create bytes/string values of shorter than 32 bytes and adjust invalid encoding length accordingly
2019-09-02 11:30:38 +02:00
Daniel Kirchner
fae0e10d26
Import tests.
2019-09-02 11:17:57 +02:00
Daniel Kirchner
872d21f527
Allow global struct definitions.
2019-09-02 11:17:42 +02:00
chriseth
01e0a12c3b
Fix handling of scopes in Yul Interpreter.
2019-09-02 10:41:26 +02:00
chriseth
e86b5cf14e
Replace byte(A, X) by zero if A >= 32
2019-08-29 15:35:34 +02:00
Leonardo Alt
214e5c6369
[SMTChecker] Fix index access type type error
2019-08-27 16:39:19 +02:00
Mathias Baumann
24716404f8
Parse override keyword
2019-08-26 17:34:21 +02:00
Alex Beregszaszi
5749a5d7c9
Introduce istanbul and berlin versions
2019-08-26 13:15:01 +01:00
Bhargava Shastry
922790730c
Do not create duplicate case statements
2019-08-26 12:44:06 +02:00
Bhargava Shastry
86c981d9fa
proto fuzzer: Use a yul optimizer dictionary
2019-08-26 12:44:06 +02:00
Erik K
d47863ef35
Merge pull request #7300 from ethereum/fix-docCheck
...
Fix deprecated option style for docCheck
2019-08-26 12:23:03 +02:00
Mathias L. Baumann
e1bb4b9f81
Merge pull request #7280 from ethereum/isoltest-empty-revert
...
[isoltest] Support empty revert message
2019-08-26 11:45:36 +02:00
Mathias Baumann
7f6bb543a9
Fix deprecated option style for docCheck
...
solhint was updated and now warns about deprecated option values
2019-08-26 11:23:29 +02:00
Erik Kundt
755dae5d66
[isoltest] Supports empty revert message.
2019-08-26 11:06:30 +02:00
Mathias L. Baumann
502bf01be2
Merge pull request #7278 from ethereum/develop
...
Merge develop into develop_060
2019-08-26 10:26:48 +02:00
Leonardo Alt
c27235b2f5
[SMTChecker] Adapt division test for Z3 only
2019-08-23 17:33:29 +02:00
Mathias Baumann
0e3ff25b4e
Make sure json output array order is consistent
...
The source of the "contractDependencies" value was an std::map, thus
order was more or less random.
2019-08-19 17:42:03 +02:00
Daniel Kirchner
4354ef2ef4
Add update suggestion.
2019-08-19 14:58:05 +02:00
Daniel Kirchner
20b23e124b
Add test case.
2019-08-19 14:56:04 +02:00
Daniel Kirchner
9f6fff2120
Replace casting of external functions to address by a member named "address".
2019-08-19 14:56:04 +02:00
Daniel Kirchner
aa2167b208
Extract some import tests.
2019-08-19 14:45:26 +02:00
Daniel Kirchner
6ed219ebe8
Support multiple sources for syntax tests.
2019-08-19 14:45:26 +02:00
Daniel Kirchner
4a65c5ebaa
Compile succeeding syntax tests.
2019-08-16 17:14:49 +02:00
chriseth
3c4f558242
Tests
2019-08-15 16:30:05 +02:00
Leonardo Alt
1a70a46f9b
[CHC] Add function blocks and check asserts
2019-08-15 12:25:15 +02:00
chriseth
2508cbc1eb
Merge pull request #7095 from ethereum/isoltest-failure-reason
...
[isoltest] Support FAILURE with reason
2019-08-15 11:37:56 +02:00
Erik Kundt
6c73bc5bac
[isoltest] Refactors parameter formatting.
2019-08-14 21:28:43 +02:00
Erik Kundt
18157f5a49
[isoltest] Splits smoke test into separate files.
2019-08-14 21:28:43 +02:00
Erik Kundt
30483acc42
[isoltest] Support FAILURE with reason.
2019-08-14 21:28:43 +02:00
Daniel Kirchner
b0a5666b43
Better error messages when writing to expressions that cannot be written to.
2019-08-14 17:59:48 +02:00
chriseth
7d30fbdef0
Extract side effects into their own struct.
2019-08-14 15:06:10 +02:00
chriseth
e396dc7246
Properly set storage and memory after erasing potentially destroyed keys
2019-08-13 18:43:15 +02:00
Mathias Baumann
30373d5719
Test scripts: Make build dir a variable
2019-08-13 12:44:29 +02:00