Commit Graph

761 Commits

Author SHA1 Message Date
Rhett Aultman
621c3fa22f Analyze InlineAssembly for variable use
The unused variable checker in StaticAnalyzer did not conssider
InlineAssembly objects.  This commit introduces that missing feature.
2017-05-21 15:23:05 -07:00
chriseth
41ee2cefbb Merge pull request #2282 from ethereum/fuzzer
Display the source on which the 'fuzzer' failed
2017-05-19 18:32:50 +02:00
chriseth
6d1252f807 Put filename in quotes. 2017-05-19 17:58:07 +02:00
chriseth
56424bb202 Merge pull request #2262 from ethereum/interface-cleanup
Cleanup the external interfaces (ABI and Natspec)
2017-05-19 17:55:33 +02:00
chriseth
982f661339 Merge pull request #2223 from ethereum/julia-bool
Add support for bool literals in Julia
2017-05-19 17:48:36 +02:00
Alex Beregszaszi
cd5d93da2a Rename CompilerStack.metadata to CompilerStack.natspec 2017-05-19 16:11:04 +01:00
Alex Beregszaszi
4bf3cbb09a Use CompilerStack.contractABI directly 2017-05-19 15:57:36 +01:00
chriseth
21ba8eea69 Disable error checking by bash for fuzzer 2017-05-19 15:30:35 +01:00
Alex Beregszaszi
56412b11b3 Display the source on which the 'fuzzer' failed 2017-05-19 15:30:35 +01:00
Alex Beregszaszi
2ade4fcdd8 Add tests for bool literal 2017-05-19 09:44:16 +01:00
seusher
d546c2873a Issue 2279: Log JSON RPC requests and responses when --log_level=message is provided to soltest 2017-05-17 12:57:55 -07:00
chriseth
d9b5ff0b43 Merge pull request #2222 from ethereum/julia-types
Add support for types in Julia
2017-05-16 16:59:15 +02:00
Yoichi Hirai
9dac41d845
Remove an unused function successAssemble
Otherwise, I see a build failure:
    test/libjulia/Parser.cpp:92:6: error: ‘bool dev::solidity::test::{anonymous}::successAssemble(const string&, bool)’ defined but not used [-Werror=unused-function]
     bool successAssemble(string const& _source, bool _allowWarnings = true)
          ^~~~~~~~~~~~~~~
    cc1plus: all warnings being treated as errors
2017-05-09 11:51:16 +02:00
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
Alex Beregszaszi
6706932d7c Add tests for types in Julia 2017-05-05 22:31:22 +01:00
Alex Beregszaszi
f1dbc77272 Remove analyzer from Julia tests 2017-05-05 14:21:25 +01:00
Alex Beregszaszi
62df401328 Add Julia parser test 2017-05-05 14:21:25 +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
bd6e891704 Fix return value in the fuzzer. 2017-05-03 12:27:01 +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
Alex Beregszaszi
28902f9f42 Add --standard-json option to solfuzzer 2017-04-27 16:47:42 +01:00
chriseth
3a93aec768 Make the fuzzer quiet 2017-04-27 16:47:39 +01:00
chriseth
99dd28d63e Add constant optimizer testing to the fuzz tester. 2017-04-27 16:37:02 +01: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
ea6d925a5d Option to disable/remove all tests that require IPC. 2017-04-26 12:36:15 +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