Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Disallow uninitialized storage pointers as experimental 0.5.0 feature. | chriseth | 2018-02-15 | 1 | -1/+5 |
| | |||||
* | Merge pull request #3498 from ethereum/allowthisfselector | chriseth | 2018-02-14 | 2 | -0/+17 |
|\ | | | | | Allow `this.f.selector` to be pure. | ||||
| * | Allow `this.f.selector` to be pure. | chriseth | 2018-02-13 | 2 | -0/+17 |
| | | |||||
* | | Fix: remove reference. | chriseth | 2018-02-13 | 1 | -2/+4 |
| | | |||||
* | | Minor changes. | chriseth | 2018-02-13 | 1 | -2/+1 |
| | | |||||
* | | Restructure code for alternative identifier suggestions | Balajiganapathi S | 2018-02-13 | 3 | -19/+6 |
| | | |||||
* | | Move string distance function to utils and format error message | Balajiganapathi S | 2018-02-13 | 3 | -48/+6 |
| | | |||||
* | | Suggest alternatives when identifier not found. | Balajiganapathi S | 2018-02-13 | 5 | -2/+95 |
|/ | |||||
* | Deprecate the var keyword (and mark it an error as experimental 0.5.0 feature) | Jimmy Vogel | 2018-02-13 | 2 | -0/+16 |
| | |||||
* | Fix segfault with undeclared array types | Federico Bond | 2018-02-12 | 1 | -0/+5 |
| | |||||
* | Merge pull request #3360 from federicobond/nonfatal-reference-errors | Alex Beregszaszi | 2018-02-04 | 1 | -13/+20 |
|\ | | | | | Replace some fatal errors when resolving references with normal ones | ||||
| * | Replace some fatal errors when resolving references with normal ones | Federico Bond | 2018-02-03 | 1 | -13/+20 |
| | | |||||
* | | Issue warning for using public visibility for interface functions | Alex Beregszaszi | 2018-02-01 | 1 | -0/+2 |
|/ | |||||
* | Split inline assembly into loose and strict flavours. | chriseth | 2018-01-06 | 2 | -2/+2 |
| | |||||
* | Merge pull request #3297 from ethereum/separate_expression_and_statement | Alex Beregszaszi | 2018-01-04 | 1 | -0/+4 |
|\ | | | | | Separate expression and statement | ||||
| * | Separate expression and statement. | chriseth | 2017-12-13 | 1 | -0/+4 |
| | | |||||
* | | Improve error message for wrong struct initialization (#3359) | Federico Bond | 2018-01-04 | 1 | -1/+5 |
| | | |||||
* | | Merge pull request #3232 from ethereum/simplifyConstant | chriseth | 2017-12-14 | 3 | -47/+65 |
|\ \ | |/ |/| | Simplify ConstantEvaluator. | ||||
| * | Re-use `commonType` | chriseth | 2017-12-12 | 1 | -1/+1 |
| | | |||||
| * | Simplify ConstantEvaluator. | chriseth | 2017-12-12 | 3 | -41/+61 |
| | | |||||
| * | Reduce the types of errors outputted by ConstantEvaluator | Alex Beregszaszi | 2017-12-12 | 1 | -8/+6 |
| | | |||||
| * | Improve error message for constant evaluator | Alex Beregszaszi | 2017-12-12 | 1 | -1/+1 |
| | | |||||
* | | Limit number of secondary source locations. | chriseth | 2017-12-12 | 1 | -14/+5 |
|/ | |||||
* | Fix struct encoding warning for libraries. | chriseth | 2017-12-11 | 1 | -0/+1 |
| | |||||
* | Suggest the experimental ABI encoder if using structs as function parameters | Alex Beregszaszi | 2017-12-11 | 1 | -0/+10 |
| | |||||
* | Split Instruction and FunctionalInstruction in Julia | Alex Beregszaszi | 2017-12-05 | 1 | -5/+9 |
| | |||||
* | Unary operators and division. | chriseth | 2017-11-30 | 1 | -1/+1 |
| | |||||
* | If statement for Iulia / inline assembly. | chriseth | 2017-11-22 | 1 | -0/+5 |
| | |||||
* | Improve cyclic constant error message | Alex Beregszaszi | 2017-11-22 | 1 | -1/+1 |
| | |||||
* | Detect cyclic constant definitions | Balajiganapathi S | 2017-11-22 | 2 | -8/+15 |
| | |||||
* | Allow constant integer variables as array lengths. | Balajiganapathi S | 2017-11-22 | 2 | -0/+19 |
| | |||||
* | Do not try to display checksummed address for too-short/long address literals | Alex Beregszaszi | 2017-11-17 | 1 | -2/+2 |
| | |||||
* | Improves address literal checksum error message | wadeAlexC | 2017-11-17 | 1 | -3/+5 |
| | |||||
* | Update outdated comments | Kwang Yul Seo | 2017-11-15 | 4 | -4/+4 |
| | | | | _errors -> _errorReporter. | ||||
* | Fix a typo | Kwang Yul Seo | 2017-11-14 | 1 | -1/+1 |
| | | | | | A semicolon was mistakenly inserted where a string concatenation operator was meant. | ||||
* | More detailed errors for invalid array lengths (such as division by zero). | Alex Beregszaszi | 2017-10-20 | 1 | -3/+20 |
| | |||||
* | Turn usage of callcode into an error as experimental 0.5.0 feature | Alex Beregszaszi | 2017-10-19 | 1 | -4/+12 |
| | |||||
* | Only check tuples for valid rational numbers if they have more than one element. | chriseth | 2017-10-18 | 1 | -1/+1 |
| | |||||
* | Validate each tuple literal | Alex Beregszaszi | 2017-10-18 | 1 | -0/+6 |
| | |||||
* | Force interface functions as external (0.5.0) | Alex Beregszaszi | 2017-10-06 | 1 | -2/+10 |
| | |||||
* | Use the proper error reporting interface in ConstantEvaluator | Alex Beregszaszi | 2017-10-06 | 3 | -7/+13 |
| | |||||
* | Require location keyword for local variables (0.5.0) | Alex Beregszaszi | 2017-10-06 | 1 | -5/+13 |
| | |||||
* | Do not consider shadowing in variable names inside event declarations | Federico Bond | 2017-10-05 | 1 | -2/+4 |
| | |||||
* | Better error message when using fractional number as array size expressions | wadeAlexC | 2017-10-04 | 1 | -2/+3 |
| | |||||
* | Disallow non-pure constant state variables in 0.5.0 | Federico Bond | 2017-10-03 | 1 | -5/+14 |
| | |||||
* | Extract duplicate function or event finding logic | Federico Bond | 2017-09-30 | 2 | -37/+14 |
| | |||||
* | Emit error when declaring event with same name and arguments twice | Federico Bond | 2017-09-30 | 2 | -0/+45 |
| | |||||
* | Unary + now a synax error (experimental 0.5.0) | Rhett Aultman | 2017-09-30 | 1 | -1/+8 |
| | | | | | | | The unary + was deprecated with a warning, but will be elevated to an error in 0.5.0. This adds the syntax error for the 0.5.0 pragma, and for a true 0.5.0 release we should consider removing the operator from the parser. | ||||
* | Validate array length in type checker | Alex Beregszaszi | 2017-09-29 | 1 | -1/+1 |
| | |||||
* | Order GlobalContext entries | Alex Beregszaszi | 2017-09-27 | 1 | -13/+13 |
| | |||||
* | Format GlobalContext for readability | Alex Beregszaszi | 2017-09-27 | 1 | -42/+25 |
| | |||||
* | Merge pull request #2978 from ethereum/infer-location | chriseth | 2017-09-27 | 1 | -1/+1 |
|\ | | | | | Report correct location for inferred types in packed encoding | ||||
| * | Report correct location for inferred types in packed encoding | Alex Beregszaszi | 2017-09-27 | 1 | -1/+1 |
| | | |||||
* | | Ensure that address types are always declared as 160bit | Alex Beregszaszi | 2017-09-27 | 1 | -1/+1 |
|/ | |||||
* | Merge pull request #2902 from ethereum/warn-obsolete | chriseth | 2017-09-21 | 1 | -0/+8 |
|\ | | | | | Warn about obsolete sha3/suicide calls | ||||
| * | Warn about obsolete sha3/suicide calls | Alex Beregszaszi | 2017-09-19 | 1 | -0/+8 |
| | | |||||
* | | Ensure parameter names match between headers and implementation | Alex Beregszaszi | 2017-09-20 | 3 | -11/+11 |
|/ | |||||
* | Allow constant byte arrays. | chriseth | 2017-09-19 | 1 | -1/+1 |
| | |||||
* | Merge pull request #2910 from ethereum/fallback-restrict-external | chriseth | 2017-09-18 | 1 | -0/+5 |
|\ | | | | | Force fallback to be external (experimental 0.5.0 change) | ||||
| * | Force fallback to be external (experimental 0.5.0 change) | Alex Beregszaszi | 2017-09-18 | 1 | -0/+5 |
| | | |||||
* | | Check for recursive structs. | chriseth | 2017-09-16 | 1 | -3/+3 |
|/ | |||||
* | Merge pull request #2904 from ethereum/viewPure5 | Alex Beregszaszi | 2017-09-15 | 2 | -11/+24 |
|\ | | | | | Enforce view with error for experimental 0.5.0. | ||||
| * | Enforce view with error for experimental 0.5.0. | chriseth | 2017-09-14 | 2 | -11/+24 |
| | | |||||
* | | Warn if no visibility is specified on contract functions. | Alex Beregszaszi | 2017-09-14 | 2 | -1/+14 |
|/ | |||||
* | Merge pull request #2848 from ethereum/checkViewPure | chriseth | 2017-09-14 | 6 | -4/+398 |
|\ | | | | | Enforce view and pure. | ||||
| * | Minor changes from review. | chriseth | 2017-09-13 | 1 | -9/+3 |
| | | |||||
| * | Rename to invalidInPureFunctions | chriseth | 2017-09-13 | 1 | -1/+1 |
| | | |||||
| * | Allow constant variables in pure functions. | chriseth | 2017-09-06 | 1 | -1/+1 |
| | | |||||
| * | Rename and add anonymous namespace. | chriseth | 2017-09-06 | 1 | -1/+4 |
| | | |||||
| * | Fix tests | chriseth | 2017-09-06 | 1 | -5/+8 |
| | | |||||
| * | Tone down error message. | chriseth | 2017-09-06 | 1 | -2/+2 |
| | | |||||
| * | Modifier invocation can be base constructor call | chriseth | 2017-09-06 | 1 | -5/+7 |
| | | |||||
| * | Analyze assembly. | chriseth | 2017-09-06 | 2 | -11/+88 |
| | | |||||
| * | Do not report on overriding function and only warn for view. | chriseth | 2017-09-06 | 1 | -12/+19 |
| | | |||||
| * | Store super function. | chriseth | 2017-09-06 | 2 | -0/+4 |
| | | |||||
| * | Remove previous warning about pureness not being enforced. | chriseth | 2017-09-06 | 1 | -2/+0 |
| | | |||||
| * | View-pure checker. | chriseth | 2017-09-06 | 3 | -2/+308 |
| | | |||||
* | | Limit each duplicate declaration error to 32 references | Alex Beregszaszi | 2017-09-13 | 1 | -2/+20 |
| | | |||||
* | | Merge pull request #2852 from ssuman/develop | chriseth | 2017-09-12 | 1 | -1/+10 |
|\ \ | | | | | | | This commit will display warning when there is unused function parameter | ||||
| * | | Display helpful warning for unused function arguments/return parameters | Suman | 2017-09-12 | 1 | -1/+10 |
| | | | |||||
* | | | Do not report overload conflicts for every line excessively | Alex Beregszaszi | 2017-09-12 | 1 | -1/+5 |
|/ / | |||||
* | | Merge pull request #2888 from ethereum/same-declaration-error | Alex Beregszaszi | 2017-09-12 | 1 | -10/+12 |
|\ \ | | | | | | | Use secondary source location as a vector in same declaration errors | ||||
| * | | Use secondary source location as a vector in same declaration errors | Alex Beregszaszi | 2017-09-12 | 1 | -10/+12 |
| | | | |||||
* | | | Show each unimplemented function in secondary source location | Alex Beregszaszi | 2017-09-12 | 1 | -5/+7 |
|/ / | |||||
* / | Do not show the same error multiple times for events | Alex Beregszaszi | 2017-09-12 | 1 | -4/+4 |
|/ | |||||
* | Change array too large error message as it is valid for non-calldata too | Alex Beregszaszi | 2017-09-06 | 1 | -1/+1 |
| | |||||
* | Swap declaration/statemutability in FunctionType constructor | Alex Beregszaszi | 2017-08-29 | 1 | -1/+0 |
| | |||||
* | Mark all built in functions with appropriate statemutability | Alex Beregszaszi | 2017-08-29 | 2 | -11/+14 |
| | |||||
* | Warn on using literals in tight packing | Alex Beregszaszi | 2017-08-25 | 1 | -0/+22 |
| | |||||
* | Remove unused statements from the Natspec headers | Alex Beregszaszi | 2017-08-25 | 1 | -1/+1 |
| | |||||
* | Introduce pure specifier on functions | Alex Beregszaszi | 2017-08-24 | 1 | -0/+2 |
| | |||||
* | Check inheritance specifier arguments for interfaces. | chriseth | 2017-08-22 | 1 | -5/+5 |
| | |||||
* | Reject the creation of interface with the new statement | Alex Beregszaszi | 2017-08-22 | 1 | -0/+6 |
| | |||||
* | Fix crash related to ``using for`` without a library. | chriseth | 2017-08-21 | 1 | -1/+1 |
| | |||||
* | Library cannot have constructors | Alex Beregszaszi | 2017-08-21 | 1 | -0/+3 |
| | |||||
* | Use state mutability in override error messages | Alex Beregszaszi | 2017-08-17 | 1 | -11/+10 |
| | |||||
* | Use state mutability in fallback/constructor check | Alex Beregszaszi | 2017-08-17 | 1 | -4/+14 |
| | |||||
* | Warn about shift of literals. | chriseth | 2017-08-16 | 1 | -2/+3 |
| | |||||
* | Remove useless payable & constant typecheck | Alex Beregszaszi | 2017-08-14 | 1 | -2/+0 |
| | |||||
* | Merge pull request #2703 from ethereum/warnAboutLargeStorageArrays | chriseth | 2017-08-14 | 2 | -0/+45 |
|\ | | | | | Warn about large storage structures. | ||||
| * | Warn about large storage structures. | chriseth | 2017-08-12 | 2 | -0/+45 |
| | | |||||
* | | Avoid duplicate errors due to function overrides | Federico Bond | 2017-08-12 | 1 | -5/+5 |
| | | |||||
* | | Use a secondary location for function override errors | Federico Bond | 2017-08-12 | 2 | -24/+16 |
| | | |||||
* | | Refactor function override check to remove duplicate logic | Federico Bond | 2017-08-12 | 2 | -47/+50 |
| | | |||||
* | | Use fully qualified name of super in message | Federico Bond | 2017-08-12 | 1 | -4/+3 |
| | | |||||
* | | Improve override changes signature error message | Federico Bond | 2017-08-12 | 2 | -1/+34 |
|/ | |||||
* | Introduce ExperimentalFeatures header | Alex Beregszaszi | 2017-08-10 | 1 | -6/+4 |
| | |||||
* | Reject wildcard and multiple experimental pragmas | Alex Beregszaszi | 2017-08-10 | 1 | -13/+16 |
| | |||||
* | Reject unsupported experimental feature names | Alex Beregszaszi | 2017-08-10 | 1 | -0/+5 |
| | |||||
* | Warn if using experimental pragma | Alex Beregszaszi | 2017-08-10 | 1 | -0/+5 |
| | |||||
* | Support experimental feature pragma | Alex Beregszaszi | 2017-08-10 | 2 | -4/+30 |
| | |||||
* | Disable unimplemented library functions instead | Alex Beregszaszi | 2017-08-08 | 1 | -15/+2 |
| | |||||
* | Raise error when using unimplemented internal library functions. | Alex Beregszaszi | 2017-08-08 | 1 | -0/+15 |
| | |||||
* | Constructors must be implemented if declared. | Alex Beregszaszi | 2017-08-05 | 1 | -6/+2 |
| | |||||
* | Merge pull request #2687 from ethereum/show-unimplemented-funcs | Alex Beregszaszi | 2017-08-05 | 1 | -12/+16 |
|\ | | | | | Show unimplemented function if trying to instantiate an abstract class | ||||
| * | Remove duplicated check for unimplemented functions | Alex Beregszaszi | 2017-08-04 | 1 | -2/+0 |
| | | |||||
| * | Show unimplemented function if trying to instantiate an abstract class | Alex Beregszaszi | 2017-08-04 | 1 | -1/+8 |
| | | |||||
| * | Replace isFullyImplemented with unimplementedFunctions in ASTAnnotations | Alex Beregszaszi | 2017-08-04 | 1 | -10/+9 |
| | | |||||
* | | Search for shadowee starting from parent scope. | chriseth | 2017-08-05 | 2 | -24/+4 |
| | | |||||
* | | Do not mark overloaded functions as shadowing | Alex Beregszaszi | 2017-08-05 | 2 | -1/+20 |
|/ | |||||
* | Rename Bare to Barecall | Alex Beregszaszi | 2017-08-01 | 1 | -1/+1 |
| | |||||
* | Add isFallback() helper | Alex Beregszaszi | 2017-07-28 | 1 | -2/+2 |
| | |||||
* | Merge pull request #2635 from ethereum/fixCrashOnAssignmentToNonLValue | Alex Beregszaszi | 2017-07-27 | 1 | -1/+3 |
|\ | | | | | Fix crash on assignment to non-LValue | ||||
| * | Fix crash on assignment to non-lvalue. | chriseth | 2017-07-26 | 1 | -1/+3 |
| | | |||||
* | | Re-allow multiple modifiers per function. | chriseth | 2017-07-27 | 1 | -2/+0 |
| | | |||||
* | | Warn about shadowing variables. | Alex Beregszaszi | 2017-07-25 | 2 | -40/+98 |
|/ | |||||
* | Migrate over to ErrorReporter | Rhett Aultman | 2017-07-19 | 1 | -1/+1 |
| | |||||
* | Warn if this is used in constructor | Alex Beregszaszi | 2017-07-19 | 2 | -0/+15 |
| | |||||
* | Include types in explicit conversion error message | Alex Beregszaszi | 2017-07-14 | 1 | -1/+8 |
| | |||||
* | Disable large arrays for memory location too | Alex Beregszaszi | 2017-07-14 | 1 | -1/+5 |
| | |||||
* | Issue error properly for oversized arrays for calldata | Alex Beregszaszi | 2017-07-14 | 1 | -0/+6 |
| | |||||
* | Add type error when attempting value transfer to a non-payable contract | Federico Bond | 2017-07-13 | 1 | -0/+19 |
| | |||||
* | Issue proper warning trying to access calldata variables in inline assembly | Alex Beregszaszi | 2017-07-12 | 1 | -1/+4 |
| | |||||
* | Fix invalid "explicit storage keyword" warning for reference members of structs. | chriseth | 2017-07-11 | 1 | -1/+1 |
| | |||||
* | Deprecate throw. | chriseth | 2017-07-06 | 2 | -0/+13 |
| | |||||
* | Warn if local storage reference variable does not use "storage" explicitly. | chriseth | 2017-07-06 | 2 | -5/+20 |
| | |||||
* | Remove parsing of why3 doc strings | Alex Beregszaszi | 2017-07-01 | 2 | -13/+1 |
| | |||||
* | Warn about callcode. | chriseth | 2017-06-30 | 1 | -0/+8 |
| | |||||
* | Rename to isHexNumber() | Alex Beregszaszi | 2017-06-29 | 1 | -1/+1 |
| | |||||
* | Add hasHexPrefix() to AST::Literal | Alex Beregszaszi | 2017-06-28 | 1 | -1/+1 |
| | |||||
* | Give min and max values in warning message. | chriseth | 2017-06-28 | 1 | -1/+9 |
| | |||||
* | Warn if using var x = 0 | chriseth | 2017-06-28 | 1 | -0/+24 |
| | |||||
* | Merge pull request #2464 from federicobond/deprecate-function-type-names | chriseth | 2017-06-27 | 2 | -0/+14 |
|\ | | | | | Warn deprecated usage of parameter names in function types | ||||
| * | Warn deprecated usage of parameter names in function types | Federico Bond | 2017-06-27 | 2 | -0/+14 |
| | | |||||
* | | Warn about copies in storage that might overwrite unexpectedly. | chriseth | 2017-06-26 | 2 | -0/+34 |
| | | |||||
* | | Merge pull request #2460 from ethereum/disallowMultiModifier | Alex Beregszaszi | 2017-06-26 | 1 | -0/+13 |
|\ \ | | | | | | | Disallow invoking the same modifier multiple times. | ||||
| * | | Disallow invoking the same modifier multiple times. | chriseth | 2017-06-24 | 1 | -0/+13 |
| | | | |||||
* | | | Merge pull request #2449 from federicobond/warn-bytesxx-decimal | chriseth | 2017-06-26 | 1 | -1/+18 |
|\ \ \ | |/ / |/| | | Warn if decimal literals are used in a bytesXX context | ||||
| * | | Warn if decimal literals are used in a bytesXX context | Federico Bond | 2017-06-24 | 1 | -1/+18 |
| | | | | | | | | | | | | Fixes #2349 | ||||
* | | | Fix address literals not being treated as compile-time constants | Federico Bond | 2017-06-23 | 1 | -5/+5 |
| |/ |/| | | | | | | | The early return implemented for address literals in TypeChecker was preventing the isPure annotation from getting applied. Closes #2441 | ||||
* | | Fix segmentation fault with constant function parameters | Federico Bond | 2017-06-22 | 1 | -1/+8 |
|/ | |||||
* | Silence compiler warning. | chriseth | 2017-06-14 | 1 | -1/+1 |
| | |||||
* | Fix a crash about a non-callable expression. | chriseth | 2017-06-14 | 1 | -4/+1 |
| | |||||
* | Add a warning about a varialbe of the name of an instruction | Yoichi Hirai | 2017-06-13 | 3 | -0/+27 |
| | |||||
* | Generate only single error in inline assembly. | chriseth | 2017-06-08 | 2 | -3/+12 |
| | |||||
* | Initial EVM1.5 assembly implementation. | chriseth | 2017-06-08 | 2 | -2/+9 |
| | |||||
* | Refactor error reporting | Rhett Aultman | 2017-05-30 | 14 | -429/+241 |
| | | | | | | | | | 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 | ||||
* | Introduce Julia mode in AsmAnalyzer | Alex Beregszaszi | 2017-05-27 | 2 | -1/+2 |
| | |||||
* | Adapt EVM codegen to new namespace. | chriseth | 2017-05-26 | 2 | -7/+7 |
| | |||||
* | Merge pull request #2292 from roadriverrail/inline_asm_unused_warning | Alex Beregszaszi | 2017-05-24 | 1 | -3/+0 |
|\ | | | | | Drop the inline asm includes from StaticAnalyzer | ||||
| * | Drop the inline asm includes from StaticAnalyzer | Rhett Aultman | 2017-05-23 | 1 | -3/+0 |
| | | |||||
* | | Merge pull request #2265 from roadriverrail/inline_asm_unused_warning | chriseth | 2017-05-22 | 2 | -2/+24 |
|\| | | | | | Analyze InlineAssembly for variable use | ||||
| * | Analyze InlineAssembly for variable use | Rhett Aultman | 2017-05-22 | 2 | -2/+24 |
| | | | | | | | | | | The unused variable checker in StaticAnalyzer did not conssider InlineAssembly objects. This commit introduces that missing feature. | ||||
* | | minor fixes and changelog update | djudjuu | 2017-05-22 | 1 | -0/+1 |
| | | |||||
* | | refactoring functionCallAnnotation | djudjuu | 2017-05-19 | 1 | -6/+9 |
|/ | |||||
* | Added change to make compile happy on MacOS 10.9.5 | Erik Quenon Steggall | 2017-05-06 | 1 | -1/+1 |
| | |||||
* | Cleanup, style and additional test. | chriseth | 2017-05-03 | 2 | -11/+7 |
| | |||||
* | Refactor: Combine bool and function pointer. | chriseth | 2017-05-03 | 2 | -10/+8 |
| | |||||
* | Treat returns with expressions as return param use | Rhett Aultman | 2017-05-03 | 2 | -1/+14 |
| | | | | | | | 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 | ||||
* | Warn on unused local variables | Rhett Aultman | 2017-05-03 | 2 | -0/+45 |
| | | | | | | Analyze functions for all local variables, parameters, and named return variables which are never used in the function, and issue a warning. | ||||
* | Merge pull request #2199 from roadriverrail/no_unary_plus | chriseth | 2017-05-02 | 2 | -0/+21 |
|\ | | | | | Deprecate use of unary '+' | ||||
| * | Style and stricter tests. | chriseth | 2017-05-02 | 1 | -3/+1 |
| | | |||||
| * | Deprecate use of unary '+' | Rhett Aultman | 2017-04-29 | 2 | -0/+23 |
| | | | | | | | | | | | | | | 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. | ||||
* | | Merge pull request #2110 from federicobond/fix-posttypechecker | chriseth | 2017-05-02 | 1 | -0/+3 |
|\ \ | |/ |/| | Fix PostTypeChecker retaining state across contracts | ||||
| * | Fix PostTypeChecker retaining state across contracts | Federico Bond | 2017-04-09 | 1 | -0/+3 |
| | | |||||
* | | Refactor to combined scope and stack height info. | chriseth | 2017-04-26 | 2 | -4/+13 |
| | | |||||
* | | Fix storage access tests. | chriseth | 2017-04-25 | 1 | -5/+5 |
| | | |||||
* | | Build fix. | chriseth | 2017-04-25 | 1 | -3/+3 |
| | | |||||
* | | Storage access from inline assembly. | chriseth | 2017-04-25 | 2 | -7/+38 |
| | | |||||
* | | Move analysis out of code generator. | chriseth | 2017-04-25 | 1 | -2/+2 |
| | | |||||
* | | Only allow access to local variables and only if they have a stack size of one. | chriseth | 2017-04-25 | 1 | -28/+38 |
| | | |||||
* | | Review comments and cleanup. | chriseth | 2017-04-25 | 1 | -0/+2 |
| | | |||||
* | | Use actual type checking phase of assembler. | chriseth | 2017-04-25 | 2 | -11/+10 |
| | | |||||
* | | Split external identifier access into resolving and code generation. | chriseth | 2017-04-25 | 2 | -32/+30 |
| | | |||||
* | | Change error message. | chriseth | 2017-04-21 | 1 | -1/+1 |
| | | |||||
* | | Warn about side-effect free statements. | chriseth | 2017-04-21 | 3 | -2/+11 |
|/ | |||||
* | Fix: Contract inheriting from base with unimplemented constructor is abstract. | chriseth | 2017-03-22 | 1 | -0/+10 |
| | |||||
* | Visit structs only once. | chriseth | 2017-03-21 | 1 | -3/+7 |
| | |||||
* | Simplify interface checks for FunctionDefinition | Alex Beregszaszi | 2017-03-18 | 1 | -8/+7 |
| | |||||
* | Disallow private or internal functions in interfaces | Alex Beregszaszi | 2017-03-18 | 1 | -0/+3 |
| | |||||
* | Disallow constructor in interfaces | Alex Beregszaszi | 2017-03-18 | 1 | -0/+3 |
| | |||||
* | Disallow enums in interfaces | Alex Beregszaszi | 2017-03-18 | 2 | -0/+8 |
| | |||||
* | Use declared instead of defined | Alex Beregszaszi | 2017-03-18 | 1 | -1/+1 |
| | |||||
* | Reject invalid definitions for interface contracts | Alex Beregszaszi | 2017-03-18 | 1 | -0/+13 |
| | |||||
* | Change references to FunctionType::Location | Alex Beregszaszi | 2017-03-16 | 2 | -25/+24 |
| | |||||
* | Mention 'transfer' in warning about unchecked 'send'. | chriseth | 2017-03-15 | 1 | -2/+3 |
| | |||||
* | Merge pull request #1729 from ethereum/constantvariables | Yoichi Hirai | 2017-03-15 | 1 | -18/+62 |
|\ | | | | | Only allow pure expressions for constant state variables. | ||||
| * | Turn non-constant constants error into warning. | chriseth | 2017-03-15 | 1 | -2/+3 |
| | | |||||
| * | Disallow constants that are neither value types nor strings. | chriseth | 2017-03-13 | 1 | -0/+8 |
| | | |||||
| * | Allow enum values for constants. | chriseth | 2017-03-13 | 1 | -1/+4 |
| | | |||||
| * | Type checking for pure expressions. | chriseth | 2017-03-13 | 1 | -18/+50 |
| | | |||||
* | | Require and Assert. | chriseth | 2017-03-14 | 1 | -3/+4 |
|/ | |||||
* | Merge pull request #1751 from ethereum/warnLiteralExpBase | Yoichi Hirai | 2017-03-11 | 1 | -0/+20 |
|\ | | | | | Warn if base of exponentiation operation is a literal. | ||||
| * | Warn about literal constant base in exponentiation. | chriseth | 2017-03-07 | 1 | -0/+20 |
| | | |||||
* | | Resolve build-stopping error about 'minor' and 'major' being defined in ↵ | Ryan Casey | 2017-03-10 | 1 | -0/+3 |
| | | | | | | | | <sys/types.h> | ||||
* | | Merge pull request #1747 from ethereum/fixICEInternalConstructor | Yoichi Hirai | 2017-03-09 | 1 | -3/+1 |
|\ \ | | | | | | | Move privateness of constructor into AST itself. | ||||
| * | | Move public constructor property into AST itself. | chriseth | 2017-03-06 | 1 | -3/+1 |
| | | | |||||
* | | | Merge pull request #1748 from ethereum/singletonArray | chriseth | 2017-03-08 | 1 | -1/+1 |
|\ \ \ | | | | | | | | | Use mobile type for singleton array. | ||||
| * | | | Convert to mobile type for array type. | chriseth | 2017-03-06 | 1 | -1/+1 |
| | |/ | |/| | |||||
* | | | Disallow compound assignment for tuples. | chriseth | 2017-03-08 | 1 | -0/+5 |
| | | | |||||
* | | | Merge pull request #1699 from ethereum/asmlabels | Yoichi Hirai | 2017-03-08 | 1 | -4/+11 |
|\ \ \ | | | | | | | | | Assembly labels with stack information | ||||
| * | | | Move lambda. | chriseth | 2017-03-03 | 1 | -3/+9 |
| | | | | |||||
| * | | | Refactor CodeGen to recurse on blocks. | chriseth | 2017-03-03 | 1 | -3/+4 |
| | | | | |||||
* | | | | Merge pull request #1733 from ethereum/selfReferentialConstant | chriseth | 2017-03-07 | 3 | -0/+180 |
|\ \ \ \ | | | | | | | | | | | Detect cyclic dependencies between constants. | ||||
| * | | | | Check for circular references in constant variables. | chriseth | 2017-03-06 | 3 | -0/+180 |
| | |/ / | |/| | | |||||
* | | | | Merge pull request #1737 from ethereum/localmappings | chriseth | 2017-03-06 | 1 | -2/+5 |
|\ \ \ \ | |/ / / |/| | | | Disallow uninitialized mapping variables. | ||||
| * | | | Disallow uninitialized mapping variables. | chriseth | 2017-03-06 | 1 | -2/+5 |
| | |/ | |/| | |||||
* / | | Mention way to remove warning. | chriseth | 2017-03-06 | 1 | -1/+5 |
|/ / | |||||
* | | Merge pull request #1702 from ethereum/assertError | Yoichi Hirai | 2017-03-04 | 1 | -2/+3 |
|\ \ | |/ |/| | Change effect of assert to invalid opcode. | ||||
| * | Remove assert for now. | chriseth | 2017-02-24 | 1 | -2/+3 |
| | | |||||
* | | Disallow variable declaration with inferred empty tuple type. | chriseth | 2017-03-02 | 1 | -0/+5 |
| | | |||||
* | | Deposit one stack item for non-value types in inline assembly type checking. | chriseth | 2017-02-20 | 1 | -1/+1 |
| | | |||||
* | | Fix early exist for fatal errors. | chriseth | 2017-02-16 | 4 | -73/+82 |
|/ | |||||
* | Review comments. | chriseth | 2017-02-14 | 3 | -7/+7 |
| | |||||
* | Allow different entry scope for registerDeclarations. | chriseth | 2017-02-14 | 3 | -9/+22 |
| | |||||
* | Extract scopes into compiler stack. | chriseth | 2017-02-14 | 2 | -2/+8 |
| | |||||
* | Refactor type system to allow multiple entry points. | chriseth | 2017-02-14 | 4 | -15/+27 |
| | |||||
* | Refactor NameAndTypeResolver and SyntaxChecker to allow other entry points. | chriseth | 2017-02-14 | 6 | -61/+86 |
| | |||||
* | Support revert() | Alex Beregszaszi | 2017-02-11 | 1 | -1/+3 |
| | |||||
* | Implement assert as a global function | Alex Beregszaszi | 2017-02-10 | 1 | -1/+3 |
| | |||||
* | Disallow arrays with negative length | Alex Beregszaszi | 2017-02-02 | 1 | -0/+2 |
| | |||||
* | Warn about invalid checksums of addresses. | chriseth | 2017-01-25 | 1 | -0/+10 |
| | |||||
* | Merge pull request #1245 from ethereum/1215 | chriseth | 2017-01-24 | 2 | -7/+19 |
|\ | | | | | Allow multiple events of the same name | ||||
| * | analysis: disallow overloading functions with events | Yoichi Hirai | 2017-01-23 | 1 | -1/+6 |
| | | |||||
| * | analysis: fix format | Yoichi Hirai | 2017-01-23 | 1 | -4/+7 |
| | | |||||
| * | analysis: Resolve event overloading | Yoichi Hirai | 2017-01-23 | 2 | -14/+11 |
| | | |||||
| * | analysis: Allow multiple events of the same name | Yoichi Hirai | 2017-01-23 | 1 | -0/+7 |
| | | | | | | | | Fixes #1215 | ||||
* | | Check if constructor is public or not. | chriseth | 2017-01-21 | 1 | -1/+6 |
|/ | |||||
* | Fix default function type name visibility. | chriseth | 2017-01-19 | 1 | -1/+0 |
| | |||||
* | analysis: use Declaration::functionType() in another location | Yoichi Hirai | 2017-01-12 | 1 | -11/+4 |
| | |||||
* | ast: add Declaration::functionType() | Yoichi Hirai | 2017-01-12 | 1 | -14/+7 |
| | |||||
* | analysis: avoid emscripten build failure | Yoichi Hirai | 2017-01-12 | 1 | -3/+3 |
| | |||||
* | analysis: changes necessary to compile std/StandardToken.sol | Yoichi Hirai | 2017-01-12 | 3 | -12/+58 |
| | |||||
* | analysis: allow some shadowings explicitly | Yoichi Hirai | 2017-01-12 | 1 | -0/+8 |
| | |||||
* | analysis: report errors when inheritance causes collision | Yoichi Hirai | 2017-01-12 | 1 | -1/+25 |
| | |||||
* | Improve error message when trying to modify constant variables | Federico Bond | 2016-12-13 | 1 | -1/+6 |
| | |||||
* | Warn about using msg.value in non-payable function | Federico Bond | 2016-12-09 | 2 | -0/+150 |
| | |||||
* | Fix licensing headers | VoR0220 | 2016-11-23 | 18 | -72/+72 |
| | | | | Signed-off-by: VoR0220 <rj@erisindustries.com> | ||||
* | Check that no internals are used in any external function type. | chriseth | 2016-11-16 | 3 | -1/+17 |
| | |||||
* | Disallow payable internal functions. | chriseth | 2016-11-16 | 1 | -1/+2 |
| |