Alex Beregszaszi
41b5361b3f
Run in optimizer mode when requested
2017-05-06 11:28:46 +01:00
Alex Beregszaszi
31bd4acf66
Split out common metadata validation code
2017-05-06 11:28:01 +01:00
Alex Beregszaszi
c4315521a3
Add basic test for jsonCompiler
2017-05-06 11:28:01 +01:00
chriseth
0582fcb93b
Merge pull request #2194 from ethereum/removeerrorlabel
...
Remove error label / invalid jump label.
2017-05-05 14:25:43 +02:00
chriseth
00933b99cc
Merge pull request #2206 from ethereum/fixoptimizer
...
Constant optimizer fix
2017-05-03 11:54:11 +02:00
chriseth
f3bb7350f1
Fix tests.
2017-05-03 11:30:40 +02:00
chriseth
230f51efb7
Cleanup, style and additional test.
2017-05-03 11:26:21 +02:00
chriseth
e3ed3623c7
More strict tests.
2017-05-03 11:26:21 +02:00
Rhett Aultman
a6faa5acf3
Treat returns with expressions as return param use
...
There are many cases of code where the return parameters exist mostly
as a form of documentation. This change ensures that they do not have
to be used in the function body so long as there is a return supplying
values
2017-05-03 11:26:21 +02:00
Rhett Aultman
a40c8cfb68
Warn on unused local variables
...
Analyze functions for all local variables, parameters, and named
return variables which are never used in the function, and issue
a warning.
2017-05-03 11:26:21 +02:00
Alex Beregszaszi
c09f071ff6
Merge pull request #2211 from ethereum/jsonio-fixes
...
Follow the JSON I/O spec closely
2017-05-02 16:47:14 +01:00
Alex Beregszaszi
ed3ab3506a
Follow the JSON I/O spec closely
2017-05-02 16:52:38 +02:00
chriseth
96870686a9
Style and stricter tests.
2017-05-02 15:48:58 +02:00
chriseth
e2f00c96d5
Stricter tests for constant optimization.
2017-05-02 12:20:00 +02:00
Rhett Aultman
e544698ad3
Deprecate use of unary '+'
...
The unary '+' serves no meaningful purpose in Solidity and it makes it
possible to produce typos with dagerous implications (e.g. 'a =+5 '),
so we are deprecating it. The SyntaxChecker currently issues warnings
on the unary '+' but will still compile it for now.
2017-04-28 17:43:19 -07:00
chriseth
f33614e1f7
Merge pull request #2171 from ethereum/splitParseAndAnalyze
...
refactoring parse() into two separate functions
2017-04-28 17:19:31 +02:00
djuju
45f8c5aa88
enumchecks not working
2017-04-28 15:24:59 +02:00
chriseth
28f10f4783
Remove error label / invalid jump label.
2017-04-28 13:14:52 +02:00
djuju
99a7aefb75
refactoring parse() into two separate functions
2017-04-27 12:38:24 +02:00
Alex Beregszaszi
35f1cf92db
Remove parentheses from around function return parameters
2017-04-27 10:08:02 +01:00
chriseth
2c1fb46bc3
Merge pull request #1711 from ethereum/asmfunctions
...
Assembly: Analysis stage for functions.
2017-04-26 17:47:48 +02:00
chriseth
1d712c7d64
Fix storage access tests.
2017-04-25 16:49:04 +02:00
Alex Beregszaszi
fa467c365c
Fix test build
2017-04-25 16:49:04 +02:00
chriseth
478f2997ea
Storage access from inline assembly.
2017-04-25 16:49:04 +02:00
chriseth
4afd54b235
Convert storge access tests to new explicit slot / offset access.
2017-04-25 16:49:04 +02:00
chriseth
34717838da
Review comments.
2017-04-25 16:49:03 +02:00
chriseth
3f1f0316c6
Use raw string for tests.
2017-04-25 16:49:03 +02:00
chriseth
f13c8af3f9
Make tests comply with stack height checks.
2017-04-25 16:49:03 +02:00
chriseth
c6fa78c73e
Use actual type checking phase of assembler.
2017-04-25 16:49:03 +02:00
chriseth
5d6747eb32
Refactor assembly analysis into scope filling and checking.
2017-04-25 16:49:03 +02:00
Yoichi Hirai
3c4c4abc2f
Remove a test about SELFDESTRUCT because the test harness obtains refund while the gas meter should not assume the refund.
2017-04-25 16:47:44 +02:00
Yoichi Hirai
cee54deb3b
test: fix invalid signatures
2017-04-25 16:47:44 +02:00
Yoichi Hirai
7da9ba68e9
test: add a test case about the gas cost of EXTCODESIZE
2017-04-25 16:14:58 +02:00
Yoichi Hirai
259c551c61
test: add a failing test case about the gas cost of SUICIDE opcode
2017-04-25 16:14:58 +02:00
Yoichi Hirai
00b15d53b9
Add a failing test about the gas cost of BALANCE
2017-04-25 16:14:58 +02:00
Yoichi Hirai
8387d0df83
test: add a test about gas costs of EXP
2017-04-25 16:14:58 +02:00
chriseth
9577f87dfc
More pure tests.
2017-04-24 18:08:21 +02:00
chriseth
aad64d818a
Test for side-effect free condition.
2017-04-21 20:09:37 +02:00
chriseth
937695bfdc
Change error message.
2017-04-21 15:04:03 +02:00
chriseth
9bc9fe6af7
Warn about side-effect free statements.
2017-04-21 11:36:38 +02:00
Alex Beregszaszi
74373ecc7a
Add test for legacyAST
2017-04-20 19:38:00 +01:00
Alex Beregszaszi
c29da75f96
Add test for bytecode
2017-04-20 19:38:00 +01:00
Alex Beregszaszi
a24ac2f285
Add compilation test and verify output
2017-04-20 19:38:00 +01:00
Alex Beregszaszi
137ef78e9a
Trigger cases by the JSON (and not string) interface
2017-04-20 19:38:00 +01:00
Alex Beregszaszi
10ec334f74
Add basic tests for StandardCompiler
2017-04-20 19:38:00 +01:00
chriseth
766fa2fe85
Check that contract inheriting from base with unimplemented constructor is abstract.
2017-03-21 18:11:43 +01:00
Alex Beregszaszi
2067a00f22
Disallow private or internal functions in interfaces
2017-03-17 17:07:18 +00:00
Alex Beregszaszi
5a71e4f1a7
Add more complex tests for interfaces
2017-03-17 17:06:53 +00:00
Alex Beregszaszi
d5102c1db7
Disallow constructor in interfaces
2017-03-17 17:06:52 +00:00
Alex Beregszaszi
2c4bce2d62
Disallow enums in interfaces
2017-03-17 17:06:52 +00:00