Christian Parpart
9fb835b710
Fixes #5051 (introduced in #4684 ), effectively allowing underscores in address literals.
2018-10-02 15:37:15 +02:00
chriseth
e9f72212ee
Merge pull request #5104 from ethereum/fuzzer
...
Do not use compileJSON wrapper in the fuzzer
2018-10-01 13:20:06 +02:00
chriseth
658bef5a38
Merge pull request #5115 from mestorlx/cleancircleci
...
removed stray (B in CI test output
2018-10-01 13:18:55 +02:00
chriseth
a17d480fc2
Merge pull request #5075 from ethereum/fixInliner
...
[Yul] Fix inliner
2018-10-01 13:10:54 +02:00
chriseth
d5cd02b8ed
Fix for inlining inside conditions.
2018-10-01 13:10:10 +02:00
Alex Beregszaszi
24563dd3ce
Do not use compileJSON wrapper in the fuzzer
2018-09-29 14:58:59 +01:00
Martin Diz
25f3565340
removed stray (B in CI test output
2018-09-28 19:27:55 -03:00
Alex Beregszaszi
c4b5101b9d
Merge pull request #4676 from jwasinger/extcodehash
...
Add support for EXTCODEHASH
2018-09-28 00:04:40 +01:00
Alex Beregszaszi
384a65f660
Be more strict about values in the optimizer block in StandardJSON
2018-09-26 16:51:08 +01:00
Alex Beregszaszi
f2fa513320
Add LLL tests for EXTCODEHASH
2018-09-26 16:11:02 +01:00
Alex Beregszaszi
5d985abcab
Add test for extcodehash
2018-09-26 16:11:02 +01:00
chriseth
13cd7c3fed
Merge pull request #5061 from ethereum/fixedSizeArrayLength
...
Disallow fixed-size arrays with zero length
2018-09-26 14:55:07 +02:00
Alex Beregszaszi
8cfc6c98d6
CREATE2 is part of Constantinople now
...
Also add hasCreate2 to EVMVersion
2018-09-26 01:58:10 +01:00
Alex Beregszaszi
c9f468b717
Better regex for finding version pragmas and replace it with >=0.0
...
There is a bug which stops ^0 from working.
2018-09-25 19:03:24 +01:00
Alex Beregszaszi
321ab08102
Automatically replace version pragmas in compilation tests
2018-09-25 19:03:24 +01:00
Alex Beregszaszi
d05fdb51b0
Require 0.5.0 in contract tests
2018-09-25 19:03:24 +01:00
Alex Beregszaszi
e9b2c650ce
Turn on patch to replace version pragmas for Zeppelin
...
An also replace every single one of them with ^0
2018-09-25 19:03:24 +01:00
chriseth
ba62831143
Tests for inlining inside condition.
2018-09-25 17:16:22 +02:00
chriseth
1b8334e58b
Merge pull request #5034 from liangdzou/fix_test_format_issue
...
fix format issue for test files to enable the format checker in PR #5027
2018-09-25 10:14:44 +02:00
liangdzou
839b01f77e
fix format issue for test files
2018-09-24 21:12:24 +08:00
chriseth
cb3a837251
Merge pull request #5003 from herrBez/cleanUpdated
...
Add syntax tests to fix #4627
2018-09-24 14:43:53 +02:00
Erik Kundt
d821cbdff5
Moves length check to reference resolver.
2018-09-22 00:25:52 +02:00
Erik Kundt
ff5be17990
Disallows fixed-size multidim. arrays with zero-length.
2018-09-21 18:44:56 +02:00
Alex Beregszaszi
5dd3ee2d96
Merge pull request #5050 from ethereum/standard-json-crashes
...
Add proper error reporting when invalid settings are provided in StandardJSON
2018-09-21 15:48:05 +01:00
Alex Beregszaszi
a515173900
Add proper error reporting when invalid settings are provided in StandardJSON
2018-09-21 14:53:24 +01:00
herrBez
faa0caae08
Add syntax tests to augment the test coverage of
...
libsolidity/parsing/Scanner.cpp and libsolidity/parsing/Scanner.h
Fix #4627 and PR #5003 .
- Add multiline comment test
- Add upper case hex literal test
- Add test for unicode escapes
- Add test for strings with escaped newlines
- Add test for string escapes
- Add test for strings that do not terminate before end of file
- Add test for unterminated blocks
2018-09-20 23:02:44 +02:00
chriseth
dc9853bb6e
Merge pull request #5030 from ethereum/payableConversion
...
Make non-payable default for conversion to address.
2018-09-20 21:20:46 +02:00
chriseth
d0461c49fe
Make non-payable default for conversion to address.
2018-09-20 14:31:04 +02:00
hydai
b409faa675
Disallow uppercase X in hex number literals
2018-09-19 22:01:15 +08:00
chriseth
47b8d998d1
Merge pull request #4999 from liangdzou/fix_typo
...
fix some code format problems
2018-09-17 17:47:35 +02:00
chriseth
da90bc0224
Merge pull request #4984 from elopio/add-missing-inliner-test
...
Add a missing tests for yul inliner optimization
2018-09-17 16:32:30 +02:00
liangdzou
808c3f3df5
fix some format typos
2018-09-17 22:13:21 +08:00
Leo Arias
aae385031f
Add a missing tests for yul inliner optimization
...
When the statement has two return values, the function is not inlinable.
When the function has one statement but it is not an assignment to the
return variable, the function is not inlinable.
l
2018-09-16 06:38:08 +00:00
liangdzou
f3cbdadec7
Do not set to ref for explicit conversion and add assertion for array
...
type conversion. Also, add some test cases for #4901 and #4948 .
2018-09-14 08:42:40 +02:00
chriseth
5cf570e100
Merge pull request #4968 from ethereum/alethUpdateCompatible
...
Fix tests for newer versions of aleth.
2018-09-13 23:38:46 +02:00
Daniel Kirchner
e7daed68c1
Merge pull request #4911 from ethereum/addressPayable
...
Payable and non-payable address type.
2018-09-13 17:30:54 +02:00
Daniel Kirchner
3e55aa3fa2
Disable blockhash test for constantinople due to changes between aleth versions.
2018-09-13 17:18:42 +02:00
Daniel Kirchner
583b87bb3d
Use "pending", not "latest" during `eth_call
in
sendMessage
`.
2018-09-13 16:48:51 +02:00
Daniel Kirchner
ae35a58124
Add `stateMutability
field to JSON AST for
address
` types.
2018-09-13 15:15:49 +02:00
Daniel Kirchner
12aaca1645
Add payable and non-payable state mutability to AddressType.
2018-09-13 15:15:49 +02:00
liangdzou
558a4ac49c
give more information (at most 35 chars before and after) for too long lines
...
add tests for giving more informations for too long lines
add edge tests for giving more informations for too long lines
avoid printing out tailing white space
update test case after avoiding printing out trailing whitespace
update test case for removing the pre-release warning from reference
refactor the code to if-else flavor
rename folder to cmdlineErrorReports under test
rename folder to cmdlineErrorReports under test
ignore whitespace for reference files
avoiding to modify the file stderr_path by call sed without -i option
print ' ...' instead of ' ... ' at the end of a line
2018-09-13 09:55:54 +08:00
Daniel Kirchner
879251a78b
Update test suite to use address payable.
2018-09-12 16:21:43 +02:00
Daniel Kirchner
1ce3581a52
Accept `address payable
` during parsing.
2018-09-11 14:52:23 +02:00
Daniel Kirchner
a434896458
Restore `isConstructor
` in the legacy AST.
2018-09-11 14:47:25 +02:00
Daniel Kirchner
b6636e2570
Add new test cases.
2018-09-11 14:47:25 +02:00
Daniel Kirchner
395ab9a872
Replace `isConstructor
field in the JSON AST by a
kind
` field.
2018-09-11 14:47:25 +02:00
chriseth
9f6a12eeb5
Update bug description, add regex and tests.
2018-09-10 12:58:40 +02:00
chriseth
7118f53974
Tests.
2018-09-10 12:47:46 +02:00
chriseth
255eda2ea6
Merge pull request #4912 from ethereum/fixNewline
...
Fix bugs in comments.
2018-09-10 12:25:07 +02:00
Leonardo Alt
9927964d21
Buglist check script supports json paths
2018-09-06 18:42:21 +02:00
chriseth
6a40048aa4
Tests.
2018-09-06 16:42:59 +02:00
chriseth
0b7b8162ca
This fixes several bugs with regards to line breaks and comments:
...
- any unicode line break (line feed, vertical tab, form feed, carriage
return, NEL, LS and PS) is considered to terminate a single-line
comment. The line break itself is considered to be the next token
after the comment, leading to a parser error if it is not an
ascii character (i.e. for NEL, LS and PS).
- unterminated multiline comments are considered illegal tokens
- '/** /' is considered an unterminated multiline comment
(previously, whitespace was allowed before the last '/'
2018-09-06 16:42:59 +02:00
chriseth
522174890f
Merge pull request #4872 from bakaoh/issue4716
...
Crash when array index value is too large
2018-09-05 21:47:42 +02:00
Daniel Kirchner
87804b6419
Split IntegerType into IntegerType and AddressType.
2018-09-05 12:19:14 +02:00
chriseth
a996ea266c
Merge pull request #4590 from ethereum/msgValueModifier
...
Warn if modifier uses msg.value in non-payable function
2018-09-05 10:32:10 +02:00
bakaoh
a7ffff6a29
Fix #4716 : Crash when array index value is too large
2018-09-05 10:54:38 +07:00
chriseth
e6aa15bae1
Merge pull request #4895 from ethereum/abidecodesingle
...
Fix abi.decode returning single value.
2018-09-04 23:47:56 +02:00
chriseth
85debe77d9
Merge pull request #4866 from bakaoh/issue4743
...
Fix#4743: Incorrect source location for nameless parameters
2018-09-04 20:21:03 +02:00
chriseth
3c804fd576
Merge pull request #4880 from ethereum/fix_cmdlineTest_tmpdir
...
Rename TMPDIR to SOLTMPDIR in cmdlineTests
2018-09-04 20:08:25 +02:00
chriseth
624dbbe142
Fix abi.decode returning single value.
2018-09-04 18:19:00 +02:00
chriseth
9daac90cf7
Merge pull request #4888 from ethereum/disallow_single_statement_vardecl_if_while_for
...
Disallow single statement var decl in if/while/for without blocks
2018-09-04 17:24:06 +02:00
Daniel Kirchner
e3097b30da
Add another end-to-end test.
2018-09-04 15:34:21 +02:00
Daniel Kirchner
0011f8aef9
Update compilation tests.
2018-09-04 13:31:10 +02:00
Daniel Kirchner
82f512a7d4
Add return data to bare calls.
2018-09-04 13:31:10 +02:00
Leonardo Alt
17176871ab
Changed error message and added tests
2018-09-04 11:48:58 +02:00
Daniel Kirchner
a102f3b783
Remove trailing whitespace for all files in the repository.
2018-09-04 11:30:30 +02:00
Leonardo Alt
b7c6e53d3d
Fix endToEnd test
2018-09-03 18:35:57 +02:00
chriseth
431c2fbcf3
Turn warning into error.
2018-09-03 18:35:57 +02:00
Erik Kundt
75a92b0ffd
Warns if modifier uses msg.value in non-payable function.
2018-09-03 18:35:57 +02:00
Leonardo Alt
f167baed83
mktemp might use variable TMPDIR. Renaming it in our script to avoid conflicts.
2018-09-03 12:54:29 +02:00
bakaoh
3d7b0d691f
Update test to correct source location for nameless parameters
2018-08-31 09:54:11 +07:00
Leonardo Alt
583e7156ba
Dynamic type as mapping key returns error instead of assertion fail
2018-08-16 11:59:41 +02:00
chriseth
cc6fa6d61f
Merge pull request #4822 from ethereum/addressStaticCall
...
Add ``staticcall`` to ``address``.
2018-08-16 00:13:21 +02:00
Leonardo Alt
faed71c6b1
Review suggestions
2018-08-15 17:11:18 +02:00
Leonardo Alt
c3d3ae80fa
Add end to end tests
2018-08-15 17:11:18 +02:00
Leonardo Alt
b6c839e817
Disallow indexed reference types in events when using ABIEncoderV2
2018-08-15 17:11:18 +02:00
Daniel Kirchner
a34735016c
Add syntax test for `address.staticcall.value
`.
2018-08-15 16:06:48 +02:00
Daniel Kirchner
ed5265598b
Add view pure checker tests for `address.staticcall(...)
`.
2018-08-15 16:06:48 +02:00
Daniel Kirchner
7ca0aaaf6f
Add `staticcall
to
address
`.
2018-08-15 16:06:48 +02:00
chriseth
6c0261e6ab
Merge pull request #4390 from ethereum/abidecode
...
Add abi.decode
2018-08-15 12:31:26 +02:00
chriseth
c7d2af2637
Merge pull request #4583 from ethereum/nested_array_library_changelog
...
Bugfix Changelog entry regarding nested arrays returned by library functions
2018-08-15 12:30:54 +02:00
chriseth
9328ea4c3c
Add abi.decode(bytes data, (...))
2018-08-15 10:45:16 +02:00
bakaoh
3fa8829845
Fixes #4718 : High CPU usage when using large variable names
2018-08-15 10:23:08 +02:00
chriseth
cc54f6c425
Merge pull request #4738 from ethereum/dataloc_merged
...
Enforce data location.
2018-08-14 21:38:07 +02:00
chriseth
8f27fb1f4a
Merge pull request #4542 from aarlt/constructor_natspec
...
Fix: natspec annotations on constructors
2018-08-14 19:13:25 +02:00
chriseth
b30da8859a
Update external tests.
2018-08-14 18:53:06 +02:00
chriseth
13905a2094
Update tests.
2018-08-14 18:53:06 +02:00
mingchuan
16de7a0493
New test cases.
2018-08-14 18:53:06 +02:00
Chase McDermott
b000a022f2
Update tests
2018-08-14 18:53:06 +02:00
chriseth
3f42118d19
Merge pull request #4765 from ethereum/fixes-issue-4673
...
[WIP] Fixes issue where computing storage size for a number would take too long (or even cause a crash).
2018-08-14 17:34:04 +02:00
Jesse Busman
c059119145
Add implicit convertibility to function pointer with higher state mutability
2018-08-14 17:13:10 +02:00
chriseth
414559bd07
Merge pull request #4788 from ethereum/noWarnDoc
...
Test that documentation does not contain any warnings.
2018-08-14 16:33:39 +02:00
chriseth
ec7ccbdf86
Merge pull request #4782 from ethereum/encodePackedArrayOfStructs
...
Encode packed array of structs
2018-08-14 16:32:57 +02:00
Leonardo Alt
55e67e41f9
Update bug list and add regular expression to bug list and add test.
2018-08-14 15:57:38 +02:00
chriseth
6a5a187d83
Also extract tests that do not start with a pragma.
2018-08-14 15:50:46 +02:00
chriseth
f873389c62
Test that documentation does not contain any warnings.
2018-08-14 15:50:46 +02:00
Christian Parpart
43bda53410
Fixes issue where computing storage size for a number would take too long.
...
Fixes #4673 .
2018-08-14 15:38:10 +02:00
Christian Parpart
81faafe7f2
Adds support for structs in interfaces.
...
Closes #4733 .
2018-08-14 15:36:03 +02:00
Leonardo Alt
17cac588d0
Replace safety stop by invalid
2018-08-14 12:32:47 +02:00
chriseth
d01ffd1ad9
Merge pull request #4799 from ethereum/semanticsTestsGasEtAl
...
Semantics tests for ``gasleft()``, ``blockhash()`` ``tx.gasprice`` and ``block.gaslimit``
2018-08-14 12:14:53 +02:00
Daniel Kirchner
b325a70d59
Fix tests for constantinople (expect zero for the time being).
2018-08-14 11:42:34 +02:00
Daniel Kirchner
06b7edfdcf
Add missing tests for `gasleft()
,
blockhash()
tx.gasprice
and
block.gaslimit
`.
2018-08-14 11:42:34 +02:00
chriseth
6ca3973944
Merge pull request #4777 from ethereum/typeConversionMemory
...
Defaul data location for type conversions is memory.
2018-08-14 11:36:19 +02:00
chriseth
3dd31b704a
Merge pull request #4798 from ethereum/mappingArgumentsAndReturns
...
Mapping arguments and returns
2018-08-13 17:27:29 +02:00
chriseth
ae8218543b
Merge pull request #4696 from ethereum/byteLiteralConversion
...
Disallow ambiguous implicit and explicit conversions from number literals to bytesXX
2018-08-13 17:25:30 +02:00
Daniel Kirchner
dfcfc4c35b
Add tests for mappings in function types.
2018-08-13 16:33:37 +02:00
Daniel Kirchner
341128962f
Allow mappings of arrays as arguments and return values of internal functions.
2018-08-13 16:33:37 +02:00
Daniel Kirchner
4ae59acc09
Consider mappings return values in control flow analysis.
2018-08-13 16:33:37 +02:00
Daniel Kirchner
a9f31da411
Allow mapping arguments and return values in all internal functions.
2018-08-13 15:50:22 +02:00
chriseth
bd567a22c9
Defaul data location for type conversions is memory.
2018-08-13 14:38:12 +02:00
Daniel Kirchner
57ada1d69e
Allow mapping arguments and return values in internal library functions.
2018-08-13 14:31:10 +02:00
Daniel Kirchner
7d7abeb149
Disallow ambiguous conversions between number literals and bytesXX types.
2018-08-13 14:27:01 +02:00
Daniel Kirchner
954d7433bd
Disallow remappings with empty prefix.
2018-08-10 19:26:48 +02:00
chriseth
a38352569b
Tests.
2018-08-09 21:16:51 +02:00
chriseth
63d071d6e0
Merge pull request #4783 from elopio/test/function-call-syntactical-equality
...
tests: add yul simplifier not applied with function calls
2018-08-09 12:08:55 +02:00
Christian Parpart
79ba5b61b3
Fixes compilation under MSVC.
2018-08-09 10:14:47 +02:00
Leo Arias
1395bef7ae
tests: add yul simplifier not applied with function calls
2018-08-09 03:46:22 +00:00
Alex Beregszaszi
ed52f422b7
Rename FunctionKind SHA3 to KECCAK256 (as the instruction was renamed in libevmasm)
2018-08-08 22:37:40 +01:00
Alex Beregszaszi
478012a000
Merge pull request #4772 from ethereum/asm-json
...
Add tests for the assembler object (and avoid misusing string{} for u256)
2018-08-08 21:59:07 +01:00
Alexander Arlt
f76d4d5919
Fix: natspec annotations on constructors
...
- natspec annotations on constructore where ignored.
2018-08-08 21:53:35 +02:00
Alex Beregszaszi
0eeb06b6ea
Test for legacyAssembly in StandardCompiler
2018-08-08 20:52:18 +01:00
Alex Beregszaszi
a16461249f
Add tests for the assembler object
2018-08-08 20:52:18 +01:00
chriseth
d634d20b5b
Merge pull request #4684 from ethereum/underscores_in_numeric_literals
...
[BREAKING] Underscores in numeric literals
2018-08-08 21:36:57 +02:00
Alex Beregszaszi
bb071f3075
Merge pull request #4769 from ethereum/inlineasm-overloading-resolution
...
Provide nicer error message when referencing overloaded references
2018-08-08 17:55:10 +01:00
Alex Beregszaszi
9062704054
Merge pull request #4753 from mattaereal/boost-to-string-patch
...
Replace boost:lexical_cast<std::string> for std::to_string.
2018-08-08 16:07:25 +01:00
Alex Beregszaszi
3c791d637d
Provide nicer error message when referencing overloaded references
2018-08-08 15:59:24 +01:00
Matías Aereal Aeón
e902ce1aa0
Removing std:: from std::to_string and include for boost/lexical_cast
2018-08-08 11:26:30 -03:00
Alex Beregszaszi
1bfb841771
Remove experimental 0.5.0 pragma
2018-08-08 14:05:36 +01:00
chriseth
de8e9114fd
Merge pull request #4740 from ethereum/enforceNumberOfReturnValues
...
Disallow empty return in function with return arguments.
2018-08-08 14:59:09 +02:00
Alex Beregszaszi
fbc8443174
Merge pull request #4589 from sifmelcara/fix/dynamic-link-boost-test
...
Fix shared boost test library build by customizing main
2018-08-08 13:53:00 +01:00
Christian Parpart
b9222808f6
Cleanup & polish numbers-with-underscores parsing, also improving tests.
2018-08-08 13:38:46 +02:00
chriseth
154a7706ba
Merge pull request #4737 from ethereum/isoltestEarlyExit
...
Return from main if quit was requested during a sub-testsuite.
2018-08-08 12:55:01 +02:00
chriseth
3b2bd2c1df
Merge pull request #4749 from elopio/test/yul-simplifier-not-applied
...
tests: add yul simplifier not applied
2018-08-08 12:49:14 +02:00
Daniel Kirchner
99d3e8e45a
Add back lost test case to a more reasonable location.
2018-08-08 12:48:59 +02:00
Daniel Kirchner
576ba91970
Adjust return expressions in compilation tests.
2018-08-08 12:48:59 +02:00
Alex Beregszaszi
64e3c9913f
Merge pull request #4736 from ethereum/removeFillRight
...
Remove remaining instances of ``fillRight``.
2018-08-08 11:27:37 +01:00
Balajiganapathi S
09a36cba02
Add stricter hex underscore rules
2018-08-08 12:05:51 +02:00
Balajiganapathi S
0000bfc604
Allow underscores in numbers.
2018-08-08 12:05:51 +02:00
Leo Arias
cf3bf57cb2
tests: add yul simplifier not applied
2018-08-07 21:58:24 +00:00
chriseth
8e93b729a4
Merge pull request #4703 from ethereum/solc-fix-double-quoting-path-names
...
solc: Fixes double-quoting path names on stderr.
2018-08-07 21:46:00 +02:00
Daniel Kirchner
967bb6d999
Initialize `TestTool::m_formatted
`.
2018-08-07 21:23:01 +02:00
Daniel Kirchner
bb518b59aa
Update and extend tests for return expressions.
2018-08-07 20:49:52 +02:00
Daniel Kirchner
a6df7b1fb8
Always count all test cases in isoltest and exit early on user request.
2018-08-07 19:28:21 +02:00
Daniel Kirchner
b11e39e25e
Remove remaining instances of `fillRight
` left over from tuple wildcards assignments.
2018-08-07 18:51:53 +02:00
chriseth
d7756322c0
Merge pull request #4731 from ethereum/interface-enum
...
Allow enums in interfaces
2018-08-07 17:20:05 +02:00
Alex Beregszaszi
a765b5b31c
Merge pull request #4720 from ethereum/abi-rational-type-identifier
...
Fix type identifiers for RationalNumberType (on negative numbers)
2018-08-07 14:25:11 +01:00
Alex Beregszaszi
4158a310bd
Merge pull request #4729 from ethereum/slot-on-non-storage
...
Properly handle invalid references used together with _slot and _offset.
2018-08-07 14:16:43 +01:00
Alex Beregszaszi
34a711a14d
Add endToEnd test for referencing enums
2018-08-07 15:04:17 +02:00
Christian Parpart
39ffd7500e
solc: Fixes double-quoting path names on stderr and adds tests for it.
...
Before it was possible to get a failure message, such as:
""notfound.sol"" is not found
whereas it should be:
"notfound.sol" is not found.
2018-08-07 14:55:22 +02:00
Alex Beregszaszi
5298d818c4
Add test for abi.encode (negative) literals
2018-08-07 13:44:24 +01:00
Alex Beregszaszi
ce29aac8ad
Add more syntax tests for enums and interfaces/libraries
2018-08-07 13:39:21 +01:00
Alex Beregszaszi
13e37df97c
Allow enums in interfaces
2018-08-07 13:28:53 +01:00
Alex Beregszaszi
b0f9fc5af0
Fix type identifiers for RationalNumberType
2018-08-07 13:23:14 +01:00
chriseth
9d3827266c
Merge pull request #4695 from ethereum/test-natspec
...
Be explicit about which contract to test for in the Natspec tests
2018-08-07 14:19:56 +02:00
Alex Beregszaszi
05cc7e79e1
More precise error message if using non-variables with _slot/_offset
2018-08-07 13:18:54 +01:00
Alex Beregszaszi
eb7b3862ac
Properly handle invalid references used together with _slot and _offset.
2018-08-07 13:18:38 +01:00
Alex Beregszaszi
8b2d630275
Merge pull request #4724 from ethereum/slot-in-assembly
...
Do not crash on using _slot and _offset suffixes on their own
2018-08-07 12:55:40 +01:00
Alex Beregszaszi
296ba24f7f
Do not crash on using _slot and _offset suffixes on their own
2018-08-07 12:14:12 +01:00
chriseth
71e26f6adb
Remove clone feature.
2018-08-07 11:10:50 +01:00
chriseth
0449b6446e
Merge pull request #4694 from ethereum/test-abijson
...
Be explicit about which contract to test for in ABIJSON tests
2018-08-06 19:01:05 +02:00
chriseth
276724dedc
Merge pull request #4663 from ethereum/dropConstantAST
...
[BREAKING] Drop constant field from JSON AST
2018-08-06 18:55:12 +02:00
chriseth
3b5eee4998
Tests for deriving types for empty string.
2018-08-06 17:10:23 +02:00
chriseth
bc73617f5e
Merge pull request #4689 from ethereum/cleanup-050-tests
...
Cleanup 0.5.0 test cases
2018-08-06 14:45:31 +02:00
Alex Beregszaszi
423cd52844
Be explicit about which contract to test for in the Natspec tests
2018-08-06 13:35:53 +01:00
Alex Beregszaszi
3c408a32c4
Be explicit about which contract to test for in ABIJSON tests
2018-08-06 13:30:38 +01:00
Alex Beregszaszi
2ab66bf798
Cleanup 0.5.0 test cases
2018-08-06 12:03:00 +01:00
chriseth
9d03de1f25
Merge pull request #4671 from ethereum/mappingTupleAssignment
...
Disallow assignments to mappings within tuple assignments; allow for local variables.
2018-08-06 12:59:16 +02:00
chriseth
3576980710
Merge pull request #4644 from ethereum/event_struct_error
...
Disallow structs in events without ABIEncoderV2
2018-08-06 11:44:05 +02:00
chriseth
30f981fc2c
Merge pull request #4681 from ethereum/var-suggestion-crash
...
Fix declaration suggestion for var with different number of components
2018-08-06 11:21:54 +02:00
Daniel Kirchner
bdd86cb39c
Update tests.
2018-08-06 11:17:21 +02:00
chriseth
3684151e53
Merge pull request #4677 from ethereum/jsonAstTestExtraction
...
JSON AST test extraction
2018-08-06 11:01:51 +02:00
Alex Beregszaszi
83e6c34526
Fix declaration suggestion for var with different number of components
2018-08-04 15:22:22 +01:00
Daniel Kirchner
55386ba130
Extract AST JSON tests.
2018-08-03 20:35:50 +02:00
Daniel Kirchner
d923926ff7
Infrastructure for extracting JSON AST tests.
2018-08-03 20:35:50 +02:00
Christian Parpart
a4ee1dfc83
Merge pull request #4412 from ethereum/v050-reference-resolver-errorTypeForLoose
...
[BREAKING] permanently set errorTypeForLoose from Warning to SyntaxError
2018-08-03 19:30:33 +02:00
Daniel Kirchner
cbae02b514
Additional semantics test cases.
2018-08-03 17:38:30 +02:00
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
chriseth
58aeffb45b
Merge pull request #4413 from ethereum/dropConstantKeywordOnly
...
Drop constant keyword only
2018-07-03 20:17:01 +02:00
Daniel Kirchner
717c70a88f
Update test suite.
2018-07-03 15:31:34 +02:00
chriseth
96a04be684
Merge pull request #4389 from ethereum/soltestfix
...
fix default difficulty to comply with YP rules
2018-07-03 15:07:58 +02:00
chriseth
f7a9c4203e
Disallow packed encoding of literals.
2018-07-03 01:02:00 +02:00
Daniel Kirchner
9d23fd8013
Update compilation tests.
2018-07-02 18:58:44 +02:00
Daniel Kirchner
469dc7bbe7
Update test contracts.
2018-07-02 18:58:43 +02:00
chriseth
0f3872694b
Merge pull request #4374 from ethereum/v050-var-keyword-removal-preps-end2end-tests
...
V050 var keyword removal preparations (End-to-End tests)
2018-07-02 18:26:46 +02:00
chriseth
08aa7e47e4
Merge pull request #4305 from ethereum/transactionReceipts
...
Determine transaction status in RPC sessions.
2018-07-02 16:09:59 +02:00
Christian Parpart
e251cdcf47
test: ensure compiled tests do not use var-keyword in preparation of var-keyword removal
2018-07-02 14:32:05 +02:00
Daniel Kirchner
9aefe2f118
Remove trailing whitespace in missing visibility warning.
2018-07-02 13:14:58 +02:00
chriseth
9a71b69f40
Merge pull request #4386 from ethereum/testingDefaultVisibility
...
Specify default visibility in syntax tests
2018-07-02 13:06:59 +02:00
Daniel Kirchner
334c023c72
Determine transaction status in RPC sessions.
2018-07-02 12:56:33 +02:00
chriseth
85b9d3927a
Merge pull request #4224 from ethereum/revert_wrong_calldata
...
[BREAKING] Revert if calldata has wrong size
2018-07-02 12:55:22 +02:00
Erik Kundt
1b008c62a1
Adds review suggestions.
2018-07-02 11:44:16 +02:00
Dimitry
7b7df90e76
fix default difficulty to comply with YP rules
...
fix soltest to work with the recent aleth --test
2018-06-30 13:07:30 +03:00
Alex Beregszaszi
328554a4f9
Add new libsolc entry points (solidity_license/version/compile)
2018-06-29 19:30:37 +02:00
Alex Beregszaszi
7d525620d8
Rename JSONCompiler test suite to LibSolc
2018-06-29 17:47:36 +02:00
Erik Kundt
f3ca0685fe
Updates syntax tests to specify default visibility.
2018-06-29 16:26:18 +02:00
chriseth
8747079746
Fix tests.
2018-06-29 16:24:14 +02:00
chriseth
f69e24c85e
Disallow constructor arguments given multiple times.
2018-06-29 16:11:21 +02:00
chriseth
e289c36158
Merge pull request #4354 from ethereum/constructorSyntaxTests
...
Updates tests to new constructor syntax
2018-06-29 15:45:26 +02:00
Erik Kundt
e6d250772d
Updates invalid syntax test.
2018-06-29 13:22:59 +02:00
chriseth
d469df45d8
Merge pull request #4352 from D-Nice/develop
...
Fixes storage ref var typo error from 'prefix' to 'suffix'
2018-06-29 12:27:29 +02:00
Erik Kundt
1346b4407f
Updates syntax tests to new constructor syntax.
2018-06-29 11:27:01 +02:00
Erik Kundt
12c4eb7697
Updates compiled unit tests to new constructor syntax.
2018-06-29 11:27:01 +02:00
chriseth
eeef82b2d7
Fallback function has to be external: backwards-compatible changes.
2018-06-29 00:23:52 +02:00
D-Nice
3cad417710
Add passing test case
2018-06-28 16:45:53 -04:00
Alex Beregszaszi
4268062985
Merge pull request #4365 from ethereum/type-identifier-test
...
Some more type identifier tests
2018-06-28 16:26:25 +02:00
D-Nice
d62476fb1f
Adds storage_reference.sol syntax test
2018-06-27 19:42:46 -04:00
Alex Beregszaszi
775590b0f2
Add more FixedPoint type tests
2018-06-27 19:05:00 +02:00
Alex Beregszaszi
76465f2352
Add one more type identifier escaping test
2018-06-27 18:38:42 +02:00
chriseth
4a842ecc82
Merge pull request #4097 from ethereum/noPackedExceptForPacked
...
[BREAKING] call only takes a single argument and does not pad
2018-06-27 18:29:01 +02:00
chriseth
92cb4acd8a
Also mention regular abi.encode in error message.
2018-06-27 15:00:34 +02:00
chriseth
4e8883b63d
Add emit keyword to tests.
2018-06-27 10:49:16 +02:00
chriseth
01fd5a8d51
Add emit keyword to compilation tests.
2018-06-27 10:37:46 +02:00
chriseth
b9d035264d
Add some more emits.
2018-06-26 20:09:54 +02:00
Alex Beregszaszi
80b7d36187
Remove non-0.5.0 warning for emit keyword (make it mandatory)
2018-06-26 20:00:54 +02:00
chriseth
e6595d8806
Merge pull request #4318 from ethereum/yul-internal
...
Rename some internal constructs from Julia/Iulia to Yul
2018-06-26 12:24:07 +02:00
Christian Parpart
e38139c800
test: Adapted to the change of the var-keyword elimination.
2018-06-26 10:40:26 +02:00
Christian Parpart
a083ccd457
test: drop obsoleted syntaxTest(s)
2018-06-26 10:40:25 +02:00
Leonardo Alt
7763d21cc6
Revert if calldata is too short or points out of bounds
2018-06-26 10:27:48 +02:00
Alex Beregszaszi
e05a31b82b
Rename Julia to Yul in variables
2018-06-26 00:52:36 +02:00
Alex Beregszaszi
91db46b128
Rename test suites from J/Iulia* to Yul*
2018-06-26 00:07:28 +02:00
Erik Kundt
95c3488a26
Updates external contracts to new constructor syntax.
2018-06-26 00:00:32 +02:00
chriseth
4154e1480b
Update tests and add new tests.
2018-06-25 17:17:48 +02:00
chriseth
e299a0031f
Update compilation tests.
2018-06-25 17:17:48 +02:00
chriseth
86a720b96a
Adjust tests.
2018-06-25 17:17:18 +02:00
chriseth
312f422e10
Forwarding length check.
2018-06-25 17:01:45 +02:00
Alex Beregszaszi
6d9a091a8e
Keep the 'if it not used as an address' helper message for all cases of address related warnings
2018-06-25 16:25:21 +02:00
Alex Beregszaszi
c7f842d4cc
Do not change SMT tests
2018-06-25 16:17:50 +02:00
Alex Beregszaszi
d44743c87f
Replace old Truffle artifacts in external Zeppelin/Gnosis tests
2018-06-25 16:17:50 +02:00
Alex Beregszaszi
3ee3018bf6
Update external contracts in compilationTests (to support strict address literals)
2018-06-25 16:17:50 +02:00
Jason Cobb
98c9ca2575
Update tests for strict address literals
2018-06-25 16:17:50 +02:00
Christian Parpart
f44561aeeb
Fixes soltest against "recent" cpp-ethereum builds.
...
For me, it looks like the following Git commit has introduced this behaviour:
42b927d7aa
This commit adds dummy values for `mixHash` and `nonce` (inspired by values were cpp-ethereum's own tests),
and now, soltest runs fine again.
2018-06-25 13:55:23 +02:00
Alex Beregszaszi
e50f8d532a
Disable gnosis tests temporarily
2018-06-21 21:51:28 +02:00
Alex Beregszaszi
72e87423db
Disallow the years unit denomination properly
2018-06-21 20:21:02 +02:00
Christian Parpart
6de24b1c5e
test: drop var-keyword in compilationTests in favor of explicit types
2018-06-21 14:14:16 +02:00
chriseth
0d1047181d
Merge pull request #4306 from ethereum/remove_050_workaround_scoping
...
[BREAKING] C99 scoping rules by default (remove 050 workaround)
2018-06-21 13:57:59 +02:00
Alex Beregszaszi
7e4bd3e346
Merge pull request #4219 from ethereum/functionTypeNamedArguments
...
Turn named return parameters in function types into an error.
2018-06-20 23:51:19 +02:00
Leonardo Alt
8862b3092b
C99 scoping rules by default
2018-06-20 12:53:38 +02:00
chriseth
ba7fbf11e7
Merge pull request #4300 from nventuro/optimize-out-and
...
Add TruthyAnd Peephole optimization
2018-06-20 11:38:37 +02:00
Nicolás Venturo
804eb3ef9d
Improves peephole_truthy_and test case
2018-06-19 17:09:50 -03:00
Alex Beregszaszi
a17059573f
Disallow raw callcode (was deprecated in 0.4.12)
2018-06-19 19:31:07 +02:00
Daniel Kirchner
dbfee87860
Return parameters in function types may not be named.
2018-06-18 00:05:06 +02:00
Nicolás Venturo
172e208c6a
Add TruthyAnd Peephole optimization
2018-06-15 11:27:39 -03:00
Daniel Kirchner
14d0f8c2f1
Refactor syntax test infrastructure to prepare introducing semantics tests.
2018-06-15 10:51:40 +02:00
Daniel Kirchner
0319b184ce
Add difficulty field to genesis chain parameters to fix ipc tests for recent versions of cpp-ethereum.
2018-06-14 16:46:10 +02:00
Alex Beregszaszi
d24f6fd34b
update tests
2018-06-14 09:31:28 +01:00
chriseth
baeabe1c2d
Merge pull request #4282 from ethereum/cli-yul
...
[BREAKING] Renamed the --julia CLI option to --yul
2018-06-14 08:42:37 +02:00
Christian Parpart
a211b89118
Enforce disallowing empty structs
...
This patch enfoces an error when it encounters an empty struct,
effectively eliminating the deprecation warning.
Also adjust 419_interface_structs to explicitely test for (non-empty) structs,
as this behaviour "may" change in the future.
2018-06-14 00:24:43 +01:00
Alex Beregszaszi
ba2a7294d8
Renamed the --julia CLI option to --yul
2018-06-14 00:09:00 +01:00
Alex Beregszaszi
76b4c0e6e6
Properly download branches of external Zeppelin/Gnosis tests
2018-06-12 22:41:56 +01:00
Alex Beregszaszi
62b05d4157
Merge pull request #4283 from ethereum/swap-test-order
...
Execute external Zeppelin tests before Gnosis
2018-06-12 19:48:10 +01:00
Alex Beregszaszi
dae790b118
Execute external Zeppelin tests before Gnosis
2018-06-12 19:11:56 +01:00
chriseth
1dc28c065d
Properly pad data from calldata.
2018-06-12 18:51:40 +01:00
Alex Beregszaszi
2084208dd3
Ensure to always use 0.5.0 mode in solcjs tests
2018-06-12 18:16:18 +01:00
Alex Beregszaszi
d39917fd0d
Update external contract in compilationTests to not use deprecated sha3
2018-06-12 18:16:18 +01:00
Alex Beregszaszi
9de45383d8
Disallow sha3/suicide aliases
2018-06-12 18:16:18 +01:00
Alex Beregszaszi
d1e7e9ef5e
Merge pull request #3627 from ethereum/additional-keywords
...
[BREAKING] Add new reserved keywords.
2018-06-12 16:33:26 +01:00
Daniel Kirchner
e2f4a9fcf4
Merge pull request #4277 from ethereum/signedRightShift
...
Signed Right Shift: Additional test and more explanation.
2018-06-12 17:19:20 +02:00
chriseth
2c8eca5dcf
Merge pull request #4265 from ethereum/remove-std
...
Remove obsolete 'std' directory
2018-06-12 16:59:51 +02:00
Daniel Kirchner
e4b7b2160e
Add new reserved keywords.
2018-06-12 16:02:53 +02:00
Daniel Kirchner
510f227bd7
Additional test and more explanation.
2018-06-12 15:53:15 +02:00
Daniel Kirchner
1f1ec180fb
Merge pull request #4273 from ethereum/soltestExceptions
...
Improve exception handling in soltest and isoltest.
2018-06-12 12:26:05 +02:00
Daniel Kirchner
9f546cfafc
Improve exception handling in soltest and isoltest.
2018-06-12 11:06:14 +02:00
Daniel Kirchner
f33dc92cbd
Use proper SAR for signed right shifts and emulate on pre-constantinople.
2018-06-12 09:32:19 +01:00
Alex Beregszaszi
99c585fd8a
Remove obsolete 'std' directory
2018-06-11 20:11:10 +01:00
Alex Beregszaszi
d035561992
Merge pull request #4206 from ethereum/050-testing
...
Use temporary fork of Gnosis/Zeppelin contracts
2018-06-11 19:57:56 +01:00
Alex Beregszaszi
24ca596c66
Merge pull request #4241 from ethereum/show-named-arg
...
Show named argument name in error
2018-06-06 16:32:08 +01:00
Alex Beregszaszi
0f572159ec
Show named argument name in error
2018-06-06 15:59:27 +01:00
Alex Beregszaszi
b2a3e165cb
Extract test cases from ViewPureChecker
2018-06-06 15:41:41 +01:00
chriseth
4073c02cf3
Merge pull request #4208 from ethereum/extract-name-and-type-tests
...
Extract name and type tests
2018-06-04 19:54:14 +02:00
chriseth
1ce40f4089
Move "create2_as_variable" back to non-isoltest tests.
2018-06-04 19:14:25 +02:00
chriseth
c59a06bb97
Merge pull request #4213 from ethereum/fixpop
...
Fix bug related to byte array pop.
2018-06-04 16:10:56 +02:00
Alex Beregszaszi
31a258458b
Update imported stringutils to use keccak256
2018-06-04 01:05:01 +01:00
Jason Cobb
7de0d56aae
Remove sha3/suicide from assembly tests
2018-06-04 01:04:49 +01:00
chriseth
4b7e58f22f
Add test for pop on the stack.
2018-05-31 15:01:45 +02:00
Alex Beregszaszi
e58ffda9fd
Remove extracted tests from SolidityNameAndTypeResolution
2018-05-30 20:04:34 +01:00
Alex Beregszaszi
6e23006937
Split out SolidityNameAndTypeResolution tests into SyntaxTests
2018-05-30 19:50:06 +01:00
Alex Beregszaszi
deeca7bc5d
Reformat test for extraction tool
2018-05-30 18:46:28 +01:00
chriseth
0a1a8bfb09
Merge pull request #4172 from ethereum/trailing_dot
...
[BREAKING] Disallow trailing dot not followed by number
2018-05-30 18:51:52 +02:00
chriseth
0e3d4f773f
Merge pull request #4205 from ethereum/name-and-type-tests-split
...
Split up last NameAndTypeResolution test cases
2018-05-30 18:48:08 +02:00
chriseth
5a73044fa7
Merge pull request #3743 from ethereum/popStorageArray
...
pop() for storage arrays
2018-05-30 18:32:08 +02:00
Alex Beregszaszi
396b188352
Use temporary fork of Gnosis/Zeppelin contracts
...
Hopefully to be merged into upstream after the 0.5.0 release.
2018-05-30 16:47:11 +01:00
Erik Kundt
fea0d116f7
Fixes assembly bug and adds tests to cover it.
2018-05-30 17:46:43 +02:00
Erik Kundt
98d52beba3
Adds syntax tests, documentation and changelog entry.
...
Refines comment for array utility function.
2018-05-30 17:43:20 +02:00
Alex Beregszaszi
faf96e8e3f
Gnosis and Zeppelin repo names have changed
2018-05-30 16:42:21 +01:00
Alex Beregszaszi
4ec3f508b0
Split up last NameAndTypeResolution test cases
2018-05-30 16:40:49 +01:00
Erik Kundt
34b5eca1f8
Improves assembly and adds more tests.
2018-05-30 17:40:33 +02:00
Leonardo Alt
ac68710789
Disallow trailing dots that are not followed by a number
2018-05-30 15:14:53 +01:00
chriseth
41965ca262
Merge pull request #4176 from sifmelcara/add/calldata-keyword
...
Add a new keyword, "calldata", to allow explicitly specify data location in external function's argument list
2018-05-30 14:42:50 +02:00
mingchuan
b7cafcbdf9
Allow using calldata
keyword to specify data location
2018-05-30 18:05:55 +08:00
Alex Beregszaszi
ddc4492d5e
Split up NameAndTypeResolution test cases
2018-05-30 06:19:05 +01:00
Alex Beregszaszi
6eedc6e797
Extend function type comparison test
2018-05-30 06:16:35 +01:00
Erik Kundt
7156a01acc
Implements pop() for byte arrays.
2018-05-29 12:53:02 +02:00
bitshift
e9dcfb0b62
Implements pop() for value type arrays.
2018-05-29 12:53:02 +02:00
Alex Beregszaszi
885b08df40
Simplify fromElementaryTypeName tests
2018-05-23 17:41:27 +01:00
Alex Beregszaszi
536b3202a6
Move fromElementaryTypeName tests to SolidityTypes
2018-05-23 17:39:52 +01:00
chriseth
5ee2ce353e
Merge pull request #4067 from ethereum/050
...
[BREAKING] Version 0.5.0
2018-05-23 18:11:20 +02:00
Alex Beregszaszi
8f3c119531
Move comments into test sources in SolidityNameAndTypeResolution
2018-05-23 15:18:36 +02:00
Alex Beregszaszi
31fa6a24df
Move more parser tests to syntax tests
2018-05-22 13:25:04 +02:00
Daniel Kirchner
1cbc037a45
Update control flow graph.
2018-05-16 18:32:48 +02:00
Daniel Kirchner
f627dc77d0
Fix continue inside do-while.
2018-05-16 18:32:48 +02:00
Daniel Kirchner
f5a49f679a
Adjust tests.
2018-05-16 18:32:47 +02:00
Daniel Kirchner
5c59d56335
Disallow conversions between bytesX and uintY of different size.
2018-05-16 18:32:47 +02:00
Leonardo Alt
a19b516b2b
Add syntax tests and Changelog entry
2018-05-16 18:32:47 +02:00
Leonardo Alt
0b6eea0c55
Bool variables should not allow arithmetic comparison
2018-05-16 18:32:47 +02:00
chriseth
9705678269
Merge pull request #3987 from ethereum/solc_remove_stdin
...
BREAKING Solc: read from stdin only if "-" is explicitly given
2018-05-16 18:32:44 +02:00
Alex Beregszaszi
0bed065ee7
Fix source location assertion in isoltest
2018-05-16 15:52:43 +02:00
Alex Beregszaszi
adce9ca812
Tidy up tests to always have closing braces on the proper line
2018-05-16 15:52:24 +02:00
Alex Beregszaszi
221a4d1f1f
Split warning for multi arguments for hash functions
2018-05-16 11:12:25 +02:00
chriseth
03f60410c9
Add test for single non-bytes argument.
2018-05-16 09:48:03 +02:00
chriseth
203475ef02
Adjust tests.
2018-05-16 09:48:03 +02:00
chriseth
8b98ff470c
Add test for forwarding length check.
2018-05-16 09:48:03 +02:00
chriseth
03c2484407
Merge pull request #4145 from ethereum/more-parser-test-moves
...
Move couple of parser tests to syntax tests.
2018-05-16 09:44:47 +02:00
chriseth
c781baf733
Add tests for multi variable declaration statement.
2018-05-16 03:52:24 +02:00
Alex Beregszaszi
7fb43fe854
Move couple of parser tests to syntax tests.
2018-05-16 03:48:37 +02:00
chriseth
2ba0002998
Merge pull request #4139 from ethereum/abiEncodeIsPure
...
ABI encoding functions are pure and should be usable in constants.
2018-05-15 16:59:48 +02:00
chriseth
63861aac4a
Merge pull request #3947 from ethereum/smt_storage
...
[SMTChecker] Support to integer and Bool storage vars
2018-05-15 14:54:41 +02:00
chriseth
dac0029d16
ABI encoding functions are pure and should be usable in constants.
2018-05-15 14:45:54 +02:00
chriseth
dce6224052
Merge pull request #4062 from ethereum/revert-variable
...
Fix revert with reason coming from a string variable
2018-05-15 14:44:39 +02:00
Leonardo Alt
a0b42105e4
Testing state vars that are declared after functions that use them
2018-05-15 14:28:08 +02:00
Leonardo Alt
4117e859eb
[SMTChecker] Declaring all state vars before any function is visited
2018-05-15 14:28:08 +02:00
Leonardo Alt
2dbb35d4a8
[SMTChecker] Support to integer and Bool storage vars
2018-05-15 14:22:50 +02:00
Daniel Kirchner
56238ab1ec
Add test for default location.
2018-05-14 20:23:40 +02:00
Daniel Kirchner
16e966dea0
Add control flow analyzer and test for uninitialized storage returns.
2018-05-14 20:23:40 +02:00
chriseth
ab63ab1cbb
Merge pull request #4093 from ethereum/prepareDropConstantKeyword
...
Prepare drop constant keyword.
2018-05-14 12:47:07 +02:00
Daniel Kirchner
9b7ded2f78
Remove "view"'s in end-to-end tests that will result in errors in 0.5.0.
2018-05-11 11:01:06 +02:00
mingchuan
dbd0a7ed60
Fix link error when using boost shared library
2018-05-11 11:20:19 +08:00
Alex Beregszaszi
c03a29dea8
Fix revert with reason coming from a string variable
2018-05-09 17:53:17 +02:00
Daniel Kirchner
bc47265b3f
Replace constant with view in the tests.
2018-05-09 15:07:47 +02:00
Alex Beregszaszi
2c3f57bec6
Merge pull request #4104 from ethereum/parserErrorSourceLocations
...
Proper source locations for parser errors.
2018-05-09 14:06:30 +01:00
Daniel Kirchner
305fc0626b
Update test expectations.
2018-05-09 14:08:25 +02:00
Daniel Kirchner
3e6a8d7c2a
Add more tests for right shifts.
2018-05-09 12:50:56 +02:00
Alex Beregszaszi
8afd0ea030
Introduce Julia filter to encapsulate top level Block as a FunctionDefinition (wasm specific)
2018-05-09 11:21:03 +02:00
chriseth
54aa10ce36
Merge pull request #4054 from ethereum/token-names
...
Improve parser error messages
2018-05-09 11:06:23 +02:00
chriseth
bbae4fb0ef
Test with high path complexity.
2018-05-09 10:53:31 +02:00
chriseth
8ee5d3b274
New tests for wildcard assignments.
2018-05-08 15:32:36 +01:00
chriseth
43ec1699ba
Remove deprecated syntax from a test
2018-05-08 15:13:32 +01:00
chriseth
07e862a145
Extract tests.
2018-05-08 15:13:32 +01:00
chriseth
d0bd549d85
Merge pull request #3256 from ethereum/fullInliner
...
Full inliner
2018-05-07 11:31:35 +02:00
Leonardo Alt
db5ea8ec03
Read from stdin only if - is explicitly given
2018-05-07 09:32:46 +02:00
chriseth
150d226603
Merge pull request #4063 from ethereum/emit-non-event
...
Show proper error when trying to emit a non-event
2018-05-04 15:02:04 +02:00
Alex Beregszaszi
840ed1e88a
Update parser test expectations
2018-05-04 13:31:56 +01:00
Alex Beregszaszi
ffe7f224a6
Show proper error when trying to emit a non-event
2018-05-04 12:47:01 +02:00
Alex Beregszaszi
ed9f80690b
Simplify expectIdentifierToken by using expectToken
2018-05-03 22:10:51 +01:00
chriseth
650244f619
Merge pull request #4053 from ethereum/parser-syntax-tests
...
Move some parser tests to syntax tests
2018-05-03 08:35:00 +02:00
Alex Beregszaszi
07e765a2f1
Move some parser tests to syntax tests
2018-05-02 21:21:11 +01:00
chriseth
d2145428c5
Fix test case strings.
2018-05-02 17:39:42 +02:00
chriseth
78945e81e4
Test the removal of the result variable.
2018-05-02 17:39:42 +02:00
chriseth
5cd84a630c
Tests.
2018-05-02 17:39:42 +02:00
chriseth
a856135bbf
Merge pull request #3797 from ethereum/shift-constantinople
...
Use native shift instructions on Constantinople
2018-05-02 16:50:15 +02:00
chriseth
8debded743
Revert "BREAKING: Bool variables should not allow arithmetic comparison"
2018-05-02 15:56:59 +02:00
chriseth
42289b642f
Merge pull request #4003 from ethereum/bool_vars_comparison
...
BREAKING: Bool variables should not allow arithmetic comparison
2018-05-02 15:56:06 +02:00
Alexander Arlt
f94b793472
Add virtual destructors on base classes.
2018-05-02 13:29:16 +02:00
Alex Beregszaszi
971941b3f6
Update source location test expectations
2018-04-30 21:23:08 +01:00
Alex Beregszaszi
c44294d02d
Add syntax tests for bytesM
2018-04-30 13:02:02 +01:00
Leonardo Alt
d43436cfec
Add syntax tests and Changelog entry
2018-04-27 14:13:18 +02:00
Leonardo Alt
ab251c7e7d
Bool variables should not allow arithmetic comparison
2018-04-27 11:35:58 +02:00
chriseth
d1e1293fbd
Merge pull request #3981 from ethereum/years-suffix
...
The "year" denomination is deprecated
2018-04-24 12:12:03 +02:00
Alex Beregszaszi
258ae8927e
Merge pull request #3970 from elopio/test/docstring-tag-end
...
docstring: add missing space
2018-04-24 02:16:27 +01:00
Leo Arias
b74566e4ea
docstring: add missing space
2018-04-23 21:47:53 +00:00
chriseth
e685f9f59e
Merge pull request #3976 from ethereum/emptyTupleComponent
...
Empty tuple components should not be possible
2018-04-23 17:35:00 +02:00
Alex Beregszaszi
1ac0090f31
The "year" denomination is deprecated
2018-04-23 16:19:51 +01:00
Alex Beregszaszi
75faed7c55
Add more denomination tests
2018-04-23 16:14:39 +01:00
Erik Kundt
896018c8a3
Treats inline array as an error.
2018-04-23 17:11:41 +02:00
Alex Beregszaszi
6d26ad1e61
Extract subdenomination tests
2018-04-23 16:10:10 +01:00
Erik Kundt
b2ff9bc88d
Turns it into warning (error for 0.5.0) and adds Changelog entry.
2018-04-23 17:09:42 +02:00
Erik Kundt
f2b58de92c
Prevents null type from being used in tuple.
2018-04-22 16:54:33 +02:00
Alex Beregszaszi
0493e3b053
Turn deprecated warnings for sha3/suicide into errors (experimental 0.5.0)
2018-04-20 17:40:48 +01:00
Alex Beregszaszi
edd20ebefb
Extract syntax tests
2018-04-20 17:38:16 +01:00
Alex Beregszaszi
65345162b4
Update tight packing test cases
2018-04-20 12:01:51 +01:00
Alex Beregszaszi
069ea38916
Make literals an error for tight packing (experimental 0.5.0)
2018-04-20 11:58:16 +01:00
Alex Beregszaszi
38460d8b47
Remove unnecessary masking of the result of known short instructions
2018-04-19 23:59:06 +01:00
chriseth
2546a274ca
Merge pull request #3941 from ethereum/bytes-contract
...
Disallow explicit conversion of bytesXX to contract
2018-04-19 16:10:15 +02:00
Alex Beregszaszi
754d79edfa
Disallow explicit conversion of bytesXX to contract
2018-04-19 15:58:14 +02:00
chriseth
6407f1f7bb
Merge pull request #3932 from ethereum/betterErrorForFailedLookup
...
Better error for failed lookup
2018-04-19 14:25:12 +02:00
Alex Beregszaszi
d577f06ad8
Merge pull request #3928 from ethereum/removeZeppelinPatches
...
Remove Zeppelin patches.
2018-04-19 00:25:48 +01:00
chriseth
a94945dfe4
Improve error message for failed member lookup.
2018-04-18 22:56:45 +01:00
chriseth
17beac1e07
Extract tests.
2018-04-18 22:52:29 +01:00
chriseth
4895864302
Warn about functions named "constructor".
2018-04-18 21:23:09 +02:00
chriseth
e22929ebb8
Remove Zeppelin patches.
2018-04-18 18:14:45 +02:00
chriseth
29a97f1641
Fix name clashes between constructor and fallback function.
2018-04-18 14:24:35 +02:00
chriseth
f510348ff1
Extract tests.
2018-04-18 14:24:35 +02:00
chriseth
3d04d83297
Merge pull request #3868 from ethereum/bytescleanup
...
Properly force-clean for shortening bytesXX conversions.
2018-04-16 15:23:36 +02:00
chriseth
533d08517f
Merge pull request #3793 from ethereum/rationalNumberLimit
...
Rational number limit
2018-04-16 13:10:50 +02:00
chriseth
bf57500e25
Tests for bytes cleanup.
2018-04-16 12:47:38 +02:00
Erik Kundt
33fbf88707
Limits rational numbers to 4096 bits.
2018-04-16 11:45:55 +02:00
chriseth
95c49b367e
Merge pull request #3875 from ethereum/constructorSelfRef
...
Stricter check for "this" in constructor.
2018-04-13 18:39:31 +02:00
Daniel Kirchner
be37e3a912
Stricter check for member access to "this" in constructor.
2018-04-13 15:57:13 +02:00
Erik Kundt
6c656a9391
Adds unit test that covers long typeDescription and renames suite.
2018-04-12 21:14:50 +02:00
Erik Kundt
34da3e634f
Separates tests for legacy and compact output.
2018-04-12 21:14:50 +02:00
Erik Kundt
824008340a
Adds type expectations to legacy tests.
2018-04-12 21:14:50 +02:00
Erik Kundt
8935c0dd2f
Uses short string representation of TypePointer
2018-04-12 21:14:50 +02:00
chriseth
7054defdd6
Merge pull request #3364 from ethereum/revertWithReason
...
Revert with reason
2018-04-12 21:01:08 +02:00
chriseth
44416d1ac6
Merge pull request #2980 from ethereum/abi-api
...
Add abi.encode and abi.encodePacked
2018-04-12 20:55:03 +02:00
chriseth
966367305a
Remove dead code and clarify throw.
2018-04-12 20:13:16 +02:00
Daniel Kirchner
db40bd46af
Add additional test for `var
` for storage variables.
2018-04-12 16:46:35 +02:00
chriseth
75b8828666
Allow struct encoding with new encoder.
2018-04-12 16:37:16 +02:00
Daniel Kirchner
6862f22943
Fix internal compiler error when parsing `var
` declaration without identifier.
2018-04-12 14:57:14 +02:00
chriseth
b25598126e
Update documentation and minor changes.
2018-04-12 13:09:38 +02:00
chriseth
4faa839813
Use error signature for revert data.
2018-04-12 13:09:38 +02:00
chriseth
338a875134
Update expectation.
2018-04-12 13:09:38 +02:00
chriseth
e133b1a0cd
Adjust expectations in case of homestead VM.
2018-04-12 13:09:38 +02:00
chriseth
42c4c78390
Adjust tests.
2018-04-12 13:09:38 +02:00
chriseth
167ee2fcbb
Update source location tests.
2018-04-12 13:09:38 +02:00
chriseth
aa715f8759
Tests about error bubbling for create and transfer.
2018-04-12 13:09:38 +02:00
chriseth
7a9ee69e98
Bubble up error messages.
2018-04-12 13:09:38 +02:00
chriseth
ae1d040285
Allow error string for `require
`.
2018-04-12 13:09:37 +02:00
chriseth
a06249c984
Tests for revert with reason string.
2018-04-12 13:09:37 +02:00
chriseth
c3dc67d0e0
Merge pull request #3848 from ethereum/constantDivisionByZero
...
Error on invalid arithmetic with constant expressions.
2018-04-12 11:49:08 +02:00
Daniel Kirchner
d42476e241
Add test to check ConstantEvaluator for pure non-rational functions.
2018-04-12 11:33:54 +02:00
chriseth
7343c40283
Check partial function parameters if rest is arbitrary.
2018-04-12 00:10:25 +02:00
chriseth
c4a6a63f36
Tests for view and pure.
2018-04-12 00:10:25 +02:00
chriseth
44c0d7ca5e
Tests.
2018-04-12 00:10:25 +02:00
Daniel Kirchner
932915633b
Add tests for literal operations as well.
2018-04-11 23:20:40 +02:00
Alex Beregszaszi
d56acb68ab
Add abi.encode, abi.encodePacked, abi.encodeWithSelector and abi.encodeWithSignature.
2018-04-11 22:32:10 +02:00
chriseth
b5a696ad48
Properly cope with constructor headers.
2018-04-11 22:00:21 +02:00
chriseth
52f68d3b63
Update expectations.
2018-04-11 22:00:21 +02:00
chriseth
4e1ea0866d
Extract modifier tests.
2018-04-11 22:00:21 +02:00
chriseth
2ad1acaf72
Warn if modifiers are applied to functions without implementation.
2018-04-11 22:00:21 +02:00
chriseth
42b90ad4c3
New tests for function state variables.
2018-04-11 22:00:04 +02:00
chriseth
08e807aea0
Add expectations.
2018-04-11 22:00:04 +02:00
chriseth
bd27ce0e25
Extract function type tests.
2018-04-11 22:00:04 +02:00
chriseth
ae3fca6db2
Merge pull request #3863 from ethereum/fixGasEstimation
...
Correctly ignore costs of fallback for other functions.
2018-04-11 21:53:41 +02:00
Daniel Kirchner
daa69df447
Error on invalid arithmetic with constant expressions.
2018-04-11 21:17:10 +02:00
chriseth
928ce08845
Correctly ignore costs of fallback for other functions.
2018-04-11 19:42:34 +01:00
Daniel Kirchner
cb548f6f53
Fix ConstantEvaluator to correctly handle single element tuples.
2018-04-11 18:30:34 +02:00
Daniel Kirchner
fdcbf1337a
Syntax Tests: extract array_length_* tests.
2018-04-11 18:01:24 +02:00
chriseth
d50d1f0ac1
Merge pull request #3580 from ethereum/asm-bitshift-optim
...
Add simplification rule for bitwise shifting
2018-04-11 17:18:31 +02:00
chriseth
05781c955b
Fix line numbers for errors.
2018-04-11 16:37:49 +02:00
chriseth
c9bdbcf470
Merge pull request #3309 from ethereum/limit-errors
...
Limit the number of errors output in a single run to 256
2018-04-11 16:13:41 +02:00
Jason Cobb
3b7b962b66
Fix bug in typechecking when comparing rational literals
2018-04-11 12:03:08 +02:00
Alex Beregszaszi
2e73ef5ac5
Ignore shift warnings on constantinople tests
2018-04-10 15:29:55 +01:00
Alex Beregszaszi
5f76f47f2e
Add end to end tests for SHL/SHR/SAR instructions (constantinople only)
2018-04-10 15:29:54 +01:00
Daniel Kirchner
f03695731b
Add source locations to syntax test expectations.
2018-04-10 14:08:22 +02:00
Daniel Kirchner
3eedbc6a9c
Error when using no parentheses in modifier-style constructor calls.
2018-04-10 12:09:34 +02:00
Daniel Kirchner
b918a105a4
Move constructor argument override check to TypeChecker and reuse annotations in ContractCompiler.
2018-04-09 15:26:08 +02:00
Daniel Kirchner
b8fdb666e2
Allow duplicated constructor calls, if no arguments; support for multiple inheritance; backwards compatibility.
...
# tmp
2018-04-09 15:26:05 +02:00
Federico Bond
4e037281ac
Error on duplicated super constructor calls
2018-04-09 11:22:35 +02:00
chriseth
a38418f0d9
Common subexpression eliminator.
2018-04-06 15:16:29 +02:00
Alex Beregszaszi
d5f40c141b
Limit the number of errors output in a single run to 256
2018-04-06 13:52:19 +02:00
chriseth
5b1c0506fa
Allow `memory
` suffix for internal elementary type parsing.
2018-04-05 16:06:04 +02:00
chriseth
95b0589f77
Merge pull request #3828 from ethereum/soltest
...
Show JSON error if jsonParseStrict failed in soltest
2018-04-05 15:22:26 +02:00
chriseth
2d22549f64
Merge pull request #3827 from ethereum/constantinople
...
Support constantinople in soltest
2018-04-05 15:21:45 +02:00
Daniel Kirchner
037eba20fc
Merge pull request #3824 from ethereum/baseArgumentsEmptyParenthesis
...
Error when using empty parentheses for base class constructors that r…
2018-04-05 14:43:28 +02:00
Alex Beregszaszi
ac6a30442f
Support constantinople in soltest
2018-04-05 12:11:24 +02:00
Alex Beregszaszi
36d6c27e68
Merge pull request #3745 from ethereum/fixRecursion
...
Fix invalid recursion errors for structs
2018-04-05 12:04:54 +02:00
Alex Beregszaszi
7f232358bb
Show JSON error if jsonParseStrict failed in soltest
2018-04-05 11:59:31 +02:00
chriseth
c6da5c1650
Merge pull request #3822 from ethereum/swap-comparison
...
Replace comparison operators with opposites if preceded by SWAP1
2018-04-05 11:57:26 +02:00
Daniel Kirchner
96eff0ff6a
Error when using empty parenthesis for base class constructors that require arguments.
2018-04-05 11:52:22 +02:00
Alex Beregszaszi
8dc9113e37
Add end-to-end test for SwapComparison and CommutativeSwap peephole optimisers
2018-04-05 10:54:39 +02:00
Alex Beregszaszi
02ea0e547f
Replace comparison operators with opposites if preceded by SWAP1
2018-04-04 17:47:58 +02:00
chriseth
65f18a18de
More specific push implementation.
2018-04-04 16:50:45 +02:00
chriseth
016f562348
Merge pull request #3808 from ethereum/parserTests
...
SyntaxTests: extend syntax tests and isoltest to support parser error…
2018-04-04 14:52:01 +02:00
chriseth
0cbe55005d
Create empty dynamic memory arrays more efficiently.
2018-04-04 12:37:04 +02:00
Alex Beregszaszi
920de496ab
Merge pull request #3798 from ethereum/commutative-swap
...
Remove useless SWAP1 in front of commutative operations
2018-04-04 08:15:24 +02:00
Daniel Kirchner
87ad337ae0
Adds parsing sub-directory in syntaxTests and moves two example tests from SolidityParser.cpp to test contracts.
2018-04-03 19:54:46 +02:00
Daniel Kirchner
6f9644add1
SyntaxTests: extend syntax tests and isoltest to support parser errors and compiler exceptions.
2018-04-03 19:54:45 +02:00
Alex Beregszaszi
be6051bead
Test multiple instructions with the (non)commutative peephole optimiser
2018-04-03 18:57:28 +02:00
Alex Beregszaszi
17bcabb6cf
Remove useless SWAP1 in front of commutative operations
2018-04-03 18:57:07 +02:00
Daniel Kirchner
c98464db06
Remove redundant test and enforce success without warnings.
2018-04-03 18:21:55 +02:00
Daniel Kirchner
d664a599e6
Constructors are defined using the `constructor
` keyword.
2018-04-03 18:21:55 +02:00
Alex Beregszaszi
0edce4b570
Merge pull request #3693 from ethereum/optimizeMLOAD
...
Optimize across MLOAD if MSIZE is not used.
2018-04-03 15:58:11 +01:00
chriseth
8fdbd19a05
Extract constant cycle tests.
2018-04-03 16:29:18 +02:00
chriseth
5bdadff0d8
Fix detection of recursive structs.
2018-04-03 16:27:28 +02:00
chriseth
c42caedec2
Extract recursive struct tests.
2018-04-03 16:27:28 +02:00
Alex Beregszaszi
7753249f64
Merge pull request #3699 from ethereum/interfaceExternalVisibility
...
Defaults to external visibility for interfaces.
2018-04-03 15:15:36 +01:00
chriseth
a54fdc495f
Fix: Treat empty base constructor argument list as not provided.
2018-04-03 14:53:48 +02:00
chriseth
e64e397f24
Add memory array init test.
2018-04-03 14:34:32 +02:00
chriseth
138dba1a3f
Test number of sstore operations.
2018-04-03 14:34:32 +02:00
chriseth
6777f7a57f
Optimize across MLOAD if MSIZE is not used.
2018-04-03 14:34:32 +02:00
Erik Kundt
f9efa41749
Makes visibility warning more concise.
2018-04-03 11:16:50 +02:00
Erik Kundt
601659c384
Moves all interface function visibility related tests.
2018-04-03 11:16:50 +02:00
bitshift
8fe1cfb12e
Defaults to external visibility for interfaces.
2018-04-03 11:16:44 +02:00
Jason Cobb
e37b619593
Set default fixed point decimal places to 18
2018-03-31 00:56:36 +01:00
Alex Beregszaszi
076c0754ea
Update tests for empty structs
2018-03-31 00:27:01 +01:00
chriseth
326d656a55
Merge pull request #3790 from ethereum/empty-structs
...
Disallow empty structs
2018-03-30 13:58:35 +02:00
chriseth
5c8a6aac69
Prevent encoding of weird types and support packed encoding of external function types.
2018-03-29 09:57:11 +01:00
Anthony Broad-Crawford
8a18f22b87
Support for error on non-existant or irregular files with command line option to ignore
2018-03-28 10:25:43 +01:00
chriseth
3bb54e8bd5
Merge pull request #3775 from federicobond/improve-error-fractional-shift
...
Improve error message when attempting to shift by fractional number
2018-03-28 11:16:44 +02:00
Alex Beregszaszi
ebb12756ad
Still allow empty structs for non-0.5.0 mode
2018-03-27 15:49:41 +01:00
Alex Beregszaszi
b540ba527a
Disallow empty structs
2018-03-27 15:49:41 +01:00
chriseth
62559cf127
Merge pull request #3681 from ethereum/interface-external
...
Allow overriding external functions in interfaces with public in a child
2018-03-27 15:47:59 +02:00
chriseth
59538e9a04
Merge pull request #3686 from ethereum/doNotIncludeItnernal
...
Do not include internal functions only used by constructor
2018-03-27 15:28:08 +02:00
chriseth
af26228159
Merge pull request #3748 from ethereum/extractScopingTests
...
Extract scoping tests
2018-03-27 15:23:36 +02:00
chriseth
f8f50e14d2
Test that internal functions only used by constructor are not included in runtime context.
2018-03-27 04:00:12 +01:00
bitshift
2c56e53046
Changes deprecation and adjusts tests.
2018-03-27 03:30:03 +01:00
bitshift
be35a65eb3
Adds unit tests for moved function.
2018-03-27 03:30:03 +01:00
Alex Beregszaszi
ef3595b000
Allow overriding external functions in interfaces with public in an implementing contract
2018-03-26 11:35:17 +01:00
Federico Bond
b79531bebf
Improve error message when trying to shift by fractional number
2018-03-22 10:05:49 -03:00
chriseth
85b0cfea9a
Merge pull request #3308 from ethereum/usereturndatacopy
...
Use returndatacopy for retrieving dynamically sized outputs.
2018-03-21 18:12:41 +01:00
Alex Beregszaszi
8fd53c1c03
Merge pull request #3744 from ethereum/useUsrBinEditor
...
Use /usr/bin/editor if exists.
2018-03-21 15:28:21 +00:00
chriseth
cc0f70263f
Tests for returning dynamic data.
2018-03-21 14:53:29 +00:00
chriseth
c2709a2d8e
Decode dynamic data.
2018-03-21 14:53:29 +00:00
Daniel Kirchner
e68c19c47b
Only consider files ending with .sol and not starting with ~ in syntax tests.
2018-03-16 12:28:21 +01:00
chriseth
c9db105ad7
Extract scoping tests.
2018-03-16 00:47:32 +01:00
chriseth
ea8d5f8afc
Use /usr/bin/editor if exists.
2018-03-15 18:20:23 +01:00
Daniel Kirchner
50ad89d369
Only colour error type, not error message in isoltest.
2018-03-15 16:27:54 +01:00
Daniel Kirchner
7fa892eca9
Add interactive test tool isoltest.
2018-03-15 16:23:49 +01:00
Daniel Kirchner
269241e910
Add formatted printing to SyntaxTest and expand its public interface.
2018-03-15 16:23:46 +01:00
chriseth
78abe81f08
Merge branch 'develop' into externalFunctionsInLibraries
2018-03-14 18:07:55 +01:00
chriseth
d0c96d53e9
Merge pull request #3734 from ethereum/soltestOptions
...
test: Rename test/TestHelper.* to test/Options.* and add Options::val…
2018-03-14 18:05:48 +01:00
chriseth
abc7a45230
Merge pull request #3725 from ethereum/blockhashNoCall
...
Allow ``block.blockhash`` without it being called.
2018-03-14 18:04:40 +01:00