chriseth
f3e100a000
Merge pull request #9359 from ethereum/doNotRunAllTests
...
Do not run tests that do not need options multiple times.
2020-07-08 22:19:46 +02:00
chriseth
59f4989966
Optimize combination of byte and shl.
2020-07-08 20:26:46 +02:00
chriseth
ecc4bf2464
Merge pull request #9354 from ethereum/improveTestSpeed
...
Improve testing speed by only enabling the Yul optimizer if needed.
2020-07-08 19:54:32 +02:00
chriseth
8eb459c825
Disallow dot in inline assembly identifiers.
2020-07-08 19:29:58 +02:00
chriseth
d4ecd33247
Propagate function call argument types across function call options.
2020-07-08 17:59:02 +01:00
chriseth
83337c850e
Do not run tests that do not need options multiple times.
2020-07-08 18:47:14 +02:00
chriseth
0c7e4cf16b
Merge pull request #9340 from ethereum/compileTimeSha
...
Evaluate keccak256 of string literals at compile-time.
2020-07-08 18:42:38 +02:00
chriseth
19ec9ecbfd
Merge pull request #9347 from ethereum/moretests
...
Add create & delete array tests for yul
2020-07-08 18:09:57 +02:00
chriseth
0a0f578d7c
Evaluate keccak256 of string literals at compile-time.
2020-07-08 16:14:14 +02:00
Bhargava Shastry
48ac4b2954
Disable more than one reference to a variable on the LHS of a tuple assignment
2020-07-08 13:16:07 +02:00
Mathias Baumann
f9d6fa71fd
Add create & delete array tests for yul
2020-07-08 13:10:33 +02:00
chriseth
5ebf2b84ef
Improve testing speed by only enabling the Yul optimizer if needed.
2020-07-08 10:51:42 +02:00
chriseth
64b6524bdb
Merge remote-tracking branch 'origin/develop' into breaking
2020-07-08 09:37:14 +02:00
Kamil Śliwak
b23f7d8790
[yul-phaser] Temporarily disable very slow tests for the classic algorithm
2020-07-07 17:14:57 +02:00
chriseth
41e1e34211
Merge pull request #9180 from ethereum/noVisibilityForConstructor
...
[BREAKING] No visibility for constructor
2020-07-07 16:26:41 +02:00
Alex Beregszaszi
0bd6fb027b
Update tests
2020-07-07 13:13:58 +01:00
chriseth
ec8be81258
Merge pull request #9243 from ethereum/jumpTypesForYul
...
Jump types for yul functions.
2020-07-07 12:21:14 +02:00
chriseth
552d353430
New tests.
2020-07-07 12:16:18 +02:00
chriseth
5959d442cb
Make visibility optional, but it has to be consistent.
2020-07-07 12:16:18 +02:00
chriseth
9743390a53
Update tests.
2020-07-07 12:16:18 +02:00
Alex Beregszaszi
beb4b1d563
Fix tests on breaking
2020-07-07 10:17:58 +01:00
chriseth
d72aae20aa
Merge pull request #9321 from ethereum/multiYulAssign
...
Disallow the same yul variable occurring multiple times on the LHS of an assignment.
2020-07-07 11:07:05 +02:00
chriseth
2e9933b0de
Merge pull request #9320 from ethereum/tests_for_memory_in_external.sol
...
Tests for memory in external functions.
2020-07-07 11:05:50 +02:00
Daniel Kirchner
70615a73a4
Disallow the same yul variable occurring multiple times on the LHS of an assignment.
2020-07-07 10:52:47 +02:00
chriseth
e48d3e5847
Fix wording of error message.
2020-07-06 19:22:52 +02:00
chriseth
982a269b2b
Merge pull request #9325 from ethereum/develop
...
Merge develop into breaking.
2020-07-06 19:11:02 +02:00
chriseth
a09a791999
Merge pull request #9313 from ethereum/doesnt
...
[Trivial] Replace "doesn't" with "does not" in error message
2020-07-06 18:21:02 +02:00
chriseth
4d2b9cd38f
Jump types for yul functions.
2020-07-06 18:12:54 +02:00
chriseth
9009335b3f
Merge pull request #9319 from ethereum/noCalldataForConstructor
...
Constructors cannot have calldata parameters.
2020-07-06 17:58:23 +02:00
chriseth
c0adf2bb4c
Tests for memory in external functions.
2020-07-06 17:08:24 +02:00
chriseth
f372ba6fea
Constructors cannot have calldata parameters.
2020-07-06 16:52:51 +02:00
Alex Beregszaszi
60d4b1e8cc
Rename drop to i64.drop in WasmDialect
...
Also properly implement support for both i32.drop and i64.drop in BinaryTransform, TextTransform, and YulInterpreter
2020-07-06 15:47:17 +01:00
chriseth
375cb09341
Merge pull request #9316 from ethereum/yul-cleanup-evm
...
Tiny cleanups to EVMDialect in Yul
2020-07-06 16:14:24 +02:00
chriseth
083ef2d685
Merge pull request #9311 from a3d4/improve-large-variable-size-warning
...
Add variable name to the "Variable covers ...." warning
2020-07-06 15:31:33 +02:00
chriseth
ab68406006
Merge remote-tracking branch 'origin/develop' into breaking
2020-07-06 15:25:25 +02:00
a3d4
5e4aeaa460
Add variable name to the "Variable covers a large part of storage ...." message
2020-07-06 13:49:09 +02:00
Mathias Baumann
8cdf14f1b3
Replace "doesn't" with "does not" in error message
2020-07-06 13:44:33 +02:00
Alex Beregszaszi
f0d256bfdb
Add test case for jumpi in inline assembly
2020-07-06 10:41:35 +01:00
Daniel Kirchner
b9b24daa8a
Merge pull request #9295 from ethereum/requireFLIR
...
Require for loop init rewriter for SSA.
2020-07-04 17:51:57 +02:00
chriseth
711ed588d7
Require for loop init rewriter for SSA.
...
Co-authored-by: Harikrishnan Mulackal <webmail.hari@gmail.com>
2020-07-03 19:24:31 +02:00
Alex Beregszaszi
0ac039e4ea
Merge pull request #9305 from ethereum/yul-dot-tests
...
Add Yul syntax tests for dots in identifiers
2020-07-03 18:18:58 +01:00
Alex Beregszaszi
889131321a
Merge pull request #9298 from ethereum/yul-evm-version-tests
...
Use different error code for various EVM features in Yul
2020-07-03 17:05:01 +01:00
a3d4
46bcac58eb
Merge pull request #9187 from a3d4/fix-storagesizeestimate
...
Fixed recursive check in structureSizeEstimate
2020-07-03 17:35:11 +02:00
Alex Beregszaszi
8b53f85e28
Add Yul syntax tests for dots in identifiers
2020-07-03 15:41:09 +01:00
a3d4
1c7a0dcbea
Add warnings for oversized subtypes
2020-07-03 15:18:02 +02:00
Alex Beregszaszi
9a94b89c48
Update and add new tests for features of different EVM version
2020-07-03 14:08:09 +01:00
Daniel Kirchner
c0ee566049
Merge pull request #9293 from ethereum/yul-restrict-linkersymbol-to-object-dialect
...
[Yul] Restrict `linkersymbol` to object dialect and add missing changelog entries
2020-07-03 11:37:21 +02:00
chriseth
3d96e2b11a
Merge pull request #9257 from ethereum/yul-in-memory-struct-creation
...
Yul: Implement memory struct allocation
2020-07-02 17:03:46 +02:00
Mathias Baumann
50373ac1b0
Yul: Implement memory struct allocation
2020-07-02 16:37:20 +02:00
Kamil Śliwak
356b9a7904
Restrict linkersymbol
builtin to object dialect of Yul
2020-07-02 14:41:40 +02:00
a3d4
c2e1273ff4
Fixed recursive check in structureSizeEstimate
2020-07-02 04:14:58 +02:00
Leonardo Alt
5517e817d5
Do not trust code of external functions
2020-07-01 18:20:46 +02:00
Leonardo Alt
5160f89c1b
[SMTChecker] Support to external calls to unknown code
2020-07-01 18:20:33 +02:00
chriseth
1ec1166a27
Merge pull request #9277 from a3d4/improve-docstringparser-error-coverage
...
Add a missing DocStringParser error to tests
2020-07-01 18:17:09 +02:00
chriseth
3d602b3190
Merge pull request #9271 from ethereum/sloadKnowledge
...
[Yul Optimizer] Make DataFlowAnalyzer aware of storage / memory slot after sload / mload
2020-07-01 13:46:10 +02:00
chriseth
e0b1d8b9bd
Make DataFlowAnalyzer aware of storage / memory slot after sload / mload.
2020-07-01 13:45:25 +02:00
chriseth
ea46636ad2
Merge pull request #9281 from ethereum/fix-6772
...
Fuzzer: Add a specialized StackTooDeepError Exception that is caught …
2020-07-01 11:47:35 +02:00
Bhargava Shastry
1a0391bceb
Fuzzer: Add a specialized StackTooDeepError Exception that is caught in the fuzzing harness
2020-07-01 11:08:20 +02:00
a3d4
acd42a08c1
Add a missing DocStringParser error to tests.
2020-07-01 04:42:37 +02:00
Bhargava Shastry
b82590322c
yul proto fuzzer: Remove assertion that no errors/warnings while parsing yul code
2020-06-30 21:46:38 +02:00
chriseth
3e3f9a472f
Merge remote-tracking branch 'origin/develop' into breaking
2020-06-30 18:56:51 +02:00
Bhargava Shastry
d0ea1f97fd
Yul interpreter: Return selfbalance constant for the expression
...
balance(address()) and balance constant otherwise.
2020-06-30 16:59:13 +02:00
chriseth
76943023bd
Merge pull request #9267 from ethereum/issue-8911-split
...
NatSpec: Implement default inheritance.
2020-06-30 15:16:14 +02:00
Mathias Baumann
c50f0ae00e
NatSpec: Implement default inheritance.
2020-06-30 14:45:13 +02:00
Harikrishnan Mulackal
eeadb5a6b5
Tests, Docs and Changelog
2020-06-30 16:53:41 +05:30
chriseth
49e3217933
Merge pull request #9230 from ethereum/issue-8716
...
Add unit denomination ``gwei``
2020-06-30 12:36:10 +02:00
Mathias Baumann
fe33891531
Natspec: Add warning when using @author
with functions
2020-06-29 18:10:36 +02:00
chriseth
a1309e4c5f
Merge pull request #9011 from ethereum/natspec-event
...
NatSpec for events
2020-06-29 17:14:00 +02:00
Kamil Śliwak
3f3f8adcb8
CommandLineInterface: In error message about options disallowed in assembly mode only include the names of actually used options
2020-06-29 15:23:13 +02:00
Harikrishnan Mulackal
4146ff9fcf
NatSpec for events
2020-06-26 15:06:43 +05:30
Mathias Baumann
02328f3bbb
Add unit denomination `gwei
`
2020-06-24 18:24:56 +02:00
Kamil Śliwak
a331d4449d
Add linkersymbol() builtin to Yul EVM dialect
2020-06-24 15:06:52 +02:00
Kamil Śliwak
1b09b4f950
Allow Yul literals longer than 32-bytes when used as literal arguments for builtins
2020-06-24 15:05:38 +02:00
chriseth
af0cd4ab98
Merge pull request #9252 from ethereum/develop
...
Merge develop into breaking.
2020-06-23 18:28:24 +02:00
Bhargava Shastry
0397266351
Implement multi source semantic tests
...
Co-authored-by: chriseth <chris@ethereum.org>
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2020-06-23 17:29:16 +02:00
chriseth
e419e904d3
Merge pull request #9215 from a3d4/fix-grammar-pragma-version
...
Fix pragma solidity version in antlr grammar
2020-06-23 12:34:29 +02:00
a3d4
25ebff3a38
Fix pragma solidity version in antlr grammar
2020-06-23 02:25:21 +02:00
chriseth
d67734df6f
Fix error IDs.
2020-06-22 18:56:32 +02:00
chriseth
1441b97131
Merge remote-tracking branch 'origin/develop' into breaking
2020-06-22 18:40:20 +02:00
chriseth
98e5923e3a
Do now disallow assigning to external parameters.
2020-06-22 18:36:32 +02:00
a3d4
1d2ae7d82a
Added error codes to SyntaxTest expectations (changed code)
2020-06-22 16:53:03 +02:00
a3d4
e04cedafc5
Added error codes to SyntaxTest expectations (updated tests)
2020-06-22 16:51:47 +02:00
chriseth
cd2cc76f20
Modules are pure.
2020-06-18 18:28:04 +02:00
chriseth
b00014c51d
Fix source location of yul multi-assignemnt.
2020-06-18 14:31:53 +02:00
chriseth
76468f19fe
Check if using for refers to a library earlier.
2020-06-17 17:45:40 +02:00
chriseth
71cb7551f4
Merge pull request #9208 from ethereum/develop
...
Merge develop into breaking.
2020-06-16 16:11:41 +02:00
Kamil Śliwak
50b426e37b
Update the expected output of command-line tests after wasm changes
2020-06-16 15:36:47 +02:00
chriseth
8e23899886
Merge pull request #9188 from ethereum/refactorNameAndType
...
Refactor name and type resolution in preparation for free functions.
2020-06-16 14:26:52 +02:00
a3d4
5d63fa09e9
Fix false ////- and /***-natspec
2020-06-16 11:15:04 +02:00
chriseth
4b3ae0b206
Merge pull request #9075 from ethereum/commandline-invalid-asm-mode-options
...
Disallow invalid command-line option combinations in assembly mode
2020-06-15 17:33:12 +02:00
chriseth
cc23794575
Merge pull request #8858 from ethereum/fix-8857
...
Add more tests for yul cleanup codegen
2020-06-15 17:18:50 +02:00
Kamil Śliwak
4bd078ed7e
CommandLineInterface: Disallow --output-dir, --gas and --combined-json in assembly mode
2020-06-15 17:12:51 +02:00
Kamil Śliwak
0d7b3ae503
CommandLineInterface: Disallow --yul-dialect and --machine when not in assembly mode
2020-06-15 17:12:51 +02:00
chriseth
8155ad2187
Merge remote-tracking branch 'origin/develop' into breaking
2020-06-15 17:11:41 +02:00
Mathias Baumann
d54e7f50ed
Natspec: Output "type" and "version" in documenation
2020-06-15 14:53:34 +02:00
chriseth
b4c6fdb1ed
Merge pull request #8749 from aarlt/structured-docs-variables-aarlt-breaking
...
[BREAKING] Allow NatSpec comments for state variables.
2020-06-15 14:47:29 +02:00
Leonardo Alt
3c4e286390
[SMTChecker] Replace wrap mod by slack vars
2020-06-12 14:57:21 +02:00
chriseth
07c1167136
Refactor name and type resolution.
2020-06-12 12:18:02 +02:00
Bhargava Shastry
9264135bef
Add tests to validate clearing dirty bits via inline assembly operations
2020-06-12 11:32:15 +02:00
chriseth
0689cda19a
Merge pull request #9116 from ethereum/solYulCleanupFromStorageReference
...
New test for getters.
2020-06-11 14:08:10 +02:00
chriseth
012ba9537b
Merge pull request #9184 from ethereum/fixUsingForStorage
...
Fix using for with explicit reference types.
2020-06-11 14:00:28 +02:00
chriseth
c42373dce4
Merge pull request #9142 from ethereum/wasm-support-for-i32-in-generated-code
...
Add support for types in Wasm AST and code generation
2020-06-11 13:59:44 +02:00
chriseth
5c71b3fbb0
Merge pull request #9173 from ethereum/fixBoundCalldata
...
Fix bound functions with calldata parameters.
2020-06-11 13:31:30 +02:00
chriseth
549c90612c
Fix using for with explicit reference types.
2020-06-11 13:04:41 +02:00
Daniel Kirchner
73cd009b89
Fix struct allocation in Sol->Yul.
2020-06-11 12:16:45 +02:00
chriseth
d4e3491f35
Merge pull request #9177 from ethereum/fixYulStructMemberAccess
...
[Sol -> Yul] Fix struct member access for memory and implement for calldata.
2020-06-11 09:41:04 +02:00
Kamil Śliwak
e67f5072df
Add support for generating code with i32 variables in text and binary wasm
2020-06-11 02:44:23 +02:00
Leonardo
d7f29a33b9
Merge pull request #9096 from ethereum/conversionWarningsLibSol
...
Adding fixes for signedness warnings in libsolidity
2020-06-11 01:06:32 +02:00
Daniel Kirchner
90b66a7362
Fix struct member access for memory and implement for calldata.
2020-06-10 20:01:30 +02:00
chriseth
baabe65a84
Fix bound functions with calldata parameters.
2020-06-10 17:37:59 +02:00
chriseth
2410f0ed5a
Merge pull request #9135 from ethereum/fixReturnParameterLocation
...
Fixing ICE on calling externally a function that returns calldata pointers
2020-06-10 16:44:38 +02:00
Djordje Mijovic
e73fe17277
Fixing ICE on calling externally a function that returns calldata pointers
...
Co-authored-by: chriseth <chris@ethereum.org>
2020-06-10 14:41:45 +02:00
a3d4
51e64fe0b1
Add error IDs to console output
2020-06-10 13:27:25 +02:00
a3d4
b17915a6ba
Add error IDs to JSON
2020-06-10 13:26:51 +02:00
chriseth
6b3171c38b
Merge remote-tracking branch 'origin/develop' into breaking
2020-06-10 11:30:50 +02:00
Djordje Mijovic
c6e4943089
Adding fixes for signedness warnings in libsolidity
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2020-06-10 10:41:55 +02:00
chriseth
81f54a170b
Cleanup from storage.
2020-06-09 14:57:04 +02:00
Harikrishnan Mulackal
d8263d331e
Ignore warnings for yulOptimizer tests
2020-06-09 13:03:57 +02:00
Harikrishnan Mulackal
73e634924e
Warn on YUL switch statement with only default statement
2020-06-09 12:32:53 +02:00
chriseth
2724ce9511
Index access to fixed bytes and byte arrays.
2020-06-09 10:50:28 +02:00
Leonardo
1e8e0ebd13
Merge pull request #9140 from ethereum/wasm-binary-fix-memory-immediate-alignment
...
Fix wrong alignment for Wasm store/load with 8-, 16- and 32-bit arguments
2020-06-09 10:42:21 +02:00
Leonardo Alt
f49e2424b2
[SMTChecker] Erase knowledge when array variable is pushed
2020-06-08 10:23:06 +02:00
Kamil Śliwak
fe0a0802b2
wasm/BinaryTransform: Fix wrong alignment for .load/.store with arguments smaller than 64-bits
2020-06-06 00:00:46 +02:00
Kamil Śliwak
976a0f9395
wasm/BinaryTransform: Don't add an empty local entry in binary wasm if there are no locals
2020-06-05 21:03:06 +02:00
Leonardo
d243f5baac
Merge pull request #9045 from ethereum/smt_fix_tuple
...
[SMTChecker] Fix internal error in tuples of tuples.
2020-06-05 14:21:32 +02:00
Leonardo
731e6466a0
Merge pull request #9067 from ethereum/smt_fix_fp_again
...
[SMTChecker] Fix BMC targets with FP
2020-06-05 12:39:28 +02:00
Daniel Kirchner
0fed2518fc
Merge pull request #9115 from ethereum/moreTestsForGetters
...
More tests for getters.
2020-06-05 12:34:47 +02:00
Leonardo Alt
87ceb72b82
[SMTChecker] Fix internal error in tuples of tuples.
2020-06-05 12:20:47 +02:00
Djordje Mijovic
9b3d1c11ff
yul-phaser: A few more tweaks to ensure that signedness conversions do not cause warnings
...
- Don't cast booleans to int when the result gets assigned to an unsigned type. Relace them with ifs.
- Use unsigned initializer for a variable declared in a lambda capture.
- Unsigned abs() of a difference of unsigned values.
2020-06-04 17:18:07 +02:00
Djordje Mijovic
a49a127627
yul-phaser: Use ptrdiff_t for iterator arithmetic
2020-06-04 17:17:40 +02:00
chriseth
f97b376f7e
Merge pull request #9040 from ethereum/yulproto-remove-pc
...
ossfuzz: Remove PC from yul proto specification
2020-06-04 10:19:26 +02:00
chriseth
259292c884
Merge pull request #9118 from ethereum/develop
...
Merge develop into breaking.
2020-06-04 10:18:46 +02:00
chriseth
010a2246c7
More tests for getters.
2020-06-03 21:47:24 +02:00
chriseth
6b5f83cdfa
Merge pull request #9058 from ethereum/memberAccessSolYul
...
[Sol->Yul] Member access for structs.
2020-06-03 21:19:49 +02:00
chriseth
f38e3a3574
Merge pull request #9056 from ethereum/solYulGetters
...
[Sol->Yul] Implement getters.
2020-06-03 19:08:15 +02:00
chriseth
59fc88ca17
Merge pull request #9092 from ethereum/libEvmasmConversionWarnings
...
Fixing signedness conversion warnings in libevmasm
2020-06-03 18:46:49 +02:00
chriseth
5024985708
Merge pull request #9074 from ethereum/commandline-fix-wasm-crash-if-no-dialect
...
Fix ICE when selecting assembly variant with no Ewasm translation
2020-06-03 14:24:41 +02:00
chriseth
d12db7ec52
Merge pull request #8994 from ethereum/fixInvertedBinaryOp
...
Fix type inversion for shift and exp operators.
2020-06-03 14:11:16 +02:00
chriseth
1f49edd29d
Merge pull request #9039 from ethereum/yul-remove-pc-instr
...
[Yul] remove PC instruction
2020-06-03 14:10:35 +02:00
Mathias Baumann
6f8b5fe53b
Disallow override with non-public state variables
2020-06-03 14:03:26 +02:00
chriseth
c8b9d24eba
Merge pull request #9106 from ethereum/develop
...
Merge develop into breaking.
2020-06-03 13:51:28 +02:00
chriseth
a6c773bd96
Fix type inversion for shift and exp operators.
2020-06-03 13:46:26 +02:00
Djordje Mijovic
e4e3f49844
Fixing signedness conversion warnings in libevmasm
...
Co-authored-by: Harikrishnan Mulackal <webmail.hari@gmail.com>
2020-06-03 13:25:43 +02:00
Christian Parpart
9820df58ab
Remove Yul instruction PC and adapt tests accordingly.
2020-06-03 12:49:23 +02:00
Christian Parpart
c708a1bec2
AsmAnalysis: Fixes a superfluous whitespace in an error string
2020-06-03 12:23:06 +02:00
chriseth
849b16babb
Merge pull request #9095 from ethereum/conversionWarningsLibSolUtil
...
Adding fixes for signedness warnings in libsolutil
2020-06-03 11:10:54 +02:00
chriseth
ebf5a8702f
Merge pull request #9078 from a3d4/fix-tabs-in-formatter
...
Fix tabs in SolcReferenceFormatterHuman
2020-06-03 11:07:39 +02:00
chriseth
e7f3c042b6
Struct member access for storage and memory.
2020-06-03 10:37:39 +02:00
Djordje Mijovic
4b6c322279
Fixing various signedness warnings
2020-06-03 10:37:18 +02:00
chriseth
37e8d78cff
[Sol->Yul] Implement getters.
2020-06-03 10:33:37 +02:00
a3d4
41d8420718
Fix tabs in SolcReferenceFormatterHuman
2020-06-02 21:43:51 +02:00
Leonardo
96ce4abe0e
Merge pull request #9069 from ethereum/smt_try
...
[SMTChecker] Fix internal error on try/catch
2020-06-02 21:09:49 +02:00
chriseth
8ab8d5b1b0
Do not try compiling via yul if explicitly forbidden.
2020-06-02 19:55:33 +02:00
Djordje Mijovic
b4454c4925
Adding fixes for signedness warnings in libsolutil
2020-06-02 19:01:29 +02:00
chriseth
c07254f5ac
Merge pull request #9055 from ethereum/issue-8881
...
Output error when forward referencing constants in inline assembly
2020-06-02 17:10:56 +02:00
chriseth
837e29fff8
Merge pull request #9084 from ethereum/remove-dead-code-from-execution-framework
...
Remove dead code from SolidityExecutionFramework::compileContract()
2020-06-02 17:00:27 +02:00
chriseth
e9212149f5
Merge pull request #9098 from ethereum/conversionWarningsYulInterpreter
...
Adding fixes for signedness warnings in test/tools/yulInterpreter
2020-06-02 16:55:40 +02:00
Leonardo Alt
10162016ae
[SMTChecker] Fix internal error on try/catch
2020-06-02 16:51:53 +02:00
chriseth
9c92562e28
Merge pull request #9059 from ssi91/refactor-interactive-tests
...
Refactor interactive tests
2020-06-02 16:50:31 +02:00
Djordje Mijovic
1ee6c49028
Adding fixes for signedness warnings in test/tools/yulInterpreter
2020-06-02 16:35:41 +02:00
ssi91
79407c87fb
remove extra definition of printIndented
...
add CommonBaseTestCase class and inherit some of TestCase classes from it. Since that, remove print source extra definitions
create the base defifnition for printUpdatedExpectations and remove extra definitions of the method
make CommonBaseTestCase c-tor explicit
include AnsiColorized.h and sort includes
implement a common result checker
move the common implementations into TastCase
2020-06-02 21:15:00 +07:00
Leonardo
97cb091ada
Merge pull request #9068 from ethereum/smt_fix_state_var_init_call
...
[SMTChecker] Relax assertion about callstack
2020-06-02 15:53:14 +02:00
Mathias Baumann
bdc2c63327
Output error when forward referencing constants in inline assembly
2020-06-02 14:37:54 +02:00
Leonardo Alt
ede39fc2da
[SMTChecker] Relax assertion about callstack
2020-06-02 12:50:51 +02:00
Kamil Śliwak
9bb9b6345c
SolidityExecutionFramework: Fix indentation
...
- This code can never be reached because CompilerStack.compile() called above does the same analysis and fails if it's not successful.
2020-06-01 18:25:02 +02:00
Kamil Śliwak
df7b82bf31
SolidityExecutionFramework: Remove dead code for handling errors from parsing and analysis
...
- This code can never be reached because CompilerStack.compile() called above does the same analysis and fails if it's not successful.
2020-06-01 18:24:31 +02:00
Kamil Śliwak
311f025eb5
SolidityExecutionFramework: Fix compileContract() to print Yul errors from the correct source
2020-06-01 18:17:50 +02:00
Kamil Śliwak
ef133aa670
CommandLineInterface: Display an error instead of crashing when assembly variant has no Ewasm translation
2020-05-30 03:09:42 +02:00
Leonardo Alt
2128ff9f13
Fix ICE on push for member access
2020-05-29 19:13:27 +02:00
Leonardo Alt
e5d25692a5
[SMTChecker] Fix BMC targets with FP
2020-05-29 18:13:13 +02:00
chriseth
0b216f5771
Merge pull request #9050 from ethereum/smt_fix_nonvalue_asgn
...
[SMTChecker] Fix ICE on index access assignment inside single branches
2020-05-28 16:25:46 +02:00
chriseth
65d8b6cf75
Merge pull request #9033 from a3d4/partfix-5819-add-errorid-to-error-class
...
Add unique ID to Error class
2020-05-28 16:24:47 +02:00
Leonardo
1051cea91c
Merge pull request #9052 from ethereum/smt_add_test_delete_m_d_array
...
[SMTChecker] Add test that deletes arrays
2020-05-28 16:14:55 +02:00
Leonardo Alt
9b0146be42
Add test
2020-05-28 15:56:47 +02:00
Leonardo Alt
ec766958ea
Add test
2020-05-28 13:14:21 +02:00
Leonardo Alt
13f32268da
[SMTChecker] Add test that shows that deleting arrays takes the index into account
2020-05-28 13:08:16 +02:00
chriseth
f608e50bad
Merge pull request #9029 from ethereum/fewerInternalSourceRefs
...
Do not set source locations for small internal assembly routines.
2020-05-28 11:14:20 +02:00
chriseth
ee8307ceed
Merge pull request #9044 from ethereum/issue-9028
...
Fix failure to find overload resolution when overrides are involved
2020-05-28 10:33:01 +02:00
Bhargava Shastry
61431d2c59
ossfuzz: Remove PC from yul proto specification
2020-05-28 10:09:38 +02:00
a3d4
be83c54d79
Throw TestParserError instead of Error in tests
2020-05-28 02:26:17 +02:00
Leonardo Alt
9e9f0c52e1
[SMTChecker] Support to bitwise
2020-05-27 20:59:00 +02:00
Mathias Baumann
a846c18e67
Fix failure to find overload resolution when overrides are involved
2020-05-27 18:31:56 +02:00
chriseth
eb923af09c
Do not set source locations for small internal assembly routines.
2020-05-27 18:26:46 +02:00
chriseth
894478ff8c
Merge pull request #9038 from ethereum/develop
...
Merge develop into breaking.
2020-05-27 15:24:27 +02:00
chriseth
a06ac0f39f
Merge pull request #8958 from ethereum/evm-version-dependent-rules
...
[yul] Add support for EVM version-dependent rules.
2020-05-27 12:52:51 +02:00
chriseth
afa873fe9f
Merge pull request #8913 from ethereum/yul-remove-pc-instr
...
Mark EVM instruction `pc()` as deprecated when used in inline assembly.
2020-05-27 12:10:32 +02:00
Christian Parpart
b7fa5d5040
Mark EVM instruction pc()
as deprecated when used in inline assembly.
2020-05-27 12:07:23 +02:00
Alexander Arlt
a7b89065ca
[yul] Add support for EVM version-dependent rules.
2020-05-27 11:57:08 +02:00
chriseth
1bf706085d
Merge pull request #9030 from ethereum/issue-8923
...
Fix ICE when trying to decode too large static arrays
2020-05-27 11:45:39 +02:00
chriseth
0aa3fb5026
Merge pull request #9014 from ethereum/sol-yul-abidecode
...
[Sol - Yul] Add support for ABIDecode.
2020-05-27 11:44:13 +02:00
chriseth
f066050ec0
Merge pull request #9024 from ethereum/namableTypes
...
Disallow non-namable types for inline arrays.
2020-05-27 09:21:07 +02:00
Kamil Śliwak
f574d8ec3a
Don't assume that an expression cannot be associated with a function declaration
2020-05-27 00:05:18 +02:00
Alexander Arlt
118cb13476
[Sol - Yul] Add support for ABIDecode.
2020-05-26 13:30:37 -05:00
Mathias Baumann
884e7cbffc
Fix ICE when trying to decode too large static arrays
2020-05-26 19:36:18 +02:00
Alexander Arlt
cb5bfc7436
Update natspec comments on state variables.
...
- changing some warnings to errors
2020-05-26 11:18:24 -05:00
chriseth
d0b6de580f
Disallow non-namable types for inline arrays.
2020-05-26 18:17:35 +02:00
chriseth
50b200a5d5
Merge pull request #8797 from ethereum/sol-yul-populating-internal-dispatch-on-demand
...
[Sol->Yul] Populating internal dispatch on demand
2020-05-26 18:17:05 +02:00
Mathias Baumann
b3cafe4583
Fix ICE by avoiding copyForLocation() on ArraySliceType
2020-05-26 17:27:46 +02:00
Kamil Śliwak
1a2e441bc5
Generate internal dispatch only for functions that might actually get called via pointers
...
- This also adds support for internal library calls as a side-effect since they'll now be pulled into the internal dispatch automatically.
2020-05-26 17:01:50 +02:00
chriseth
c5dbcc9853
Merge pull request #9018 from ethereum/fixLeave
...
Fix implementation of leave.
2020-05-26 11:35:47 +02:00
chriseth
33450619b1
Checks for uninitialized access to calldata variables.
2020-05-26 10:51:13 +02:00
chriseth
fb40a8abb8
Test updates.
2020-05-26 10:51:13 +02:00
chriseth
99194b1450
New tests.
2020-05-26 10:51:13 +02:00
chriseth
bd64e537cb
Fix implementation of leave.
2020-05-26 10:24:01 +02:00
Djordje Mijovic
4c3e78d046
Disallowing shifts by signed types
2020-05-26 10:18:21 +02:00
chriseth
69a028b49c
Merge remote-tracking branch 'origin/develop' into breaking
2020-05-26 10:11:23 +02:00
chriseth
370350da07
Merge pull request #9008 from ethereum/smt_add_test
...
[SMTChecker] Add test that has an unused mapping
2020-05-25 17:04:54 +02:00
chriseth
6d64095ccf
Merge pull request #8987 from ethereum/sol-yul-bound-functions
...
[Sol->Yul] Bound functions
2020-05-25 16:53:33 +02:00
chriseth
8e31c345a8
Merge pull request #8978 from ethereum/disturbance_stack
...
Add proper unipmlemented errors for array copying
2020-05-25 15:34:45 +02:00
Mathias Baumann
7f3d437ffe
Fix caret position for errors with utf source
2020-05-25 14:27:03 +02:00
Mathias Baumann
d45bb2aa07
Add proper unipmlemented errors for array copying
2020-05-25 10:48:42 +02:00
Leonardo Alt
0fda5fe077
[SMTChecker] Add test that has an unused mapping
2020-05-25 10:24:48 +02:00
a3d4
a499ef16fa
Fix spelling errors
2020-05-25 02:54:37 +02:00
Kamil Śliwak
4a2ce57bed
Add support for bound function calls in IR generator
2020-05-20 21:10:20 +02:00
chriseth
74b9b094c0
Merge remote-tracking branch 'origin/develop' into HEAD
2020-05-20 17:22:47 +02:00
chriseth
32bec6b374
Merge pull request #8800 from ethereum/natspec-bugfix
...
[BREAKING] NatSpec bugfix
2020-05-20 17:21:15 +02:00
chriseth
ed0f2d463f
Merge pull request #8453 from imapp-pl/configurable-code-size-metric
...
Configurable CodeSize metric
2020-05-20 17:15:41 +02:00
hrkrshnn
37257548d0
Fixed bug when two empty NatSpec comments led to scanning past EOL
2020-05-20 20:26:02 +05:30
Kamil Śliwak
1fa689e951
[yul-phaser] ProgramCache::calculateTotalCachedCodeSize(): Replace default weights with ones that better correlate with memory usage
2020-05-20 16:47:23 +02:00
Kamil Śliwak
b776021870
[yul-phaser] Command-line options for altering weights used by CodeSize metric
2020-05-20 16:47:23 +02:00
Kamil Śliwak
40dfac7683
[yul-phaser] Require specifying weights for Program::codeSize()
2020-05-20 16:47:23 +02:00
Kamil Śliwak
d199fc537b
Add configurable weights to CodeSize metric
2020-05-20 16:47:23 +02:00
Leonardo
56b5f1bb12
Merge pull request #8976 from ethereum/libsmtutil
...
libsmtutil
2020-05-20 16:14:37 +02:00
hrkrshnn
4a001d568e
Removed null members from JSON output
2020-05-20 16:56:33 +05:30
chriseth
84092edc5d
Merge pull request #8914 from random-internet-cat/down-with-unique-ptr
...
Down with unique_ptr!
2020-05-20 13:22:06 +02:00
Leonardo Alt
45eba27424
Rename namespace
2020-05-20 12:55:18 +02:00
Leonardo Alt
802d66244d
Do not link unnecessarily
2020-05-20 12:55:18 +02:00
Leonardo Alt
087605ea02
Create libsmtutil
2020-05-20 12:55:18 +02:00
chriseth
30278c4b88
Merge pull request #8985 from ethereum/fixWasmLoops
...
Fix webassembly loops by adding explicit break at the end.
2020-05-20 11:08:24 +02:00
chriseth
3c71412a47
Merge pull request #8988 from ethereum/isoltest_default_formatting
...
[isoltest] Improve parameter formatting.
2020-05-20 08:05:33 +02:00
Alexander Arlt
410986e00f
[isoltest] Improve parameter formatting.
2020-05-19 19:13:39 -05:00
chriseth
4e9f6c3508
Fix webassembly loops by adding explicit break at the end.
2020-05-19 22:16:16 +02:00
chriseth
22d5caa979
Merge pull request #8532 from aarlt/structured-docs-variables-aarlt
...
Allow NatSpec comments for state variables
2020-05-19 19:26:35 +02:00
chriseth
d422a406ba
Merge pull request #8983 from ethereum/develop
...
Merge develop into breaking.
2020-05-19 18:05:28 +02:00
Kamil Śliwak
16e80b7bcd
Test case for internal dispatch with functions that have arguments that take up multiple slots
2020-05-19 18:02:14 +02:00
Alexander Arlt
af8bb5fb60
Allow natspec comments on state variables.
2020-05-19 11:01:52 -05:00
Erik Kundt
7d37ed4531
Adds structured docs for variable declarations.
...
- adds natspec generation for state variables.
- exports structured docs for state variables to JSON.
2020-05-19 11:01:52 -05:00
Djordje Mijovic
bd64b971b9
Fixing tests on breaking branch.
2020-05-19 17:42:19 +02:00
chriseth
f70ff0dfaa
Merge pull request #8977 from ethereum/mapping-type-error
...
Error when Mapping type in (non-local) storage is assigned to
2020-05-19 16:52:54 +02:00
Harikrishnan Mulackal
774edd4670
Error when Mapping type in (non-local) storage is assigned to
2020-05-19 19:12:38 +05:30
chriseth
3b27b4347c
Merge pull request #8916 from ethereum/smt_array_push_pop
...
[SMTChecker] Support array push/pop
2020-05-19 15:41:10 +02:00
chriseth
3211e22045
Merge pull request #8979 from ethereum/doc-json
...
[Trival] Test: Output JSON AST as array when it involves multiple sources
2020-05-19 15:29:24 +02:00
chriseth
3275243c89
Merge pull request #8898 from mijovic/sol2YulByteArrayPush
...
[Sol->Yul] Implementing ByteArray push() and pop()
2020-05-19 15:28:01 +02:00
Djordje Mijovic
d235d0c166
[Sol->Yul] Implementing Byte array push() and pop()
2020-05-19 14:47:00 +02:00
Mathias Baumann
5a7217b90e
Test: Output JSON AST as array when it involves multiple sources
2020-05-19 14:26:08 +02:00
Leonardo Alt
1ab6ad79d8
Update test expectation
2020-05-18 16:59:31 +02:00
Leonardo Alt
2435ab938c
Add verification target for empty pop
2020-05-18 16:35:56 +02:00
Leonardo Alt
d4d26c02e4
Assume that push will not overflow
2020-05-18 16:35:56 +02:00
Jason Cobb
63ad1092cd
Add comment to filenames in boostTest.cpp
2020-05-18 10:24:38 -04:00
chriseth
f92a4f1965
Provide runtime object in Yul mode.
2020-05-18 13:48:23 +02:00