Alex Beregszaszi
2c2d4c47ea
Merge pull request #4662 from evgeniuz/develop
...
added helper function that joins vectors of strings
2018-08-03 16:13:13 +01:00
Daniel Kirchner
1e4b5886d6
Allow assignments to local variables of mapping types.
2018-08-03 16:22:03 +02:00
Daniel Kirchner
c0a169ca90
Disallow assignments to mappings within tuple assignments.
2018-08-03 15:46:26 +02:00
Leonardo Alt
20c6cea7bb
Disallow structs in events without ABIEncoderV2
2018-08-03 13:41:27 +02:00
Evgeniy Filatov
3705bcc9bc
added helper function that joins vectors of strings, refactored suggestions formattingi function to use it
2018-08-03 14:07:03 +03:00
Daniel Kirchner
35c5b7de25
Turn warning about uninitialized storage returns into an error.
2018-08-02 19:34:38 +02:00
Daniel Kirchner
9d11557dc9
Define BOOST_TEST_DYN_LINK for building soltest if Boost_USE_STATIC_LIBS is not set.
2018-08-02 14:41:32 +02:00
Christian Parpart
43c01361f3
Drops tests for inline assembly jumps and function access as both isn't possible anymore.
2018-08-02 13:37:22 +01:00
Christian Parpart
a4ab305347
Drop swap_peephole_optimization test from EndToEndTests
...
Already covered by libevmasm/Optimiser: peephole_noncommutative_swap1, peephole_commutative_swap1 and peephole_swap_comparison
2018-08-02 13:37:22 +01:00
Christian Parpart
9b8a05ebfb
Update tests to remove support for loose assembly
2018-08-02 13:37:13 +01:00
Christian Parpart
5d9320c70b
Disallow loos assembly in Solidity by permanently setting it to SyntaxError (from Warning)
2018-08-02 13:36:05 +01:00
mingchuan
b89365282b
Fix shared boost test library build by customizing main
2018-08-02 13:08:24 +01:00
Alex Beregszaszi
9ec3fd1632
Merge pull request #4646 from ethereum/smt_model_secondary_location
...
SMT model is sorted and printed as secondary location
2018-08-01 23:20:28 +01:00
Leonardo Alt
90f319615f
SMT model variables are sorted and printed as secondary source location
2018-08-01 23:27:46 +02:00
Alex Beregszaszi
e1b695f199
Merge pull request #4399 from ethereum/contractWhitespace
...
Remove trailing whitespace in all contract files.
2018-08-01 21:59:19 +01:00
Daniel Kirchner
8781990ff3
Remove trailing whitespace in all contract files.
2018-08-01 21:57:12 +02:00
Daniel Kirchner
4bcc4d2fcf
Add additional test cases.
2018-08-01 17:18:17 +02:00
Daniel Kirchner
30d9961efb
Do not exclude public state variables when looking for conflicting declarations.
2018-08-01 14:31:04 +02:00
Alex Beregszaszi
ce99a5ce7f
Merge pull request #4378 from ethereum/noBaseWithoutArguments
...
[BREAKING] Disallow calling base constructors without arguments.
2018-08-01 13:18:37 +01:00
chriseth
061ea0cfc6
Correctly determine whether base constructor is called without parentheses.
2018-08-01 12:28:27 +01:00
chriseth
7e5406dd89
Disallow calling base constructors without arguments.
2018-08-01 12:28:27 +01:00
Christian Parpart
cb200cf7e1
Adds positive/negative tests for checking error on cyclic dependency checker exhaustion
2018-08-01 12:04:08 +01:00
chriseth
b800bfb021
Fix tests regarding contract type conversion.
2018-08-01 11:04:35 +01:00
chriseth
c8232d9759
Disallow conversion between unrelated contract types.
2018-08-01 11:04:35 +01:00
Alex Beregszaszi
21888e246b
Merge pull request #4507 from ethereum/v050-var-keyword-trace-removals
...
Ensures an empty use of var keyword is caught with the proper non-fatal error message
2018-08-01 10:59:26 +01:00
Christian Parpart
a7150f85a6
Ensures an empty use of var keyword is caught with the proper error message.
2018-08-01 09:59:06 +02:00
Alex Beregszaszi
fe28814d83
Merge pull request #4625 from ethereum/pragma-cleanup
...
Remove unnecessary or stray version pragmas
2018-07-31 11:15:45 +01:00
Leonardo Alt
210fee571f
Fix crash when FunctionType has undeclared type as parameter
2018-07-31 11:17:51 +02:00
Alex Beregszaszi
7fa2d0c84e
Replace stray solidity pragma with progamatically inserting it in SolidityOptimizer test
2018-07-31 00:12:46 +01:00
Alex Beregszaszi
db6c1c8ddd
Remove unnecesary version pragma from some syntax tests
2018-07-31 00:12:42 +01:00
Alex Beregszaszi
7c509137cf
Replace dev::eth namespace with dev::lll in LLL
2018-07-28 12:00:36 +01:00
Alex Beregszaszi
61b94b7ea4
Merge pull request #4556 from ethereum/library-data-locations
...
Add tests for data locations within libraries
2018-07-25 18:03:30 +01:00
Alex Beregszaszi
5a1b6856b4
Merge pull request #4561 from ethereum/scanner-tests
...
Add comprehensive tests for the scanner
2018-07-25 17:02:40 +01:00
Alex Beregszaszi
05e608d778
Merge pull request #4562 from ethereum/parser-tests
...
Add comprehensive tests for the parser
2018-07-25 16:38:54 +01:00
Alex Beregszaszi
84e0676db8
Fix upstream issues in stringutils
2018-07-25 13:56:14 +01:00
Alex Beregszaszi
2ecb7a2f72
Update stringutils to upstream 3c63f18
2018-07-25 13:55:47 +01:00
Alex Beregszaszi
b079f34c65
Scanner tests for all shifts
2018-07-25 12:59:28 +01:00
Alex Beregszaszi
aee13d709c
Scanner tests for all escapes
2018-07-25 12:59:24 +01:00
Alex Beregszaszi
7b5e912874
Add syntax tests for import statements
2018-07-25 11:01:41 +01:00
Alex Beregszaszi
49573bad46
Add syntax test for illegal pragma key
2018-07-25 11:01:41 +01:00
Alex Beregszaszi
fa68e0019f
Add syntax test for location specifier redeclarations
2018-07-25 11:01:41 +01:00
Alex Beregszaszi
008eb1c2c9
Add syntax test for empty emit statement
2018-07-25 11:01:41 +01:00
Alex Beregszaszi
640b8af802
Add syntax tests for assembly block type (evmasm)
2018-07-25 11:01:41 +01:00
Alex Beregszaszi
ee85430f93
Add tests for data locations within libraries
2018-07-25 10:55:23 +01:00
Alex Beregszaszi
ab3978723a
Add more tests for inlineasm/AsmAnalyzer
2018-07-25 10:45:31 +01:00
Alex Beregszaszi
d647761058
Add more comprehensive tests for embedded inline assembly LValue/RValue access
2018-07-25 10:45:31 +01:00
Alex Beregszaszi
167fe7c370
Merge pull request #4572 from ethereum/cmake-boost-tests
...
Do not include single-header boost_unit_test
2018-07-25 10:42:44 +01:00
Alex Beregszaszi
4a61cb5b59
Merge pull request #4554 from ethereum/indexing-tests
...
Add comprehensive syntax tests for indexed access
2018-07-25 10:37:30 +01:00
Paweł Bylica
f31989c022
Do not include single-header boost_unit_test
...
Do not mix 2 different usage variants of boost_unit_test. If you link with static libs do not include the single-header variant.
See https://www.boost.org/doc/libs/1_67_0/libs/test/doc/html/boost_test/usage_variants.html#boost_test.usage_variants.single_header
2018-07-25 09:17:53 +02:00
Alex Beregszaszi
a5a61a0b77
More consistent catch statements
...
Also take const& in all cases.
2018-07-25 01:18:09 +01:00
Alex Beregszaszi
1dbf2d1923
Add comprehensive syntax tests for indexed access
2018-07-24 20:26:36 +01:00
Alex Beregszaszi
3e17438c41
Add syntax tests for unknown / invalid pragma
2018-07-24 18:35:47 +01:00
Alex Beregszaszi
de90290c28
Merge pull request #4527 from ethereum/mappingEnforceStorage
...
Enforces explicit data location for mappings
2018-07-23 20:43:38 +01:00
Erik Kundt
c622a1e56c
Enforces data location of local mappings to storage.
2018-07-23 19:30:07 +02:00
Christian Parpart
9f35f0b805
Disallow functions without implementation to use modifiers. This was already the case in the experimental 0.5.0 mode.
2018-07-23 17:29:08 +01:00
chriseth
e3c2f20f6e
Merge pull request #4439 from ethereum/address_members
...
[BREAKING] Enforce address members not accessible by contract instance
2018-07-19 09:24:27 +02:00
Leonardo Alt
faa9c221d4
Changes in ExpressionCompiler
2018-07-18 19:51:24 +02:00
Leonardo Alt
25fa1142bc
Removing tests that are not useful anymore
2018-07-18 14:52:16 +01:00
Erik Kundt
b0b35e1e6b
Adds warning if function is shadowing a contract.
2018-07-18 14:29:01 +02:00
Erik Kundt
de6cd2425b
Adjusts syntax tests to new constructor syntax.
2018-07-18 14:29:01 +02:00
Erik Kundt
05d0e5c8fa
Adds comment about reasoning behind syntax test.
2018-07-17 20:06:07 +02:00
Erik Kundt
7d8b39ff4f
Removes obsolete syntax tests.
2018-07-17 19:30:15 +02:00
chriseth
dfd2fee91d
Suggests external for fallback and interface functions.
2018-07-17 18:07:36 +02:00
Erik Kundt
75bba5c9f0
Adjusts tests to expect type errors on default visibility.
2018-07-17 18:03:35 +02:00
Leonardo Alt
563e0fc9a7
Add suggestion to error message
2018-07-17 16:38:36 +01:00
Leonardo Alt
0075f4239a
Address members not accessible by contract instance
2018-07-17 13:33:23 +01:00
Christian Parpart
1d33f41c1a
Merge pull request #4463 from ethereum/isoltest-colors-on-windows
...
isoltest: adds support for properly handling ANSI escape sequences on Windows
2018-07-17 13:08:10 +02:00
Leonardo Alt
fdfdddd8dc
Add missing period in the end of error messages
2018-07-16 16:11:39 +01:00
Christian Parpart
05121eebd1
isoltest: adds support for properly handling ANSI escape sequences on Win32/Win64 builds.
2018-07-16 16:34:23 +02:00
chriseth
29dae15c50
Merge pull request #4481 from ethereum/disallow-throw
...
[BREAKING] Deprecate the throw statement
2018-07-16 16:25:22 +02:00
Alex Beregszaszi
bdac82ecdb
Replace throw with revert() in compilation tests
2018-07-16 15:33:31 +02:00
Alex Beregszaszi
aa08460d94
Replace throw with revert() in end-to-end tests
2018-07-16 15:33:20 +02:00
Alex Beregszaszi
21e97da294
Deprecate the throw statement
2018-07-16 15:33:20 +02:00
Erik Kundt
ed2aa3b869
Fixes end-to-end tests.
2018-07-16 14:51:46 +02:00
Erik Kundt
70c58b4886
Moves unit test from initial branch.
2018-07-16 14:51:46 +02:00
Erik Kundt
63b6f1532e
Specifies visibility in syntax test.
2018-07-16 14:49:55 +02:00
Erik Kundt
893f4cf092
Specifies visibility in unit tests.
2018-07-16 14:49:55 +02:00
chriseth
931794001e
Merge pull request #4500 from ethereum/v050-interface-functions-must-be-external
...
[BREAKING] interface functions must be external
2018-07-16 14:43:56 +02:00
Chase McDermott
f48d01d066
Added default data locations to parameters for end to end tests.
2018-07-16 14:18:16 +02:00
Christian Parpart
396bf11858
enforce interface-functions to be external-declared
...
- libsolidity: Enforce interface-functions must be external-declared.
- Changelog adapted to reflect changes wrt. functions in interfaces.
- test: Adjustments according to prior interface-function changes.
- tests: Adapting SolidityEndToEndTest to interface-function change.
- docs: Adapted documentation to interface-function change.
2018-07-16 12:15:36 +02:00
Chase McDermott
3267adcd14
Added default data locations to docs and other external tests.
2018-07-14 16:42:43 -05:00
chriseth
31e56f9f99
Merge pull request #4438 from ethereum/address_members_external_tests_docs
...
Address members used by contracts: update external tests and docs
2018-07-13 01:28:29 +02:00
chriseth
bab4a3975f
Merge pull request #4501 from ethereum/recursiveStructsWithFixedArrays
...
Consider fixed-size arrays when checking for recursive structs.
2018-07-13 01:26:50 +02:00
Daniel Kirchner
62645d5302
Update tests.
2018-07-12 20:33:52 +02:00
Daniel Kirchner
faa55f6544
Add test cases.
2018-07-12 20:14:31 +02:00
chriseth
5d8a8f7265
Merge pull request #4437 from ethereum/report-empty-var-decls
...
[BREAKING] Report empty var tuple decls
2018-07-12 19:22:38 +02:00
chriseth
81271801b4
Merge pull request #4478 from ethereum/requireStorageLocation
...
Turn missing storage locations into an error.
2018-07-12 18:00:05 +02:00
Christian Parpart
cc585138bc
Generates a syntax error when declaring a variable declaration's LHS has no named components
2018-07-12 13:26:52 +02:00
chriseth
fa8102880f
Merge pull request #4428 from ethereum/enforce_staticcall_view
...
[BREAKING] Enforce STATICCALL for view and pure
2018-07-12 13:14:02 +02:00
chriseth
576f3ef18c
Merge pull request #4083 from ethereum/variable_stack_slot
...
[BREAKING] Allocate local variables according to their scope
2018-07-12 13:01:15 +02:00
Daniel Kirchner
899efd5e64
Update compilation tests wrt requiring storage locations.
2018-07-12 12:54:42 +02:00
Daniel Kirchner
8b4b8bdbae
Update test wrt requiring storage locations.
2018-07-12 12:54:42 +02:00
Leonardo Alt
3ebfcae829
Update external tests and docs
2018-07-12 12:53:49 +02:00
Chase McDermott
fc78b32847
Added default data locations to parameters for syntax tests.
2018-07-11 20:24:50 -05:00
chriseth
71777ce729
Merge pull request #4461 from ethereum/fuzzer-fix
...
Catch the proper exceptions in solfuzzer
2018-07-12 00:22:38 +02:00
chriseth
99bee7e233
Merge pull request #4443 from ethereum/double_var_decl_fix
...
Fix crash when declaring the same var twice in the same scope
2018-07-12 00:05:32 +02:00
Alex Beregszaszi
b248fc6436
Catch the proper exceptions in solfuzzer
2018-07-11 23:49:14 +02:00
chriseth
0c9645c978
Merge pull request #4480 from ethereum/fixZeroWithExponent
...
Fix literals with exponents with mantissa of zero.
2018-07-11 23:45:41 +02:00
Christian Parpart
08345209e6
Merge pull request #4404 from ethereum/v050-var-keyword-suggest
...
[WIP] v0.5.0 var keyword type suggestion
2018-07-11 16:33:09 +02:00
Daniel Kirchner
dedf13633c
Split test case into failing and succeeding case.
2018-07-11 15:37:37 +02:00
Daniel Kirchner
e8e5e12ad2
Fix literals with exponents with mantissa of zero.
2018-07-11 15:34:17 +02:00
Leonardo Alt
38026d3114
Use STATICCALL for view and pure
2018-07-11 14:45:22 +02:00
chriseth
f3abfa81ad
Merge pull request #4454 from ethereum/constructorArgCount
...
[BREAKING] Wrong argument count in constructor call
2018-07-11 14:45:05 +02:00
chriseth
238dbe1b99
Merge pull request #4388 from ethereum/noPackedLiterals
...
Disallow packed encoding of literals.
2018-07-11 14:28:20 +02:00
Erik Kundt
e7dc9d27fc
Cleans up syntax test.
2018-07-11 13:26:52 +02:00
Erik Kundt
7c7e154a7b
Improves error with suggestion to remove parantheses.
2018-07-11 01:58:17 +02:00
Erik Kundt
34a031609e
Updates Changelog, syntax test and simplifies type checker.
2018-07-11 01:58:17 +02:00
Erik Kundt
0b960f5a9c
Turns wrong argument count in base constructor call into en error.
2018-07-11 01:56:07 +02:00
Cryptomental
4116704442
test: Fix typos.
...
Fix typos using codespell.
Refs: #4442
2018-07-10 22:57:59 +02:00
Christian Parpart
1505e28b56
semantics: Suggest auto-deduced type when user declares variable with var
keyword.
2018-07-10 22:14:19 +02:00
chriseth
d84976dc87
Merge pull request #4376 from ethereum/fallbackExternal
...
Fallback functions have to be external
2018-07-10 21:39:25 +02:00
chriseth
12045d2e11
Merge pull request #4464 from cryptomental/bugfix/fix-typos-in-AsmParser-and-TypeChecker
...
AsmParser,TypeChecker: Fix typos.
2018-07-10 21:07:56 +02:00
chriseth
6567cd3e51
Merge pull request #4466 from ethereum/tupleNotEmpty
...
Disallow empty tuple components.
2018-07-10 21:03:30 +02:00
Leonardo Alt
a18a475b1a
Change test from public to external
2018-07-10 19:08:05 +02:00
Leonardo Alt
c286cdaa62
Fix crash for double variable declaration in the same scope.
2018-07-10 18:54:46 +02:00
Leonardo Alt
0c5e0e0d59
Added assertion and tests suggestions
2018-07-10 18:39:38 +02:00
Leonardo Alt
b750ca9741
Add more tests and assertions
2018-07-10 18:39:38 +02:00
Leonardo Alt
9d895e002d
Added tests and review suggestions
2018-07-10 18:39:38 +02:00
Christian Parpart
8ca69ed8d8
defaulting to v0.5.0 behaviour of unary + operator (disallow); also adapting all tests to it
2018-07-10 16:27:57 +02:00
Daniel Kirchner
6d28278b3f
Update end-to-end tests.
2018-07-10 15:53:48 +02:00
Daniel Kirchner
ad47fe23c1
Update tests.
2018-07-10 15:28:05 +02:00
chriseth
7650905567
Merge pull request #4415 from ethereum/uninitializedStoragePointer
...
[BREAKING] Turn uninitialized storage variables into error.
2018-07-10 15:24:01 +02:00
Cryptomental
8c0297b400
libsolidity/syntaxTests: Add a test case for unwanted named arguments.
...
Refs: #4442
2018-07-10 14:10:09 +02:00
Cryptomental
a55abb550d
AsmParser,TypeChecker: Fix typos.
...
Fix typos. The change requested as a separate PR during codespell PR.
Adapt tests as well.
Refs: #4442
2018-07-10 12:33:19 +02:00
Daniel Kirchner
afa5f528f5
Update tests.
2018-07-10 12:17:01 +02:00
Daniel Kirchner
46d6454b1f
Update tests.
2018-07-10 11:38:32 +02:00
chriseth
ab99893396
Merge pull request #4440 from ethereum/hex_denomination_enforce_error
...
[BREAKING] Enforce error on hex combined with denomination
2018-07-09 17:57:16 +02:00
chriseth
e950fd434a
Merge pull request #4403 from ethereum/syntaxTestsVisibility
...
Specify default visibility in syntax tests (pt. 2)
2018-07-09 17:53:23 +02:00
Leonardo Alt
c1b67a845b
Enforce error on hex number combined with unit denomination
2018-07-09 17:19:41 +02:00
Alex Beregszaszi
694754b4fe
Merge pull request #4432 from ethereum/visibilityCompilationTests
...
Specify default visibility in compilation tests
2018-07-09 14:59:42 +01:00
Alex Beregszaszi
c42583d27e
Merge pull request #4366 from ethereum/libsolc-cleanup
...
Implement new libsolc API
2018-07-09 12:30:11 +02:00
Erik Kundt
19f6b5ad05
Updates interface constructor and function type test.
2018-07-06 19:42:44 +02:00
chriseth
f3e0bf1dd8
Merge pull request #4418 from ethereum/initialConstants
...
Only allow compile-time constants for constant state variables.
2018-07-05 17:07:32 +02:00
chriseth
c8ac861832
Fix allocation of byte arrays.
2018-07-05 14:18:14 +02:00
Erik Kundt
febbfd4204
Adds visibility to compilation tests.
2018-07-04 19:20:51 +02:00
Erik Kundt
87ab7d1821
Fixes compilation errors.
2018-07-04 15:45:42 +02:00
Erik Kundt
cbfe3766db
Fixes defects in end-to-end tests.
2018-07-04 15:45:42 +02:00
Erik Kundt
7cb46ea707
Fixes assembly test.
2018-07-04 15:45:42 +02:00
Erik Kundt
fc2b006fe1
Updates unit test to specify visibility.
2018-07-04 15:45:42 +02:00
Erik Kundt
b42929975f
Updates end-to-end tests to specify default visibility.
2018-07-04 15:32:49 +02:00
Erik Kundt
3f53db402f
Fixes wrong visibility specifier in interface constructor test.
2018-07-04 15:15:30 +02:00
chriseth
4a332ab324
Merge pull request #4409 from ethereum/viewPureChecker
...
Enforce state mutability in view pure checker.
2018-07-04 14:09:46 +02:00
Erik Kundt
0dd3e6052c
Fixes broken syntax tests.
2018-07-04 11:47:35 +02:00
Leonardo Alt
8202d512e0
Enforcing error on msg.gas and block.blockhash()
2018-07-04 11:42:05 +02:00
Daniel Kirchner
f5be38bff1
Extend view pure test suite.
2018-07-04 11:25:45 +02:00
Erik Kundt
2e0d019ef0
Adds default visibility specifier to syntax tests.
2018-07-04 10:45:59 +02:00
Daniel Kirchner
0a738b4ac4
Adjust tests wrt strict view pure checker.
2018-07-04 10:14:58 +02:00
chriseth
8ed3da1d5f
Only allow compile-time constants for constant state variables.
2018-07-03 23:03:26 +02:00
chriseth
2211739fc4
Update tests.
2018-07-03 22:51:55 +02:00
chriseth
533d5d4b1c
Merge pull request #4379 from ethereum/constructorArgsTwice
...
Disallow constructor arguments given multiple times.
2018-07-03 22:49:02 +02:00