Alex Beregszaszi
|
3bc2c35cc4
|
Support compiling Yul within StandardCompiler
|
2019-03-22 01:35:16 +00:00 |
|
Alex Beregszaszi
|
ed1ad2fc14
|
Merge pull request #6317 from ethereum/byte_optimization_bugfix
Fixes bug in byte optimization rule and adds tests.
|
2019-03-21 21:49:34 +00:00 |
|
Leonardo Alt
|
2ae778bf0a
|
[SMTChecker] Add buggy short circuit test
|
2019-03-21 18:47:14 +01:00 |
|
Bhargava Shastry
|
f7b5a27581
|
Fixes bug in byte optimization rule and adds tests.
|
2019-03-21 14:29:06 +01:00 |
|
chriseth
|
d381e26fc8
|
Rename "enabled" optimizer setting stage to "standard".
|
2019-03-21 11:04:40 +01:00 |
|
Mathias Baumann
|
8e899a0d32
|
Disallow internal function types as parameters for public/external library function
|
2019-03-21 07:25:57 +01:00 |
|
chriseth
|
064f73be0c
|
Merge pull request #6249 from ethereum/optimizerTests
Change optimizer tests so that they also always test the peephole optimizer.
|
2019-03-20 18:38:06 +01:00 |
|
chriseth
|
9aab2329ed
|
Merge pull request #6244 from ethereum/smt_modifiers
[SMTChecker] Support modifiers
|
2019-03-20 18:04:28 +01:00 |
|
chriseth
|
d788a88873
|
Use "none" and "full" optimizer settings in the optimizer tests.
|
2019-03-20 16:11:37 +01:00 |
|
chriseth
|
2fd6661b09
|
Add tests for some optimizer rules.
|
2019-03-20 16:10:59 +01:00 |
|
Mathias Baumann
|
84b68006ba
|
Fix function calls with named arguments for overloaded functions
|
2019-03-20 14:54:41 +01:00 |
|
Leonardo Alt
|
9659f40c8d
|
[SMTChecker] Support modifiers
|
2019-03-20 11:32:20 +01:00 |
|
chriseth
|
4d89fc1644
|
Merge pull request #6320 from ethereum/callvalue_nonpayable
Inline Assembly: Issue error for callvalue in nonpayable function
|
2019-03-20 10:07:09 +01:00 |
|
Leonardo Alt
|
0386d39942
|
Add test with internal function
|
2019-03-19 20:45:27 +01:00 |
|
Leonardo Alt
|
9acec99c31
|
Issue error for callvalue in nonpayable function
|
2019-03-19 20:45:27 +01:00 |
|
chriseth
|
87ebb16890
|
Use ABI_CHECK for event data comparison.
|
2019-03-19 17:23:50 +01:00 |
|
Daniel Kirchner
|
a178486436
|
Review suggestions.
|
2019-03-18 14:34:00 +01:00 |
|
Daniel Kirchner
|
4a28e1eb43
|
Support EVM Version rules for extracted tests.
|
2019-03-15 17:23:20 +01:00 |
|
chriseth
|
308e3ef1cd
|
Add test for standard compiler.
|
2019-03-14 15:34:23 +01:00 |
|
chriseth
|
49d914a391
|
Fix and test yul stack optimization flag for commandline interface.
|
2019-03-14 15:34:23 +01:00 |
|
chriseth
|
6d1ed93247
|
Use stack optimizations.
|
2019-03-14 15:34:23 +01:00 |
|
Erik Kundt
|
b9a7a88346
|
Improves Result<T> in order to prevent defects.
|
2019-03-14 14:33:28 +01:00 |
|
Erik Kundt
|
6ac5c52528
|
Implements merging of Result<T>.
|
2019-03-14 14:33:28 +01:00 |
|
Erik Kundt
|
ac5f860df9
|
Fixes hex string update via isoltest.
|
2019-03-14 11:01:26 +01:00 |
|
Erik Kundt
|
2a536911f2
|
Prints returned / expected byte ranges if conversion failed.
|
2019-03-13 17:45:02 +01:00 |
|
chriseth
|
2896d6176b
|
Merge pull request #6120 from ethereum/soltest-hex-strings
[soltest] Add support for hex string literals
|
2019-03-13 14:12:32 +01:00 |
|
Erik Kundt
|
25ddf85d95
|
Adds support for hex string literals in soltest.
|
2019-03-13 12:37:33 +01:00 |
|
chriseth
|
58a3f3cf68
|
Merge pull request #6248 from ethereum/shiftopt-fix-overflow
Fixes u256 overflow in logical shift optimization rule and adds tests.
|
2019-03-13 12:02:33 +01:00 |
|
Bhargava Shastry
|
515fa872c8
|
Fixes u256 overflow in logical shift optimization rule and adds tests.
|
2019-03-13 11:19:20 +01:00 |
|
Erik Kundt
|
39c45ac8ed
|
Moves ecrecover tests to isoltest.
|
2019-03-13 10:53:10 +01:00 |
|
chriseth
|
8445449c7f
|
Merge pull request #6187 from ethereum/filter-library-abi-3409
Exclude internal functions in library ABIs
|
2019-03-11 17:39:51 +01:00 |
|
chriseth
|
6683ec90ca
|
Merge pull request #6209 from ethereum/dynamicCalldataStructs
Allow dynamically encoded calldata structs with ABIEncoderV2.
|
2019-03-11 17:05:34 +01:00 |
|
Daniel Kirchner
|
66fc7ffab2
|
Allow dynamically encoded calldata structs with ABIEncoderV2.
|
2019-03-11 16:40:13 +01:00 |
|
Mathias Baumann
|
fbbd03dbd7
|
Exclude internal functions in library ABIs
|
2019-03-11 16:33:44 +01:00 |
|
Mathias Baumann
|
e411a502fd
|
Fix missing trailing dot in error message
|
2019-03-11 16:15:18 +01:00 |
|
Daniel Kirchner
|
f805939429
|
Merge pull request #6221 from ethereum/soltest-signature-struct-arrays
[soltest] Allow struct array in function signatures
|
2019-03-11 15:32:42 +01:00 |
|
Alex Beregszaszi
|
859f905b2e
|
Merge pull request #6237 from ethereum/smt_merkle_proof_test
[SMTChecker] Add MerkleProof test that used to crash
|
2019-03-11 15:17:46 +01:00 |
|
chriseth
|
0f98f2a15e
|
Merge pull request #6236 from ethereum/better-errors
isImplicitlyConvertibleTo(): Add better error messages
|
2019-03-11 14:58:45 +01:00 |
|
Erik Kundt
|
cd9c0914cb
|
Allows struct array in soltest function.
|
2019-03-11 14:36:16 +01:00 |
|
Alex Beregszaszi
|
6718b62f94
|
Merge pull request #6233 from ethereum/metadata-tests
Improve metadata tests (add CBOR parser)
|
2019-03-11 14:35:04 +01:00 |
|
Leonardo Alt
|
365b59b1f9
|
Add MerkleProof test that used to crash
|
2019-03-11 14:29:47 +01:00 |
|
Mathias Baumann
|
d70cb375cf
|
isImplicitlyConvertibleTo(): Add better error messages
|
2019-03-11 13:38:02 +01:00 |
|
Alex Beregszaszi
|
67c15a208d
|
Use CBOR parser in metadata tests
|
2019-03-11 13:01:37 +01:00 |
|
Leonardo Alt
|
a8209e9899
|
[SMTChecker] Shortcut RationalNumber expressions
|
2019-03-11 12:53:49 +01:00 |
|
Alex Beregszaszi
|
12f34c8229
|
Add onlyMetadata helper in test/Metadata
|
2019-03-09 12:34:26 +01:00 |
|
chriseth
|
5c4a3aa270
|
Merge pull request #6213 from ethereum/iszeroJump
Peephole optimizer for "iszero iszero <tag> jumpi".
|
2019-03-07 18:16:29 +01:00 |
|
chriseth
|
0eb799424d
|
Merge pull request #6183 from ethereum/soltest-alignment
[soltest] Introduce explicit alignment
|
2019-03-07 17:43:59 +01:00 |
|
chriseth
|
e0d1b2f5b3
|
Peephole optimizer for "iszero iszero <tag> jumpi".
|
2019-03-07 15:52:02 +01:00 |
|
Leonardo Alt
|
02d0e609b9
|
[SMTChecker] Support enums
|
2019-03-07 15:15:12 +01:00 |
|
chriseth
|
8d9be8bb6d
|
Merge pull request #6211 from ethereum/fixFormatting
Fix formatting and compilation error.
|
2019-03-06 22:55:02 +01:00 |
|
chriseth
|
aa062221bb
|
Tabs, not spaces!
|
2019-03-06 21:32:10 +01:00 |
|
chriseth
|
0f7b1b31a1
|
Merge pull request #5996 from ethereum/calldataArrays
Allow calldata arrays with dynamically encoded base type.
|
2019-03-06 19:55:57 +01:00 |
|
Erik Kundt
|
a40fbf0fc4
|
Right-aligns hex numbers and introduces alignment built-ins.
|
2019-03-06 18:24:13 +01:00 |
|
chriseth
|
3ccf73b3eb
|
Merge pull request #6204 from ethereum/soltest-signature-arrays
[soltest] Add support for arrays in function signatures
|
2019-03-06 18:12:39 +01:00 |
|
Daniel Kirchner
|
e3148b5c45
|
Tests for arrays with dynamically encoded base types.
|
2019-03-06 18:04:24 +01:00 |
|
Daniel Kirchner
|
f7c6eda2c3
|
Allow calldata arrays with dynamically encoded base type.
|
2019-03-06 18:04:12 +01:00 |
|
chriseth
|
cdf29277f7
|
Merge pull request #6055 from ethereum/smt_arrays
[SMTChecker] Add support to arrays
|
2019-03-06 18:00:23 +01:00 |
|
Erik Kundt
|
ab31c28ed9
|
Adds support for arrays in function signatures.
|
2019-03-06 16:47:00 +01:00 |
|
Leonardo Alt
|
29b2ab6f66
|
Handle aliasing
|
2019-03-06 11:29:54 +01:00 |
|
Leonardo Alt
|
cb6c2b33f8
|
Add tests
|
2019-03-06 11:29:26 +01:00 |
|
Leonardo Alt
|
e74f58130e
|
Add SMT type support to Solidity arrays
|
2019-03-06 11:29:26 +01:00 |
|
Mathias Baumann
|
9919670ddd
|
Check base contracts for abi encoder compatibility
|
2019-03-06 11:16:54 +01:00 |
|
chriseth
|
6c9961e040
|
Merge pull request #5941 from ethereum/metadata-compilerstack
Metadata should not require compilation
|
2019-03-04 18:53:07 +01:00 |
|
Alex Beregszaszi
|
fcbb8ec51c
|
Allow returning metadata in StandardCompiler without compilation
|
2019-03-04 16:19:55 +01:00 |
|
chriseth
|
9a949c1bda
|
Set default EVM version to Petersburg.
|
2019-03-04 14:53:00 +01:00 |
|
Alex Beregszaszi
|
ecd246aeb6
|
Support petersburg in evmVersion
|
2019-03-04 14:10:41 +01:00 |
|
chriseth
|
2e0ea16a0f
|
Merge pull request #5959 from ethereum/optimiser2
Introduce global optimiser settings.
|
2019-03-04 12:54:59 +01:00 |
|
chriseth
|
5490a5cd37
|
Merge pull request #6115 from ethereum/fixUnavailableOpcodes
Make unavailable opcodes errors.
|
2019-03-04 12:26:22 +01:00 |
|
chriseth
|
43850d55f3
|
Update tests.
|
2019-03-04 11:44:54 +01:00 |
|
chriseth
|
851dd635eb
|
Remove defaults in constructor arguments.
|
2019-03-04 11:41:52 +01:00 |
|
chriseth
|
4d10f4b4cf
|
Process and validate standard-json optimizer settings.
|
2019-03-04 11:40:28 +01:00 |
|
Alex Beregszaszi
|
cf5c13f9c7
|
Introduce global optimiser settings.
|
2019-03-04 11:40:28 +01:00 |
|
chriseth
|
8f5e12c192
|
Make unavailable opcodes errors.
|
2019-02-28 22:20:01 +01:00 |
|
Alex Beregszaszi
|
c3ab43dca7
|
Remove blockhash workaround in tests
This is now obsolete as final constantinople doesn't contain the blockhash EIP.
Revert 3e55aa3fa2 .
|
2019-02-28 21:17:58 +00:00 |
|
chriseth
|
ab33ff1408
|
Merge pull request #6132 from ethereum/ossfuzz-nullref-typechecker
TypeChecker: Check if type exists before dereferencing it
|
2019-02-28 16:38:54 +01:00 |
|
Mathias Baumann
|
50b4193705
|
TypeChecker: Check if type exists before dereferencing it
|
2019-02-28 15:49:15 +01:00 |
|
chriseth
|
6aab3b1369
|
Merge pull request #6139 from ethereum/compilerstack-restrict
Restrict the state when settings can be altered in CompilerStack
|
2019-02-28 14:52:52 +01:00 |
|
Alex Beregszaszi
|
b04b86a938
|
Restrict the state when settings can be altered in CompilerStack
|
2019-02-28 12:55:36 +00:00 |
|
Mathias Baumann
|
f782125463
|
Fix SMT Checker crash due to missing type information
|
2019-02-28 11:55:45 +01:00 |
|
Erik Kundt
|
e13bb994fb
|
Fix ambiguous type on Windows.
|
2019-02-27 10:40:58 +01:00 |
|
chriseth
|
ebec54aacb
|
Merge pull request #6093 from ethereum/mapping-string-keys
Allow dynamic types in public mappings
|
2019-02-26 17:05:18 +01:00 |
|
chriseth
|
4e74c508ce
|
Merge pull request #6089 from ethereum/extcodehash
Consider extcodehash as part of Constantinople
|
2019-02-26 17:04:01 +01:00 |
|
Mathias Baumann
|
e4a52aa2f6
|
Allow dynamic types in public mappings
|
2019-02-26 15:48:54 +01:00 |
|
Alex Beregszaszi
|
d2f493268b
|
Provide access to the name of contracts.
|
2019-02-26 14:07:03 +00:00 |
|
Alex Beregszaszi
|
cb7b053a4a
|
Consider extcodehash as part of Constantinople
|
2019-02-26 12:40:31 +00:00 |
|
Erik Kundt
|
3076d80480
|
Adds syntax test that covers arrays of contracts.
|
2019-02-25 23:05:33 +00:00 |
|
Erik Kundt
|
2d0daae796
|
Disallows index access on contracts and libraries.
|
2019-02-25 23:05:33 +00:00 |
|
Alex Beregszaszi
|
a498062816
|
Fix gas test after using shifts in constant optimiser
|
2019-02-25 19:44:47 +00:00 |
|
chriseth
|
7a2645f7d2
|
Merge pull request #6079 from ethereum/shift-tests
Add more test cases for shifts with constants
|
2019-02-25 16:28:06 +01:00 |
|
Alex Beregszaszi
|
7d52884247
|
Add more test cases for shifts with constants
|
2019-02-25 14:44:30 +00:00 |
|
Leonardo Alt
|
2405b2151a
|
EVMVersion in langutil namespace instead of solidity
|
2019-02-25 15:29:57 +01:00 |
|
Erik Kundt
|
f683ceb3f8
|
Adds support for boolean literals in soltest.
|
2019-02-21 23:28:48 +01:00 |
|
chriseth
|
773a3ff880
|
Merge pull request #6036 from ethereum/soltest-hexliterals
[soltest] Add support for left-aligned hex literals
|
2019-02-21 19:11:27 +01:00 |
|
chriseth
|
13667d42ec
|
Merge pull request #6067 from ethereum/asm-parser-fatal
Do not ignore fatal error in AsmParser for inline assembly
|
2019-02-21 18:12:13 +01:00 |
|
Alex Beregszaszi
|
fcf884f201
|
Do not ignore fatal error in AsmParser for inline assembly
|
2019-02-21 16:18:53 +00:00 |
|
Erik Kundt
|
d40928f5fc
|
Adds support for hex literals in soltest.
|
2019-02-21 17:04:40 +01:00 |
|
chriseth
|
98012135c6
|
Merge pull request #6060 from ethereum/soltest-formatting
[soltest] Create dedicated formatting
|
2019-02-21 16:43:50 +01:00 |
|
Erik Kundt
|
d1ad431887
|
Moves soltest function call to separate class.
|
2019-02-21 16:39:31 +01:00 |
|
chriseth
|
15d275ed37
|
Merge pull request #6023 from ethereum/assignment-whitespace-op
Add extra token for assembly assignment
|
2019-02-21 14:43:29 +01:00 |
|
Mathias Baumann
|
f395d5bab4
|
Add extra token for assembly assignment
Adding an extra token for := prevents whitespace between : = being valid
|
2019-02-21 13:58:21 +01:00 |
|
chriseth
|
27d936cf44
|
Merge pull request #5102 from ethereum/abiencoderv2-tests
Run all end-to-end tests with ABIEncoderV2
|
2019-02-21 13:11:06 +01:00 |
|
chriseth
|
8ace2c5b11
|
Special treatment for differences between ABI encoders.
|
2019-02-21 11:11:29 +00:00 |
|
Erik Kundt
|
6c7ad42e2d
|
Shares langutil code with soltest.
|
2019-02-21 01:04:34 +01:00 |
|
Alex Beregszaszi
|
219406f45b
|
Add CLI option to soltest to always use ABIEncoderV2
|
2019-02-20 16:55:19 +01:00 |
|
chriseth
|
b14d22d11e
|
Tests for events with structs in libraries.
|
2019-02-20 14:35:02 +01:00 |
|
chriseth
|
0613c69c4a
|
Merge pull request #6043 from ethereum/asm-jump-invalidlabel
Proper error message for missing variables in inline assembly
|
2019-02-20 14:32:40 +01:00 |
|
chriseth
|
fcd82025de
|
Merge pull request #6046 from ethereum/smt_division_tests
[SMTChecker] Move tests that contain division to boost tests
|
2019-02-20 14:29:15 +01:00 |
|
Leonardo Alt
|
123d0857c5
|
[SMTChecker] Move tests that contain division to boost tests
|
2019-02-20 12:17:03 +01:00 |
|
Alex Beregszaszi
|
687522a2f5
|
Move inline assembly tests from nameAndTypeResolution to inlineAssembly
|
2019-02-20 11:00:02 +00:00 |
|
Alex Beregszaszi
|
52496ea719
|
Proper error message for missing variables in inline assembly
|
2019-02-20 10:36:55 +00:00 |
|
Mathias Baumann
|
a63f7ca9df
|
Fix crash due to missing type info
|
2019-02-19 17:28:44 +01:00 |
|
chriseth
|
d9e4a10d5a
|
Merge pull request #6000 from ethereum/fixECRecoverABIV2
Fixed internal error related to ecrecover and ABIEncoderV2.
|
2019-02-19 14:36:08 +01:00 |
|
chriseth
|
874648b924
|
Merge pull request #5999 from ethereum/smt_lazy_overflow
[SMTChecker] Check for under/overflow in the end of the function
|
2019-02-19 14:28:55 +01:00 |
|
chriseth
|
05541e5adb
|
Fixed internal error related to ecrecover and ABIEncoderV2.
|
2019-02-19 14:17:03 +01:00 |
|
chriseth
|
d5791fef41
|
Fix combination of delegatecall and ABIEncoderV2.
We can set the flag to false for bare delegatecall, because we always
send a memory string and never a storage reference.
|
2019-02-19 13:57:03 +01:00 |
|
chriseth
|
55c4131a03
|
Merge pull request #6030 from ethereum/fixABIEncoderV2Mapping
Allow cleanup for mappings (do nothing).
|
2019-02-19 13:56:21 +01:00 |
|
Leonardo Alt
|
34470f3549
|
[SMTChecker] Only check for overflow/underflow in the end of the function
|
2019-02-18 23:55:58 +01:00 |
|
Alex Beregszaszi
|
2949bd14dd
|
Merge pull request #6028 from ethereum/warn-about-unused-struct-array-expr
Detect custom type expressions that have no effect
|
2019-02-18 21:12:04 +00:00 |
|
Mathias Baumann
|
e3d4155fa8
|
Detect custom type expressions that have no effect
|
2019-02-18 18:59:31 +01:00 |
|
chriseth
|
c690f679cb
|
Allow cleanup for mappings (do nothing).
|
2019-02-18 18:50:22 +01:00 |
|
chriseth
|
968ca88690
|
Merge pull request #5872 from ethereum/semantic-tests-split
Semantic test infrastructure
|
2019-02-18 18:13:55 +01:00 |
|
chriseth
|
1b6d87c5bd
|
Merge pull request #5979 from ethereum/fix-context-for-hint
Make sure "value" error hint is only displayed in the right context
|
2019-02-18 17:35:31 +01:00 |
|
chriseth
|
e88765f936
|
Merge pull request #6022 from ethereum/fixFunctionScoping
Properly detect name clashes with functions before their definition.
|
2019-02-18 16:47:21 +01:00 |
|
Mathias Baumann
|
ee9394b4aa
|
Move 'warnUnused' tests to subfolder
|
2019-02-18 16:42:58 +01:00 |
|
Mathias Baumann
|
093b9ced97
|
Make sure "value" error hint is only displayed in the right context
Before, the hint would be shown for any "value" member, even a user-specified one.
|
2019-02-18 16:29:57 +01:00 |
|
chriseth
|
cb0ad2266c
|
Merge pull request #6008 from ethereum/smt_fix_abstract_assignment
[SMTChecker] Assert type is not function when assigning
|
2019-02-18 14:54:20 +01:00 |
|
chriseth
|
b4cd2d6a93
|
Properly detect name clashes with functions before their definition.
|
2019-02-18 14:51:05 +01:00 |
|
chriseth
|
db7b38e3c4
|
Merge pull request #5978 from ethereum/fix-broken-hint
Fix error msg hint for non-payable contracts
|
2019-02-18 11:49:07 +01:00 |
|
Erik Kundt
|
dacad629ef
|
Adds semantic tests to test framework and isoltest.
|
2019-02-15 13:27:15 +01:00 |
|
Mathias Baumann
|
419a12db03
|
TypeChecker: Add test to increase coverage
|
2019-02-14 13:41:33 +01:00 |
|
Leonardo Alt
|
22cdfb18d4
|
[SMTChecker] Assert type is not function when assigning
|
2019-02-14 13:32:56 +01:00 |
|
Mathias Baumann
|
10a9960eb3
|
Fix error msg hint for non-payable contracts
|
2019-02-14 11:39:19 +01:00 |
|
chriseth
|
c5879589af
|
Merge pull request #5998 from ethereum/codingStyleCheck
More coding style checks
|
2019-02-13 17:36:34 +01:00 |
|
chriseth
|
17ea467e5b
|
Fix style of "const".
|
2019-02-13 16:34:53 +01:00 |
|
Mathias Baumann
|
1e603c27ea
|
Add tests to increase TypeChecker.cpp coverage
|
2019-02-13 16:31:26 +01:00 |
|
Mathias Baumann
|
6a6cc27b71
|
Rename & move tests of group typeChecking to subfolder
|
2019-02-13 15:52:31 +01:00 |
|
Erik Kundt
|
190634e1f9
|
Implements infrastructure for semantic tests.
|
2019-02-13 13:05:58 +01:00 |
|
chriseth
|
0bd049c849
|
Adapet uses of AssemblyStack.
|
2019-02-13 12:23:07 +01:00 |
|
chriseth
|
9ab72f0188
|
Merge pull request #5971 from ethereum/overloadedEvents
More tests for overloaded events.
|
2019-02-12 12:00:02 +01:00 |
|
chriseth
|
091bbdb459
|
More tests for overloaded events.
|
2019-02-12 10:54:58 +01:00 |
|
chriseth
|
0b392fff7e
|
Merge pull request #5968 from ethereum/calldataArrays
Disallow calldata arrays with dynamically encoded base types in TypeChecker.
|
2019-02-11 18:08:10 +01:00 |
|
Daniel Kirchner
|
9e32aa7510
|
Disallow calldata arrays with dynamically encoded base types in TypeChecker.
|
2019-02-11 17:13:12 +01:00 |
|
chriseth
|
91d224dfb6
|
Merge pull request #5966 from ethereum/AnsiColorized
Adapts tests/ to use AnsiColorized (the generalized/moved version of FormattedScope, which in turn is removed in this PR)
|
2019-02-11 16:41:14 +01:00 |
|
chriseth
|
92cb6cb793
|
Merge pull request #5936 from ethereum/calldataStructsV2
ABIEncoderV2: Implement calldata structs without dynamically encoded members.
|
2019-02-11 16:18:27 +01:00 |
|
Christian Parpart
|
53f9be8a23
|
Adapts tests/ to use AnsiColorized (the generalized/moved version of FormattedScope, which in turn is removed in this PR)
|
2019-02-11 16:00:24 +01:00 |
|
Mathias Baumann
|
259d803387
|
Conditional Expression: Delay invalid type fatal error
Check the whole conditional first and then output errors for
both, the true and false expressions.
|
2019-02-11 15:47:19 +01:00 |
|
Mathias Baumann
|
08977af843
|
Rename & move test to move away from number prefix
|
2019-02-11 15:47:19 +01:00 |
|
Daniel Kirchner
|
0e4912a203
|
ABIEncoderV2: Implement calldata structs without dynamically encoded members.
|
2019-02-11 15:46:58 +01:00 |
|
chriseth
|
b5a2c66771
|
Merge pull request #5957 from ethereum/function-param-fix
Ensure function parameter names always matches parameter types length
|
2019-02-11 15:45:28 +01:00 |
|
Mathias Baumann
|
66b24225fb
|
Remove duplicate if-check
|
2019-02-11 14:56:57 +01:00 |
|
chriseth
|
49cd55d3a0
|
Merge pull request #5839 from ethereum/inplaceEncoding
Inplace and non-padded encoding for ABIEncoderV2.
|
2019-02-11 12:01:28 +01:00 |
|
Mathias Baumann
|
fe2429de9f
|
Packed Encoding: Disallow types in v2 that aren't allowed in v1
|
2019-02-11 11:37:48 +01:00 |
|
chriseth
|
227addfcef
|
Syntax tests.
|
2019-02-11 11:37:48 +01:00 |
|
chriseth
|
7684d886ae
|
Semantic tests.
|
2019-02-11 11:37:47 +01:00 |
|
Mathias Baumann
|
feae01f042
|
Add tests to increase coverage of TypeChecker
|
2019-02-11 11:23:56 +01:00 |
|
Mathias Baumann
|
d41ffd1dcf
|
Rename & move tests to get rid of old number prefix in name
|
2019-02-11 11:23:20 +01:00 |
|
Daniel Kirchner
|
9203363fe9
|
Merge pull request #5860 from ethereum/test-file-parser
Test file parser.
|
2019-02-07 19:02:13 +01:00 |
|
Mathias Baumann
|
ee28cb65a6
|
Add tests to increase coverage of TypeChecker
|
2019-02-06 20:45:30 +01:00 |
|
Erik Kundt
|
c9c4578023
|
Adds support for tuples in test file parser.
|
2019-02-06 17:25:40 +01:00 |
|
Erik Kundt
|
161b22bd13
|
Cleans up test file parser and its tests.
|
2019-02-06 17:22:40 +01:00 |
|
Erik Kundt
|
7fa167977b
|
Adds multi-line support for test file parser.
|
2019-02-06 17:22:40 +01:00 |
|
Erik Kundt
|
f90c6f57bb
|
Implements a test file parser.
|
2019-02-06 17:22:40 +01:00 |
|
chriseth
|
231cec56c6
|
Merge pull request #5926 from ethereum/inv-num-crash
Fix crash for too large struct array indicies
|
2019-02-06 14:11:25 +01:00 |
|
Mathias Baumann
|
9f431339ef
|
Fix crash for too large struct array indicies
|
2019-02-06 11:50:25 +01:00 |
|
Alex Beregszaszi
|
26de5684a2
|
Move bytecodeSansMetadata(bytes) helper to test/Metadata
|
2019-02-05 23:13:01 +00:00 |
|
Alex Beregszaszi
|
be22032141
|
Clean up some includes in tests
|
2019-02-05 22:58:43 +00:00 |
|
Alex Beregszaszi
|
3cdcd06b66
|
Add last test case for callbacks in libsolc
|
2019-02-05 20:26:47 +00:00 |
|
chriseth
|
263eaaa516
|
Merge pull request #5937 from ethereum/libsolc-callback-test
Add test cases for libsolc with callbacks
|
2019-02-05 21:11:44 +01:00 |
|
chriseth
|
438e19aa0f
|
Merge pull request #5931 from ethereum/fix-mapping-storage-check
Fix check that mappings can only have storage location
|
2019-02-05 21:03:20 +01:00 |
|
Alex Beregszaszi
|
257dbf1f6a
|
Add test cases for libsolc with callbacks
|
2019-02-05 19:34:56 +00:00 |
|
Alex Beregszaszi
|
e9a0d99218
|
Add optimiser test for triggering CopyMethod in ConstantOpimiser
|
2019-02-05 18:44:53 +00:00 |
|
Mathias Baumann
|
77f407d450
|
Fix check that mappings can only have storage location
|
2019-02-05 18:06:42 +01:00 |
|
Alex Beregszaszi
|
554511b68e
|
Introduce solidity_free in libsolc
|
2019-01-31 15:53:55 +00:00 |
|
chriseth
|
35483422f3
|
Pad code to multiple of 32 bytes.
|
2019-01-30 11:31:28 +01:00 |
|
Alex Beregszaszi
|
9aafa32825
|
Disallow empty import statements
|
2019-01-28 13:52:15 +00:00 |
|
chriseth
|
14b553897e
|
Tests.
|
2019-01-23 11:13:24 +01:00 |
|
Leonardo Alt
|
7f8ceaadab
|
[SMTChecker] Clear state knowledge after external function calls
|
2019-01-21 12:58:40 +01:00 |
|
chriseth
|
f8e9aed839
|
Merge pull request #5717 from ethereum/smt_typecast
[SMTChecker] Support basic typecast without truncation
|
2019-01-21 12:35:07 +01:00 |
|
Daniel Kirchner
|
610ef9f199
|
Disallow calldata structs.
|
2019-01-21 10:30:57 +01:00 |
|
chriseth
|
2ec997e697
|
Merge pull request #5775 from ethereum/codeAccess
Provide access to code of contract types.
|
2019-01-18 00:16:06 +01:00 |
|
chriseth
|
2a0d4f358c
|
Add test for content of creationCode and runtimeCode.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
fed56f33d5
|
Type is not reserved anymore.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
4669b06ab4
|
Warn if type(..).runtimeCode is used with assembly in the constructor.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
e6fee257e6
|
Code generation for access to contract code.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
2fcfb216b5
|
Syntax for meta type information.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
44237211d1
|
Tests.
|
2019-01-17 20:36:48 +01:00 |
|
Leonardo Alt
|
83e7233bb8
|
Change error message and add tests
|
2019-01-17 14:28:03 +01:00 |
|
Leonardo Alt
|
a10db051de
|
[SMTChecker] Support basic typecast
|
2019-01-16 13:00:54 +01:00 |
|
Daniel Kirchner
|
4c8f8e9491
|
Disallow mismatching types in switch cases and detect duplicates by value for number literals.
|
2019-01-15 16:32:21 +01:00 |
|
Daniel Kirchner
|
0dfd4a726e
|
Warn about unreachable code.
|
2019-01-10 10:36:50 +01:00 |
|
chriseth
|
ae08d7c375
|
Merge pull request #5681 from ethereum/limitOutput
Do not compile unless requested.
|
2018-12-19 17:02:28 +01:00 |
|
chriseth
|
4c7151e57f
|
Do not include empty JSON objects in output.
|
2018-12-19 14:59:29 +01:00 |
|
Christian Parpart
|
62fe57479e
|
make use of C++ = default constructor declarations as well as more non-static member initialization syntax.
|
2018-12-19 11:26:42 +01:00 |
|
Christian Parpart
|
d10bae245e
|
liblangutil: SourceLocation to default initialize data members (w/o the use of ctor)
See: http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#c45-dont-define-a-default-constructor-that-only-initializes-data-members-use-in-class-member-initializers-instead
|
2018-12-19 11:21:45 +01:00 |
|
Alex Beregszaszi
|
bd2f2ecbbd
|
Move unsatisfied_version test from SolidityNameAndTypeResolution to SolidityParser
|
2018-12-18 15:02:59 +00:00 |
|
Alex Beregszaszi
|
ba15bc0a23
|
Fail if parsing failed in AnalysisFramework
Otherwise Compilerstack::analyze will throw an exception.
|
2018-12-18 15:02:37 +00:00 |
|
Alex Beregszaszi
|
c2ec6d71b4
|
Add version pragma parsing to Parser
|
2018-12-18 15:02:35 +00:00 |
|
Mathias Baumann
|
1b8570f829
|
Only generate sort/search code when interface functions exist
|
2018-12-17 21:24:37 +01:00 |
|
Leonardo Alt
|
9199718ec0
|
Clear all mapping knowledge after array variable assignment
|
2018-12-14 12:21:53 +01:00 |
|
Leonardo Alt
|
6a2809a582
|
[SMTChecker] Support to mapping
|
2018-12-14 12:21:53 +01:00 |
|
chriseth
|
17bf164afe
|
Merge pull request #4951 from ethereum/alethUpdates
Use current aleth release for testing.
|
2018-12-12 18:41:35 +01:00 |
|
Daniel Kirchner
|
123d33ad41
|
Add tolerance to gas meter tests.
|
2018-12-12 17:24:56 +01:00 |
|
chriseth
|
87237281bf
|
Merge pull request #5630 from ethereum/warn_functions_empty_body
Supress unused var and state mut warnings for functions with empty body
|
2018-12-12 17:00:50 +01:00 |
|
Leonardo Alt
|
508aae8a67
|
Disable state mutability warning for functions with empty body
|
2018-12-12 14:43:44 +01:00 |
|
Leonardo Alt
|
53537864a2
|
Disable unused var warning for functions with empty body
|
2018-12-12 14:43:44 +01:00 |
|
Daniel Kirchner
|
788612d2ef
|
Refactoring of the ControlFlowGraph and use for detecting all uninitialized storage accesses.
|
2018-12-12 04:20:53 +01:00 |
|
chriseth
|
9f86ede32d
|
Merge pull request #5454 from ethereum/smt_math_functions
[SMTChecker] Abstract math functions
|
2018-12-11 18:35:10 +01:00 |
|
chriseth
|
b5deca0383
|
Merge pull request #4779 from ethereum/optimise-string-literals
Decide better in storing string literals as data
|
2018-12-11 17:50:14 +01:00 |
|
Leonardo Alt
|
08737e43dc
|
[SMTChecker] Use SymbolicFunctionVariable for uninterpreted functions
|
2018-12-11 11:28:25 +01:00 |
|
Daniel Kirchner
|
6d82ad1338
|
Test updates for recent versions of aleth.
|
2018-12-11 04:47:05 +01:00 |
|
chriseth
|
d80d324de7
|
Tests for gas costs.
|
2018-12-10 18:06:07 +01:00 |
|
Yi Huang
|
81f703427e
|
Add tests for implcit conversions from literals to fixed-point numbers.
|
2018-12-10 17:31:20 +01:00 |
|
Erik Kundt
|
e2395a3dcf
|
Adds more detailed type errors and tests.
|
2018-12-07 12:35:35 +01:00 |
|
Erik Kundt
|
b2afb8cdda
|
Adds an additional message to failing type conversions.
|
2018-12-07 11:55:53 +01:00 |
|
chriseth
|
0e8841005c
|
Merge pull request #5554 from ethereum/cp-SourceReferenceFormatter-refactor
[2/3] Refactor SourceReferenceFormatter (split-out data extraction & make use of new SourceLocation knowledge)
|
2018-12-06 14:01:39 +01:00 |
|
Christian Parpart
|
073b03d90c
|
liblangutil: refactor SourceReferenceFormatter, splitting out retrieval and making use of new SourceLocation's CharStream knowledge
|
2018-12-06 14:01:01 +01:00 |
|
chriseth
|
5fde279d2a
|
Merge pull request #5514 from corollari/develop
Remove unary + from the type system
|
2018-12-06 10:27:09 +01:00 |
|
Albert
|
eee2f2b069
|
Update test
|
2018-12-06 01:54:04 +01:00 |
|
Albert
|
df08d79623
|
Fix #5470
Remove unary + from the type system
|
2018-12-06 01:54:04 +01:00 |
|
chriseth
|
bc6ddbdd09
|
Remove w parameter for toHex.
|
2018-12-05 22:51:49 +01:00 |
|
Kevin Kelley
|
fb6fd1b3c2
|
add a 'readable' format for large hex values
|
2018-12-05 22:15:02 +01:00 |
|
Leonardo Alt
|
8069bb61da
|
[SMTChecker] Loops are unrolled once
|
2018-12-04 12:35:19 +01:00 |
|
chriseth
|
d829794737
|
Improve yul error messages around number of arguments and variables.
|
2018-12-04 11:37:03 +01:00 |
|
Anurag Dashputre
|
82f5763e7a
|
Fix internal compiler error for unimplemented base contract function.
|
2018-12-03 12:25:31 +01:00 |
|
chriseth
|
3f613a44ec
|
Merge pull request #5557 from ethereum/fixInterfaceImplementedByPublicStateVariable
Public state variables are implementing external functions.
|
2018-12-03 10:46:44 +01:00 |
|
chriseth
|
0668a9ecfb
|
Public state variables are implementing external functions.
|
2018-12-03 10:46:03 +01:00 |
|
chriseth
|
aaeb74f592
|
Merge pull request #5537 from ethereum/cp-SourceLocation-related-refactoring
[1/3] SourceLocation related refactoring.
|
2018-11-30 23:45:31 +01:00 |
|
Christian Parpart
|
757623e381
|
liblangutil: SourceLocation: Retricts == and != operator
|
2018-11-30 17:34:54 +01:00 |
|
Christian Parpart
|
435f7b3b72
|
liblangutil: Scanner: remove superfluous sourceName field (it's in CharStream already)
Also, ParserBase::sourceName() was dead code. Eliminating it should
increase test coverage (how sneaky) :-)
|
2018-11-30 17:07:17 +01:00 |
|
Christian Parpart
|
c48a5264be
|
liblangutil: SourceLocation: adds (shared) pointer to underlying CharStream source, eliminating sourceName
Also, adapted affecting code to those changes.
|
2018-11-30 17:07:12 +01:00 |
|
chriseth
|
621ce3df20
|
Test.
|
2018-11-30 16:30:19 +01:00 |
|
chriseth
|
6aa9ce2d43
|
Merge pull request #5550 from ethereum/moveSomeTests
Move inline array tests.
|
2018-11-30 09:26:31 +01:00 |
|
chriseth
|
d6d41b2bc7
|
Merge pull request #5548 from ethereum/fixMemberAccess
Fix bug related to state variables of function type accessed via base contract.
|
2018-11-30 09:26:08 +01:00 |
|
chriseth
|
f46dd91c20
|
Move inline array tests.
|
2018-11-29 19:49:38 +01:00 |
|
chriseth
|
c445e7dfa4
|
Disallow inline arrays of mapping type.
|
2018-11-29 19:45:06 +01:00 |
|
chriseth
|
73a64da041
|
Fix bug related to state variables of function type accessed via base contract.
|
2018-11-29 19:30:27 +01:00 |
|
Leonardo Alt
|
67bbcefe6c
|
Report deprecation error on functions sha3 and suicide also without call.
|
2018-11-29 14:29:13 +01:00 |
|
Christian Parpart
|
22eff22492
|
liblangutil: extends CharStream to know about the respective (file-)name (and adapt codebase to it)
|
2018-11-29 12:45:27 +01:00 |
|
Leonardo Alt
|
1d47919c0c
|
Fix ICE when function type struct parameter has field of non-existent type
|
2018-11-29 10:38:47 +01:00 |
|
chriseth
|
b4086ac870
|
Merge pull request #5526 from ethereum/fixGetterNewCoder
Fix: Disallow structs in getters for old encoder.
|
2018-11-28 17:05:52 +01:00 |
|
Leonardo Alt
|
c51e6a545a
|
Remove boost test checks from SMTCheckerJSONTest
|
2018-11-28 14:16:43 +01:00 |
|
chriseth
|
c54814b47b
|
Tests.
|
2018-11-28 14:11:51 +01:00 |
|
chriseth
|
728119bb11
|
Use yul parser in assembly stack.
|
2018-11-27 15:59:57 +01:00 |
|
chriseth
|
240ad0e34e
|
Merge pull request #5382 from ethereum/libraryMappingPublic
Allow mapping arguments for public and external library functions.
|
2018-11-26 19:47:32 +01:00 |
|
chriseth
|
1e7a23a205
|
Changelog entry and tests.
|
2018-11-26 16:51:45 +01:00 |
|
Daniel Kirchner
|
30e6f8d3fb
|
Allow mapping arguments for public and external library functions.
|
2018-11-26 16:31:46 +01:00 |
|
Daniel Kirchner
|
597174119a
|
Tests.
|
2018-11-26 14:30:32 +01:00 |
|
chriseth
|
7921e5f0b9
|
Merge pull request #5486 from ethereum/allowExternalPublicOverride
Allow external public override
|
2018-11-26 14:26:55 +01:00 |
|
chriseth
|
9ac7c748f8
|
Merge pull request #5494 from ethereum/scanner-error-handling
Improved Scanner error diagnostics.
|
2018-11-26 14:17:08 +01:00 |
|
chriseth
|
0b474d5299
|
Merge pull request #5497 from ethereum/langutil-SourceReferenceFormatter
Moving SourceReferenceFormatter into langutil namespace.
|
2018-11-26 12:44:25 +01:00 |
|