Commit Graph
223 Commits
Author SHA1 Message Date
Alex Beregszaszi a46b3479bb Remove parsing of why3 doc strings 2017-06-30 22:34:03 +01:00
chriseth 044058276e Warn about callcode. 2017-06-30 16:37:32 +02:00
Alex Beregszaszi 06fe61f89b Rename to isHexNumber() 2017-06-28 17:01:55 +01:00
Alex Beregszaszi 8b0c866f02 Add hasHexPrefix() to AST::Literal 2017-06-28 16:57:32 +01:00
chriseth c3e5d6b7ef Give min and max values in warning message. 2017-06-28 15:02:25 +02:00
chriseth 9f19bc8cbc Warn if using var x = 0 2017-06-28 11:41:03 +02:00
chriseth 708d17d13f Merge pull request #2464 from federicobond/deprecate-function-type-names
Warn deprecated usage of parameter names in function types
2017-06-27 16:32:48 +02:00
Federico Bond 70fd5c1770 Warn deprecated usage of parameter names in function types 2017-06-26 15:39:01 -03:00
chriseth d0b6de0b34 Warn about copies in storage that might overwrite unexpectedly. 2017-06-26 16:31:36 +02:00
Alex Beregszaszi a0b0df2d98 Merge pull request #2460 from ethereum/disallowMultiModifier
Disallow invoking the same modifier multiple times.
2017-06-26 11:51:12 +01:00
chriseth f879489291 Merge pull request #2449 from federicobond/warn-bytesxx-decimal
Warn if decimal literals are used in a bytesXX context
2017-06-26 09:13:41 +02:00
Federico Bond 7a3ea61ffd Warn if decimal literals are used in a bytesXX context
Fixes #2349
2017-06-23 23:21:19 -03:00
chriseth 5a75581f66 Disallow invoking the same modifier multiple times. 2017-06-23 20:12:22 +02:00
Federico Bond 0fb1621a98 Fix address literals not being treated as compile-time constants
The early return implemented for address literals in TypeChecker was
preventing the isPure annotation from getting applied. Closes #2441
2017-06-23 11:19:57 +02:00
Federico Bond 0f8ad1d68f Fix segmentation fault with constant function parameters 2017-06-21 22:46:27 -03:00
chriseth 29e7ad3d7b Silence compiler warning. 2017-06-14 17:39:36 +02:00
chriseth 07cc84fade Fix a crash about a non-callable expression. 2017-06-14 14:26:20 +02:00
Yoichi Hirai 8775e77305 Add a warning about a varialbe of the name of an instruction 2017-06-13 16:57:08 +02:00
chriseth ba5ee71b7f Generate only single error in inline assembly. 2017-06-08 15:52:45 +02:00
chriseth 97cc968a13 Initial EVM1.5 assembly implementation. 2017-06-08 15:52:44 +02:00
Rhett Aultman 89b60ffbd4 Refactor error reporting
This commit introduces ErrorReporter, a utility class which consolidates
all of the error logging functionality into a common set of functions.
It also replaces all direct interactions with an ErrorList with calls to
an ErrorReporter.

This commit resolves issue #2209
2017-05-30 07:28:31 -07:00
Alex Beregszaszi 8fe79fe706 Introduce Julia mode in AsmAnalyzer 2017-05-26 20:39:30 +01:00
chriseth 261731f7ee Adapt EVM codegen to new namespace. 2017-05-26 15:08:27 +02:00
Alex Beregszaszi e9b106cd0e Merge pull request #2292 from roadriverrail/inline_asm_unused_warning
Drop the inline asm includes from StaticAnalyzer
2017-05-23 23:11:03 +01:00
Rhett Aultman f735207732 Drop the inline asm includes from StaticAnalyzer 2017-05-23 06:38:17 -07:00
chriseth 74d2e7311a Merge pull request #2265 from roadriverrail/inline_asm_unused_warning
Analyze InlineAssembly for variable use
2017-05-22 16:34:29 +02:00
djudjuu e82df073d1 minor fixes and changelog update 2017-05-22 12:25:50 +02:00
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
djudjuu 1d22233a43 refactoring functionCallAnnotation 2017-05-19 15:48:07 +02:00
Erik Quenon Steggall 0489c99870 Added change to make compile happy on MacOS 10.9.5 2017-05-05 16:49:09 -07:00
chriseth 230f51efb7 Cleanup, style and additional test. 2017-05-03 11:26:21 +02:00
chriseth e0266b79f3 Refactor: Combine bool and function pointer. 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
chriseth acab525fef Merge pull request #2199 from roadriverrail/no_unary_plus
Deprecate use of unary '+'
2017-05-02 16:43:47 +02:00
chriseth 96870686a9 Style and stricter tests. 2017-05-02 15:48:58 +02:00
chriseth 2891b98882 Merge pull request #2110 from federicobond/fix-posttypechecker
Fix PostTypeChecker retaining state across contracts
2017-05-02 12:12:46 +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 f3ec2ba39e Refactor to combined scope and stack height info. 2017-04-26 17:12:04 +02:00
chriseth 1d712c7d64 Fix storage access tests. 2017-04-25 16:49:04 +02:00
chriseth 978884d9ca Build fix. 2017-04-25 16:49:04 +02:00
chriseth 478f2997ea Storage access from inline assembly. 2017-04-25 16:49:04 +02:00
chriseth dfb7d5ebd9 Move analysis out of code generator. 2017-04-25 16:49:04 +02:00
chriseth dfaab73efe Only allow access to local variables and only if they have a stack size of one. 2017-04-25 16:49:04 +02:00
chriseth 83bf34c571 Review comments and cleanup. 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 e0849f2f3b Split external identifier access into resolving and code generation. 2017-04-25 16:49:03 +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
Federico Bond e6f13353f2 Fix PostTypeChecker retaining state across contracts 2017-04-08 18:45:15 -03:00