chriseth
5c411b472b
Merge pull request #1728 from ethereum/externalfunctiontypes
...
Convert reference types to pointers in member function conversion.
2017-03-02 12:08:17 +01:00
chriseth
ea7f5f9640
Style.
2017-03-02 12:07:50 +01:00
chriseth
f35b70f3a3
Test case for external function type with calldata argument.
2017-03-01 15:53:24 +01:00
chriseth
9f1a67caa5
Some logging around account creation.
2017-03-01 11:32:29 +01:00
chriseth
4305ecb0e7
Try reading multiple times from IPC.
2017-02-25 00:11:26 +01:00
chriseth
9acfdb8044
Print full error on failure.
2017-02-24 19:32:44 +01:00
chriseth
8877d4a781
Compiler error is not a failure.
2017-02-24 19:32:44 +01:00
chriseth
673268a6f8
Merge pull request #1651 from ethereum/transfer-method
...
Add address.transfer(value)
2017-02-24 15:42:52 +01:00
chriseth
6bbba106a7
Merge pull request #1710 from ethereum/strictasmtests
...
Check error messages for assembly tests.
2017-02-24 08:26:16 +01:00
Alex Beregszaszi
4d290e551c
Disallow setting .gas() on .transfer()
2017-02-24 00:27:36 +00:00
Alex Beregszaszi
cde027d144
Fix test for gas overloading in .transfer()
2017-02-24 00:18:18 +00:00
Alex Beregszaszi
81006dae98
Support gas modifier on addr.transfer()
2017-02-24 00:18:18 +00:00
Alex Beregszaszi
ba437ef31a
Add type checking test for address methods
2017-02-24 00:18:18 +00:00
Alex Beregszaszi
16e48219d3
Add test for address.transfer()
2017-02-24 00:17:45 +00:00
chriseth
4b1e8111cc
Remove assert for now.
2017-02-23 19:43:40 +01:00
chriseth
5cd01ab7d1
Test for unbalanced stack due to loading two values from outside.
2017-02-20 12:33:22 +01:00
chriseth
50894c6af8
Fix compiler warning.
2017-02-20 11:57:50 +01:00
chriseth
d794d35e50
Also check imbalanced stack.
2017-02-20 11:42:23 +01:00
Alex Beregszaszi
419ab9260e
Merge pull request #1703 from ethereum/fuzzer
...
Executable for use with AFL
2017-02-17 22:57:47 +00:00
chriseth
354f92f813
Check error messages for assembly tests.
2017-02-17 16:39:51 +01:00
chriseth
7bdc4ddab2
Merge pull request #1627 from ethereum/asmfunctions
...
Parsing assembly function definitions and calls.
2017-02-16 20:12:31 +01:00
chriseth
f66ebbc8e2
Report failures correctly to AFL.
2017-02-16 18:05:11 +01:00
chriseth
8be318e75b
Include non-fuzzing fuzzer tests in commandline run.
2017-02-16 17:13:55 +01:00
chriseth
f93f9fa3a0
Add executable for use with AFL.
2017-02-16 16:59:19 +01:00
chriseth
e629cf5bc3
Test case.
2017-02-16 14:57:00 +01:00
chriseth
01fcd989b5
More tests.
2017-02-16 10:18:16 +01:00
chriseth
49a919b3e0
Parsing function calls.
2017-02-16 10:15:22 +01:00
chriseth
5d584aded8
Parsing function definitions.
2017-02-16 10:15:22 +01:00
chriseth
5e8a1e0ae6
Test for unicode string literals.
2017-02-15 15:21:11 +01:00
chriseth
58849cb1d5
Tests for printing assembly.
2017-02-14 15:41:25 +01:00
Yoichi Hirai
4189ff5b68
Merge pull request #1620 from ethereum/refactorEntry
...
Refactor NameAndTypeResolver and SyntaxChecker to allow other entry points.
2017-02-14 15:35:22 +01:00
chriseth
e67faa9839
Extract scopes into compiler stack.
2017-02-14 13:23:44 +01:00
chriseth
fc8e50f688
Refactor NameAndTypeResolver and SyntaxChecker to allow other entry points.
2017-02-14 13:23:44 +01:00
Alex Beregszaszi
0fe788aad6
Use std::chrono and not boost::posix_Time
2017-02-13 15:01:15 +00:00
Alex Beregszaszi
e9dd9d2c72
Simplify mining loop
2017-02-13 14:11:03 +00:00
Alex Beregszaszi
1d4ef87bb1
Use maxMiningTime in mining as opposed to poll counter
2017-02-13 14:11:03 +00:00
chriseth
0d8a9c3289
Merge pull request #1661 from ethereum/asm-revert
...
Implement REVERT (EIP140)
2017-02-13 14:56:22 +01:00
chriseth
e2349f9d5d
Merge pull request #1676 from ethereum/test-modifytimestamp
...
Add blockTimestamp and do not rely on mining time (soltest)
2017-02-13 14:54:06 +01:00
Alex Beregszaszi
30cfad3548
Check for state changes in revert() tests
2017-02-10 22:44:29 +00:00
Alex Beregszaszi
f26fe5bc1c
Add tests for revert()
2017-02-10 22:44:29 +00:00
Alex Beregszaszi
8429c03f2a
Add tests for assert()
2017-02-10 13:29:17 +00:00
Alex Beregszaszi
a82acba49a
Compare start/end timestamp
2017-02-10 13:26:11 +00:00
Alex Beregszaszi
702ee20a01
Create getBlockByNumber RPC method
2017-02-10 13:24:56 +00:00
Alex Beregszaszi
4cf44f1b41
Do not use modifyTimestamp where not needed
2017-02-10 13:24:56 +00:00
Alex Beregszaszi
3128ec2ca5
Add blockNumber and blockTimestamp to ExecutionFramework
2017-02-10 13:24:56 +00:00
Alex Beregszaszi
95f8c5bcdb
Ensure that the whole message was written on Windows IPC
2017-02-09 15:40:56 +00:00
Alex Beregszaszi
f2cafd4974
Simplify the Windows IPC code
2017-02-09 15:40:56 +00:00
Alex Beregszaszi
f9a818eaf8
Detect closed sockets in IPC
2017-02-09 15:40:56 +00:00
Alex Beregszaszi
5396c7692b
Do not expect a new line, rather buffer up the response in IPC
2017-02-09 15:40:56 +00:00
Alex Beregszaszi
b508aac64a
Use only send/recv in IPC
2017-02-09 12:23:34 +00:00
Alex Beregszaszi
92fb07c783
Do not log dots in soltest on windows
2017-02-08 21:51:10 +00:00
Alex Beregszaszi
af6ab7fa91
Use BOOST_REQUIRE() and stop at the first failure
2017-02-08 21:24:29 +00:00
Alex Beregszaszi
f9357dbb22
Check the return value of RPC calls
2017-02-08 21:24:29 +00:00
Alex Beregszaszi
3be6d10525
Avoid crash if fdopen failed in IPC
2017-02-08 21:24:29 +00:00
Alex Beregszaszi
43bae9dd0b
Ensure that a valid RPC response is received through IPC
2017-02-08 21:24:29 +00:00
chriseth
18a5c5ae1e
Merge branch 'develop' into negative-length-arrays
2017-02-02 11:57:34 +01:00
Alex Beregszaszi
902f69640b
Replace cpp-ethereum with solidity in the license headers
2017-02-02 10:06:28 +00:00
Alex Beregszaszi
697db80b48
Disallow arrays with negative length
2017-02-02 00:24:45 +00:00
Alex Beregszaszi
ee147e14d3
Cover both failure cases
2017-02-01 21:35:32 +00:00
Alex Beregszaszi
0b61f13c7f
Add more tests for function type conversion
2017-02-01 12:23:47 +00:00
Alex Beregszaszi
ef7add8c2b
Add tests for explicity fuction type to address casting
2017-02-01 12:23:47 +00:00
Alex Beregszaszi
eb530aa217
Add tests for invalid instruction
2017-01-27 21:24:58 +00:00
chriseth
b2c35fb41a
Merge pull request #1598 from wuestholz/develop
...
Change translation of implicit throws
2017-01-27 14:10:22 +01:00
chriseth
636e480156
Merge pull request #1451 from LefterisJP/fix_build
...
Accept any kind of whitespace after natspec tags
2017-01-27 14:09:39 +01:00
Lefteris Karapetsas
f01c8c07e5
Tests for natspect parsing failure cases
2017-01-27 12:13:14 +01:00
Lefteris Karapetsas
cc7834f2a9
Doc tags followed by newline are now parsed properly
2017-01-27 00:00:05 +01:00
chriseth
a9c6ff4ac8
Refactor json return type generation.
2017-01-26 18:21:19 +01:00
Valentin Wüstholz
5b7cc018f0
Address feedback from code review.
2017-01-26 16:39:07 +01:00
Valentin Wüstholz
9bcbd93ac5
Change translation of implicit throws (issue #1589 ).
...
This adds a new invalid instruction that is used for encoding
implicit throws that are emitted by the compiler. This makes it
possible to distinguish such runtime errors from user-provided,
explicit throws.
2017-01-26 16:39:07 +01:00
Alex Beregszaszi
102fd7ee5d
Merge pull request #1604 from ethereum/checksums
...
Warn about invalid checksums of addresses.
2017-01-26 14:42:34 +00:00
chriseth
873f2dddd6
Update error message.
2017-01-26 13:52:02 +01:00
chriseth
525758a130
Disallow assignment to non-identifiers.
2017-01-26 13:40:40 +01:00
chriseth
946a63c26f
Add test for assignment.
2017-01-25 17:27:01 +01:00
chriseth
27ba665694
Moved test.
2017-01-25 17:24:43 +01:00
Alex Beregszaszi
7ff44bec94
Add test for shadowing inline assembly instruction
2017-01-25 11:28:09 +00:00
Lefteris Karapetsas
9ca0fde853
Fix and better output for tests
2017-01-25 11:01:52 +01:00
Lefteris Karapetsas
5738e865d5
Accept any kind of whitespace after natspec tags
2017-01-25 11:01:52 +01:00
chriseth
87f744ae5e
Add some more tests for the checksum routine.
2017-01-25 10:45:21 +01:00
chriseth
605455f96b
Tests for library checksums.
2017-01-24 23:37:48 +01:00
chriseth
1316bb7565
Warn about invalid checksums of addresses.
2017-01-24 23:37:48 +01:00
chriseth
8e5f1c0d50
Test double inclusion of bytecode.
2017-01-24 17:41:31 +01:00
chriseth
dea59bfbdc
Test for initializing recursive structs.
2017-01-24 12:06:40 +01:00
chriseth
b52a60402d
Merge pull request #1245 from ethereum/1215
...
Allow multiple events of the same name
2017-01-24 11:52:21 +01:00
Yoichi Hirai
3d8b56c2a4
test: add tests about functions and events of the same name
2017-01-23 15:25:13 +01:00
Yoichi Hirai
8dc306d62b
test: add a test case about inheriting multiple events of the same name
2017-01-23 15:25:13 +01:00
Yoichi Hirai
567139486f
test: somehow log counting system has changed
2017-01-23 15:25:13 +01:00
Yoichi Hirai
4c09e81c3e
test: check the results of function calls in the test for multiple events of the same name
2017-01-23 15:25:13 +01:00
Yoichi Hirai
133d1c05e1
test: fixing inconsistent usage of end-to-end test framework
2017-01-23 15:25:13 +01:00
Yoichi Hirai
0e85e35a7f
test: Add an end-to-end test about multiple events of the same name
...
See #1215
2017-01-23 15:25:13 +01:00
Yoichi Hirai
5a56496db9
test: Add a test for #1215
...
using the original example from @pipermerriam
2017-01-23 15:25:13 +01:00
chriseth
7159944f0f
Reset AST node IDs between compilation runs.
2017-01-20 12:00:16 +01:00
chriseth
da178d967f
Properly escape user strings and lists.
2017-01-19 13:23:58 +01:00
chriseth
3fed790a56
Type identifiers.
2017-01-19 13:23:57 +01:00
chriseth
d3a391c136
Provide fallback for linking.
2017-01-18 17:41:36 +01:00
Rhett Aultman
88a2ac25e5
Revert "Fix contract lookup in tests"
...
This reverts commit f8914c6b28
.
2017-01-16 18:07:48 -05:00
Rhett Aultman
fda39afdba
Modify library collision test
...
Since libaraies no longer collide on name but on fully-qualified name,
you can only induce collision by colliding them as idenfitiers.
2017-01-16 12:32:58 -05:00
Rhett Aultman
a7f8a1986a
Revert "Move clashing libraries to common source in test"
...
This reverts commit c4a9ca5cfe7a8b4ba9d2d84392c57d5eefacd1f7.
2017-01-16 12:32:58 -05:00
Rhett Aultman
1f30982ab5
Use fully-qualified names for linking, too
...
Using libraries leaves behind a library link reference in the binary
which the linker must later resolve. These link references were still
being generated by name and not by fully-qualified name. This would
lead to a link-time collision between two libraries having the same
name but in different source units.
This change changes linker symbols over to fully-qualified names,
which resolves that issue. This does potentially introduce a new
problem, which is that linker symbols appear to be limited to 36
characters and are truncated. Storing paths extends the average
symbol size, and it would be great if truncation was from the tail
rather than the head.
2017-01-16 12:32:57 -05:00
Rhett Aultman
f8914c6b28
Fix contract lookup in tests
...
The fully-qualified name of a contract with no source unit is :<Name>
instead of just <Name>, so the test system needed to be adjusted
accordingly.
2017-01-16 12:32:57 -05:00
Rhett Aultman
220ccfb492
Move clashing libraries to common source in test
...
Since contracts and libraries only collide if they share a common
source file now, this test only works if both libraries are in the
same source.
2017-01-16 12:32:57 -05:00