Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Stack adjustment and code generation for fallback function. | chriseth | 2017-06-29 | 1 | -4/+6 |
| | | | | This assumes that the fallback function does not have return parameters. | ||||
* | Fix negative stack size checks. | chriseth | 2017-06-28 | 2 | -0/+11 |
| | |||||
* | 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 |
| | | |||||
* | | Merge pull request #2437 from ethereum/warnDoubleCopyStorage | Alex Beregszaszi | 2017-06-27 | 2 | -0/+34 |
|\ \ | | | | | | | Warn about copies in storage that might overwrite unexpectedly. | ||||
| * | | Warn about copies in storage that might overwrite unexpectedly. | chriseth | 2017-06-26 | 2 | -0/+34 |
| | | | |||||
* | | | Merge pull request #2459 from ethereum/noComparisonForSomeTypes | Alex Beregszaszi | 2017-06-27 | 3 | -5/+15 |
|\ \ \ | | | | | | | | | No comparison for some types | ||||
| * | | | Only allow equality checks for internal function types. | chriseth | 2017-06-26 | 1 | -1/+1 |
| | | | | |||||
| * | | | Disallow comparisons between some types. | chriseth | 2017-06-26 | 3 | -5/+15 |
| |/ / | |||||
* | | | Merge pull request #2453 from ethereum/memcopyAsForLoop | Alex Beregszaszi | 2017-06-27 | 2 | -23/+20 |
|\ \ \ | |/ / |/| | | Use for loop for assembly memcopy. | ||||
| * | | Comment about zero length. | chriseth | 2017-06-27 | 1 | -0/+2 |
| | | | |||||
| * | | Reformat. | chriseth | 2017-06-26 | 1 | -6/+9 |
| | | | |||||
| * | | Use for loop for assembly memcopy. | chriseth | 2017-06-26 | 1 | -23/+15 |
| | | | |||||
* | | | Merge pull request #2450 from ethereum/addressstring | Alex Beregszaszi | 2017-06-26 | 1 | -0/+2 |
|\ \ \ | | | | | | | | | Fix for strings treated as addresses. | ||||
| * | | | Fix strings interpreted as addresses. | chriseth | 2017-06-22 | 1 | -0/+2 |
| | | | | |||||
* | | | | Merge pull request #2460 from ethereum/disallowMultiModifier | Alex Beregszaszi | 2017-06-26 | 3 | -0/+18 |
|\ \ \ \ | | | | | | | | | | | Disallow invoking the same modifier multiple times. | ||||
| * | | | | Disallow invoking the same modifier multiple times. | chriseth | 2017-06-24 | 3 | -0/+18 |
| | | | | | |||||
* | | | | | Merge pull request #2442 from ethereum/remove-why3 | chriseth | 2017-06-26 | 4 | -1067/+0 |
|\ \ \ \ \ | |_|_|/ / |/| | | | | Remove Why3 generator | ||||
| * | | | | Remove Why3 generator | Alex Beregszaszi | 2017-06-25 | 4 | -1067/+0 |
| |/ / / | |||||
* | | | | 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 | ||||
* | | | | | Review suggestions. | chriseth | 2017-06-24 | 1 | -1/+1 |
| | | | | | |||||
* | | | | | Change invalid opcode to revert for input validation. | chriseth | 2017-06-24 | 6 | -20/+52 |
| |/ / / |/| | | | |||||
* | | | | Merge pull request #2448 from federicobond/constant-addresses | chriseth | 2017-06-23 | 1 | -5/+5 |
|\ \ \ \ | | | | | | | | | | | Fix address literals not being treated as compile-time constants | ||||
| * | | | | 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 | ||||
* | | | | | Merge pull request #2443 from ethereum/julia-asm-size | chriseth | 2017-06-23 | 1 | -0/+5 |
|\ \ \ \ \ | |/ / / / |/| | | | | Support appendAssemblySize() in AbstractAssembly | ||||
| * | | | | Support appendAssemblySize() in AbstractAssembly | Alex Beregszaszi | 2017-06-23 | 1 | -0/+5 |
| | | | | | |||||
* | | | | | Merge pull request #2444 from ethereum/parser-scanner | Alex Beregszaszi | 2017-06-23 | 3 | -5/+25 |
|\ \ \ \ \ | |/ / / / |/| | | | | Avoid including Scanner.h in ParserBase.h | ||||
| * | | | | Avoid including Scanner.h in ParserBase.h | Alex Beregszaszi | 2017-06-23 | 3 | -5/+25 |
| | |_|/ | |/| | | |||||
* | | | | Merge pull request #2452 from ethereum/fixPassingEmptyString | Alex Beregszaszi | 2017-06-23 | 1 | -1/+1 |
|\ \ \ \ | |/ / / |/| | | | Fix passing empty string | ||||
| * | | | Fix ABI encoding of empty string literal. | chriseth | 2017-06-22 | 1 | -1/+1 |
| | |/ | |/| | |||||
* | | | Merge pull request #2408 from federicobond/constant-parameters | chriseth | 2017-06-23 | 1 | -1/+8 |
|\ \ \ | |/ / |/| | | Fix segmentation fault with constant function parameters | ||||
| * | | Fix segmentation fault with constant function parameters | Federico Bond | 2017-06-22 | 1 | -1/+8 |
| |/ | |||||
* | | Merge pull request #2404 from ethereum/methodidentifiers | Alex Beregszaszi | 2017-06-22 | 3 | -18/+12 |
|\ \ | | | | | | | Clean up method identifiers handling in CLI/CompilerStack | ||||
| * | | Make compiler.contractDefinition private | Alex Beregszaszi | 2017-06-22 | 1 | -3/+4 |
| | | | |||||
| * | | Rework functionHashes into methodIdentifiers | Alex Beregszaszi | 2017-06-22 | 3 | -7/+8 |
| | | | |||||
| * | | Use compilerStack.functionHashes in StandardCompiler | Alex Beregszaszi | 2017-06-22 | 1 | -9/+1 |
| |/ | |||||
* / | Merge interface/Exceptions and interface/Utils | Alex Beregszaszi | 2017-06-22 | 18 | -61/+19 |
|/ | |||||
* | Merge pull request #2409 from federicobond/trailing-commas-2 | chriseth | 2017-06-19 | 1 | -3/+9 |
|\ | | | | | Improve error reporting of trailing commas | ||||
| * | Improve error reporting of trailing commas | Federico Bond | 2017-06-16 | 1 | -3/+9 |
| | | |||||
* | | Merge pull request #2416 from federicobond/multiple-specifiers | chriseth | 2017-06-19 | 1 | -0/+6 |
|\ \ | | | | | | | Display error if payable or constant is specified multiple times | ||||
| * | | Display error if payable or constant is specified multiple times | Federico Bond | 2017-06-17 | 1 | -0/+6 |
| | | | |||||
* | | | Merge pull request #2225 from ethereum/julia-for | chriseth | 2017-06-19 | 15 | -77/+159 |
|\ \ \ | |/ / |/| | | Implement for statement in assembly parser / printer / code generator | ||||
| * | | Split block code generation into main and finalize. | chriseth | 2017-06-16 | 2 | -2/+2 |
| | | | |||||
| * | | Helper to count the number of variables in a scope. | chriseth | 2017-06-16 | 3 | -3/+12 |
| | | | |||||
| * | | Add include file to forward-declare inline assembly structs. | chriseth | 2017-06-16 | 6 | -77/+64 |
| | | | |||||
| * | | For loops analysis. | chriseth | 2017-06-16 | 2 | -4/+41 |
| | | | |||||
| * | | Parse for statement in assembly parser / printer | Alex Beregszaszi | 2017-06-16 | 10 | -3/+52 |
| |/ | |||||
* / | Try to recover from parser errors where possible | Federico Bond | 2017-06-16 | 1 | -13/+22 |
|/ | |||||
* | Merge pull request #2382 from ruchevits/combined-json-hashes | chriseth | 2017-06-15 | 2 | -0/+11 |
|\ | | | | | Allow including hashes of method signatures in --combined-json output | ||||
| * | Reverted functionHashes output to use method signature as keys | Edward Ruchevits | 2017-06-14 | 1 | -1/+1 |
| | | |||||
| * | Allow including hashes of method signatures in --combined-json output | Edward Ruchevits | 2017-06-14 | 2 | -0/+11 |
| | | |||||
* | | Move subroutine helpers from CompilerContext to Assembly | Alex Beregszaszi | 2017-06-15 | 1 | -3/+3 |
| | | |||||
* | | Remove obsolete errorTag() | Alex Beregszaszi | 2017-06-15 | 1 | -2/+0 |
| | | |||||
* | | Merge pull request #2192 from winsvega/develop | Alex Beregszaszi | 2017-06-15 | 1 | -17/+11 |
|\ \ | | | | | | | add STATICCALL instruction | ||||
| * | | add new opcode instructions to the parser | Dimitry | 2017-06-15 | 1 | -17/+11 |
| | | | | | | | | | | | | STATICCALL 0xfa 6 inputs (gas address mem1 mem2 mem3 mem4) | ||||
* | | | Merge pull request #2381 from ethereum/fixcrash | chriseth | 2017-06-15 | 1 | -4/+1 |
|\ \ \ | | | | | | | | | Fix a crash about a non-callable expression. | ||||
| * | | | 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 |
| | |/ | |/| | |||||
* | | | Merge pull request #2384 from ethereum/parseFunctionalInstructions | chriseth | 2017-06-15 | 1 | -0/+13 |
|\ \ \ | |_|/ |/| | | Enforce function arguments when parsing functional instructions. | ||||
| * | | Enforce function arguments when parsing functional instructions. | chriseth | 2017-06-14 | 1 | -0/+13 |
| | | | |||||
* | | | Display user friendly instruction name | Alex Beregszaszi | 2017-06-14 | 1 | -5/+12 |
| | | | |||||
* | | | Issue warning for using CREATE2 in inline assembly | Alex Beregszaszi | 2017-06-14 | 1 | -2/+3 |
| | | | |||||
* | | | Merge pull request #2392 from federicobond/disallow-trailing-commas | chriseth | 2017-06-14 | 1 | -4/+9 |
|\ \ \ | |/ / |/| | | Forbid trailing commas in named arguments | ||||
| * | | Forbid trailing commas in named arguments | Federico Bond | 2017-06-14 | 1 | -4/+9 |
| |/ | |||||
* | | Merge pull request #2331 from ethereum/ASTDocumentationEntry | chriseth | 2017-06-14 | 1 | -0/+1 |
|\ \ | | | | | | | documentation field added to ContractDefinition-Node | ||||
| * | | documentation field added to ContractDefinition-Node | djudjuu | 2017-05-31 | 1 | -0/+1 |
| | | | |||||
* | | | Merge pull request #2327 from ethereum/assembler-object | chriseth | 2017-06-14 | 2 | -5/+19 |
|\ \ \ | | | | | | | | | Return assembler object in AssemblyStack | ||||
| * | | | Supply text representation of assembly | Alex Beregszaszi | 2017-06-09 | 1 | -1/+3 |
| | | | | |||||
| * | | | Introduce MachineAssemblyObject | Alex Beregszaszi | 2017-06-09 | 2 | -5/+17 |
| | | | | |||||
* | | | | Merge pull request #2389 from ethereum/moveLabelIDs | chriseth | 2017-06-14 | 4 | -25/+12 |
|\ \ \ \ | |_|_|/ |/| | | | Move LabelIDs to generation phase. | ||||
| * | | | Move "active variable" to analysis phase. | chriseth | 2017-06-14 | 3 | -16/+10 |
| | | | | |||||
| * | | | Remove struct constructor. | chriseth | 2017-06-14 | 2 | -2/+1 |
| | | | | |||||
| * | | | Move stack height to generation phase. | chriseth | 2017-06-14 | 1 | -2/+0 |
| | | | | |||||
| * | | | Move LabelIDs to generation phase. | chriseth | 2017-06-14 | 1 | -5/+1 |
| |/ / | |||||
* | | | Add a warning about a varialbe of the name of an instruction | Yoichi Hirai | 2017-06-13 | 3 | -0/+27 |
| | | | |||||
* | | | Warn if returndatasize/returndatacopy is used | Alex Beregszaszi | 2017-06-13 | 2 | -1/+20 |
|/ / | |||||
* | | Merge pull request #2362 from ethereum/lowercase_instructions | Alex Beregszaszi | 2017-06-09 | 2 | -11/+30 |
|\ \ | | | | | | | Use lowercase when reporting instruction error. | ||||
| * | | Use lowercase when reporting instruction error. | chriseth | 2017-06-09 | 2 | -11/+30 |
| | | | |||||
* | | | Remove excess includes | Alex Beregszaszi | 2017-06-09 | 2 | -1/+1 |
| | | | |||||
* | | | Simplify CodeGenerator by remove seldom used case | Alex Beregszaszi | 2017-06-09 | 3 | -18/+2 |
| | | | |||||
* | | | Remove obsolete AsmStack | Alex Beregszaszi | 2017-06-09 | 2 | -175/+0 |
| | | | |||||
* | | | Use inline assembly directly and not via AsmStack | Alex Beregszaszi | 2017-06-09 | 1 | -3/+17 |
|/ / | |||||
* | | Comments and consistent variable names. | chriseth | 2017-06-09 | 1 | -4/+4 |
| | | |||||
* | | Fix: Copy resolver. | chriseth | 2017-06-08 | 1 | -1/+1 |
| | | |||||
* | | Visitor bugfix. | chriseth | 2017-06-08 | 2 | -6/+18 |
| | | |||||
* | | Remove error reporter from code generation phase. | chriseth | 2017-06-08 | 6 | -24/+14 |
| | | |||||
* | | Some more comments. | chriseth | 2017-06-08 | 1 | -2/+0 |
| | | |||||
* | | Correct stack height adjustment after returnsub. | chriseth | 2017-06-08 | 1 | -1/+1 |
| | | |||||
* | | Generate only single error in inline assembly. | chriseth | 2017-06-08 | 2 | -3/+12 |
| | | |||||
* | | Introduce machine-dependent stack adjustment. | chriseth | 2017-06-08 | 1 | -4/+2 |
| | | |||||
* | | Initial EVM1.5 assembly implementation. | chriseth | 2017-06-08 | 10 | -21/+99 |
| | | |||||
* | | Refactor AssemblyStack | Alex Beregszaszi | 2017-06-07 | 2 | -4/+7 |
| | | |||||
* | | Add analyze(block) to AssemblyStack | Alex Beregszaszi | 2017-06-07 | 2 | -0/+18 |
| | | |||||
* | | Reset error list in parseAndAnalyze | Alex Beregszaszi | 2017-06-07 | 1 | -0/+1 |
| | | |||||
* | | Merge pull request #2332 from ethereum/fixLiteralPrint | chriseth | 2017-06-06 | 2 | -2/+18 |
|\ \ | | | | | | | fix Literalprint | ||||
| * | | adjusted testcase and renaming | djudjuu | 2017-06-06 | 2 | -5/+3 |
| | | | |||||
| * | | fix Literalprint | djudjuu | 2017-05-31 | 2 | -2/+20 |
| |/ | |||||
* | | Merge pull request #2336 from ethereum/expectExpression | chriseth | 2017-06-01 | 2 | -38/+29 |
|\ \ | | | | | | | Refactor to use expectExpression in analyzer. | ||||
| * | | Add comma. | chriseth | 2017-06-01 | 1 | -1/+1 |
| | | | |||||
| * | | Improved error message. | chriseth | 2017-06-01 | 1 | -1/+1 |
| | | | |||||
| * | | Refactor to use expectExpression in analyzer. | chriseth | 2017-06-01 | 2 | -38/+29 |
| | | | |||||
* | | | Fix state after CompilerStack.reset() | Alex Beregszaszi | 2017-06-01 | 2 | -1/+26 |
| | | | |||||
* | | | Remove unused functions from CompilerStack | Alex Beregszaszi | 2017-06-01 | 2 | -48/+0 |
|/ / | |||||
* | | Merge pull request #2317 from ethereum/keccak256 | chriseth | 2017-05-31 | 5 | -8/+10 |
|\ \ | |/ |/| | Use keccak256 in tests and replace the SHA3 instruction in assembly | ||||
| * | Alias sha3 to keccak256 in inline assembly | Alex Beregszaszi | 2017-05-30 | 1 | -0/+2 |
| | | |||||
| * | Rename the SHA3 assembly instruction to KECCAK256 | Alex Beregszaszi | 2017-05-30 | 4 | -8/+8 |
| | | |||||
* | | Refactor error reporting | Rhett Aultman | 2017-05-30 | 39 | -663/+718 |
|/ | | | | | | | | | 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 | ||||
* | Merge pull request #2319 from ethereum/virtualBlocks | chriseth | 2017-05-29 | 5 | -21/+28 |
|\ | | | | | Introduce virtual blocks for function arguments. | ||||
| * | Introduce virtual blocks for function arguments. | chriseth | 2017-05-29 | 5 | -21/+28 |
| | | |||||
* | | Introduce LabelID typedef. | chriseth | 2017-05-29 | 2 | -3/+4 |
|/ | |||||
* | Merge pull request #2311 from ethereum/julia-types | chriseth | 2017-05-29 | 5 | -13/+37 |
|\ | | | | | Validate types for Julia (part 1) | ||||
| * | Move builtin type list to the top | Alex Beregszaszi | 2017-05-27 | 1 | -1/+7 |
| | | |||||
| * | Change error message for invalid type | Alex Beregszaszi | 2017-05-27 | 1 | -1/+1 |
| | | |||||
| * | Introduce Julia mode in AsmAnalyzer | Alex Beregszaszi | 2017-05-27 | 5 | -7/+13 |
| | | |||||
| * | Validate that only basic types are used in Julia | Alex Beregszaszi | 2017-05-27 | 2 | -0/+21 |
| | | |||||
| * | Move constructor to AsmAnalyzer header | Alex Beregszaszi | 2017-05-27 | 2 | -11/+2 |
| | | |||||
* | | Pull out common code to a helper | Alex Beregszaszi | 2017-05-27 | 2 | -24/+15 |
| | | |||||
* | | Remove duplicate code | Alex Beregszaszi | 2017-05-27 | 1 | -20/+18 |
| | | |||||
* | | Use the new ParserBase API in AsmParser | Alex Beregszaszi | 2017-05-27 | 1 | -33/+33 |
| | | |||||
* | | Add scanner helpers to ParserBase | Alex Beregszaszi | 2017-05-27 | 1 | -1/+5 |
| | | |||||
* | | Move Solidity specific methods from ParserBase to the Solidity Parser | Alex Beregszaszi | 2017-05-27 | 4 | -60/+60 |
|/ | |||||
* | More comments for assembly | chriseth | 2017-05-26 | 1 | -0/+2 |
| | |||||
* | Adapt EVM codegen to new namespace. | chriseth | 2017-05-26 | 13 | -78/+51 |
| | |||||
* | Move EVM codegen to libjulia. | chriseth | 2017-05-26 | 1 | -238/+0 |
| | |||||
* | Support multiple assembly front and backends. | chriseth | 2017-05-26 | 2 | -0/+170 |
| | |||||
* | Merge pull request #2316 from ethereum/inlineasm-cleanup | chriseth | 2017-05-26 | 1 | -5/+2 |
|\ | | | | | Better error message for elementary operations | ||||
| * | Better error message for elementary operations | Alex Beregszaszi | 2017-05-26 | 1 | -5/+2 |
| | | |||||
* | | Merge pull request #2224 from ethereum/julia-switch | chriseth | 2017-05-26 | 11 | -2/+124 |
|\ \ | | | | | | | Implement switch statement in the assembly parser/printer | ||||
| * | | Better error messages for invalid switch cases | Alex Beregszaszi | 2017-05-26 | 1 | -0/+4 |
| | | | |||||
| * | | Disallow instructions as a switch expression | Alex Beregszaszi | 2017-05-26 | 1 | -0/+2 |
| | | | |||||
| * | | Visit case bodies in scope filler | Alex Beregszaszi | 2017-05-26 | 2 | -1/+10 |
| | | | |||||
| * | | Do not stop on first switch error | Alex Beregszaszi | 2017-05-26 | 1 | -5/+7 |
| | | | |||||
| * | | Check token within parseCase | Alex Beregszaszi | 2017-05-26 | 2 | -7/+9 |
| | | | |||||
| * | | Switch cases are not followed by colon | Alex Beregszaszi | 2017-05-26 | 2 | -3/+2 |
| | | | |||||
| * | | Change switch case string to Literal | Alex Beregszaszi | 2017-05-26 | 4 | -15/+26 |
| | | | |||||
| * | | Implement switch statement in the assembly parser/printer | Alex Beregszaszi | 2017-05-26 | 10 | -2/+95 |
| |/ | |||||
* | | Also change error message. | chriseth | 2017-05-26 | 1 | -1/+1 |
| | | |||||
* | | Scanner requires only the SourcesSet state | Alex Beregszaszi | 2017-05-25 | 1 | -1/+1 |
|/ | |||||
* | Uniform error messages | Alex Beregszaszi | 2017-05-24 | 1 | -3/+4 |
| | |||||
* | Better error messages during parsing functional instructions | Alex Beregszaszi | 2017-05-24 | 1 | -0/+9 |
| | |||||
* | Merge pull request #2301 from ethereum/ASTFunctionTypeFix | chriseth | 2017-05-24 | 2 | -2/+4 |
|\ | | | | | insert ParameterList-node in FunctionType-json | ||||
| * | insert ParameterList-node in FunctionType-json | djudjuu | 2017-05-24 | 2 | -2/+4 |
| | | |||||
* | | Merge pull request #2294 from ethereum/inlineasm | chriseth | 2017-05-24 | 1 | -0/+1 |
|\ \ | | | | | | | Fix scope assert in AsmAnalyzer | ||||
| * | | Fix scope assert in AsmAnalyzer | Alex Beregszaszi | 2017-05-24 | 1 | -0/+1 |
| |/ | |||||
* | | Merge pull request #2289 from ethereum/astjson-fix | chriseth | 2017-05-24 | 1 | -1/+1 |
|\ \ | |/ |/| | Fix AST JSON converter type lookup | ||||
| * | Fix AST JSON converter type lookup | Alex Beregszaszi | 2017-05-24 | 1 | -1/+1 |
| | | |||||
* | | Rename parseFunctionalInstruction to parseCall | Alex Beregszaszi | 2017-05-24 | 2 | -4/+4 |
| | | |||||
* | | Reorder AsmData for readability | Alex Beregszaszi | 2017-05-24 | 1 | -7/+14 |
| | | |||||
* | | Rename FunctionalAssignment to Assignment | Alex Beregszaszi | 2017-05-24 | 9 | -22/+21 |
| | | |||||
* | | Rename Assignment to StackAssignment | Alex Beregszaszi | 2017-05-24 | 9 | -15/+15 |
| | | |||||
* | | 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 |
| | | |||||
* | | Display actual error message and not assertion in analysis | Alex Beregszaszi | 2017-05-23 | 1 | -1/+9 |
| | | |||||
* | | Enable a single right hand item on let | Alex Beregszaszi | 2017-05-23 | 5 | -37/+7 |
| | | |||||
* | | Support multiple variables in a variable declaration in inline assembly | Alex Beregszaszi | 2017-05-23 | 6 | -15/+71 |
| | | |||||
* | | 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. | ||||
* | | Merge pull request #1810 from ethereum/compactJson | chriseth | 2017-05-22 | 9 | -471/+552 |
|\ \ | | | | | | | Compact format for AST-Json. | ||||
| * | | minor fixes and changelog update | djudjuu | 2017-05-22 | 2 | -1/+2 |
| | | | |||||
| * | | refactoring functionCallAnnotation | djudjuu | 2017-05-19 | 6 | -21/+51 |
| | | | |||||
| * | | testsuite adjustment | djudjuu | 2017-05-19 | 1 | -4/+4 |
| | | | |||||
| * | | include new InlineAssemblyInformation into JSON | djudjuu | 2017-05-17 | 2 | -2/+13 |
| | | | |||||
| * | | prefixChanges and contractKind-field | djuju | 2017-05-17 | 2 | -13/+24 |
| | | | |||||
| * | | fixed styletypos, renaming and added helperfunction | djuju | 2017-05-17 | 2 | -36/+40 |
| | | | |||||
| * | | Use different AST node names in legacy and new format | Alex Beregszaszi | 2017-05-17 | 1 | -9/+9 |
| | | | |||||
| * | | Support the new AST in StandardCompiler | Alex Beregszaszi | 2017-05-17 | 1 | -0/+1 |
| | | | |||||
| * | | Compact format for AST-Json with backwards compatibility | chriseth | 2017-05-17 | 5 | -450/+473 |
| | | | |||||
* | | | Add const | chriseth | 2017-05-20 | 1 | -1/+1 |
| | | | |||||
* | | | Review changes. | chriseth | 2017-05-20 | 1 | -6/+6 |
| | | | |||||
* | | | Refactor to abstract assembly to JULIA. | chriseth | 2017-05-20 | 5 | -76/+127 |
| |/ |/| | |||||
* | | Merge pull request #2262 from ethereum/interface-cleanup | chriseth | 2017-05-19 | 9 | -231/+342 |
|\ \ | | | | | | | Cleanup the external interfaces (ABI and Natspec) | ||||
| * | | Rename CompilerStack.metadata to CompilerStack.natspec | Alex Beregszaszi | 2017-05-19 | 3 | -9/+9 |
| | | | |||||
| * | | Rename InterfaceHandler to Natspec | Alex Beregszaszi | 2017-05-19 | 5 | -12/+11 |
| | | | |||||
| * | | Split ABI out of InterfaceHandler | Alex Beregszaszi | 2017-05-19 | 6 | -105/+212 |
| | | | |||||
| * | | Use CompilerStack.contractABI directly | Alex Beregszaszi | 2017-05-19 | 2 | -2/+7 |
| | | | |||||
| * | | Rename CompilerStack.interface to CompilerStack.contractABI | Alex Beregszaszi | 2017-05-19 | 2 | -3/+3 |
| | | | |||||
* | | | Accept bool as a type in Julia mode | Alex Beregszaszi | 2017-05-19 | 1 | -1/+9 |
| | | | |||||
* | | | Support true/false literals in inline assembly | Alex Beregszaszi | 2017-05-19 | 5 | -5/+42 |
|/ / | |||||
* | | Merge pull request #2222 from ethereum/julia-types | chriseth | 2017-05-16 | 11 | -36/+106 |
|\ \ | |/ |/| | Add support for types in Julia | ||||
| * | Use boost range adaptors in AsmPrinter | Alex Beregszaszi | 2017-05-06 | 1 | -4/+12 |
| | | |||||
| * | Parse types in Julia mode | Alex Beregszaszi | 2017-05-06 | 11 | -36/+98 |
| | | |||||
* | | Ensure proper checks are in CompilerStack | Alex Beregszaszi | 2017-05-11 | 1 | -4/+10 |
| | | |||||
* | | Do not crash on AST if parsing failed | Alex Beregszaszi | 2017-05-11 | 1 | -0/+3 |
| | | |||||
* | | Added change to make compile happy on MacOS 10.9.5 | Erik Quenon Steggall | 2017-05-06 | 1 | -1/+1 |
|/ | |||||
* | Assert that invalid AST elements are not printed in Julia mode | Alex Beregszaszi | 2017-05-05 | 1 | -1/+5 |
| | |||||
* | Add flag for JULIA printing | Alex Beregszaszi | 2017-05-05 | 1 | -0/+5 |
| | |||||
* | Show better error message for Julia mode | Alex Beregszaszi | 2017-05-05 | 1 | -3/+11 |
| | |||||
* | Do not allow literal pushes in Julia | Alex Beregszaszi | 2017-05-05 | 1 | -0/+2 |
| | |||||
* | Disable labels in Julia | Alex Beregszaszi | 2017-05-05 | 1 | -0/+3 |
| | |||||
* | Merge pull request #2194 from ethereum/removeerrorlabel | chriseth | 2017-05-05 | 5 | -30/+0 |
|\ | | | | | Remove error label / invalid jump label. | ||||
| * | Remove error label / invalid jump label. | chriseth | 2017-04-28 | 5 | -30/+0 |
| | | |||||
* | | 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 #2211 from ethereum/jsonio-fixes | Alex Beregszaszi | 2017-05-02 | 1 | -3/+3 |
|\ \ | | | | | | | Follow the JSON I/O spec closely | ||||
| * | | Follow the JSON I/O spec closely | Alex Beregszaszi | 2017-05-02 | 1 | -3/+3 |
| | | | |||||
* | | | 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. | ||||
* | | | | Remove why3 from standard compiler | Alex Beregszaszi | 2017-05-02 | 1 | -24/+0 |
| |/ / |/| | | |||||
* | | | Merge pull request #2198 from ethereum/conditionalCompilerStateReset | chriseth | 2017-05-02 | 1 | -1/+4 |
|\ \ \ | | | | | | | | | conditional reset of compilerState-Enum | ||||
| * | | | conditional reset of compilerState-Enum | djuju | 2017-04-29 | 1 | -1/+4 |
| |/ / | |||||
* | | | 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 |
| | | | |||||
* | | | Merge pull request #2171 from ethereum/splitParseAndAnalyze | chriseth | 2017-04-28 | 2 | -17/+63 |
|\ \ \ | |_|/ |/| | | refactoring parse() into two separate functions | ||||
| * | | error fixed | djuju | 2017-04-28 | 1 | -8/+7 |
| | | | |||||
| * | | enumchecks not working | djuju | 2017-04-28 | 2 | -15/+36 |
| | | | |||||
| * | | documentation, checks and renaming | djuju | 2017-04-27 | 2 | -14/+13 |
| | | | |||||
| * | | refactoring parse() into two separate functions | djuju | 2017-04-27 | 2 | -7/+34 |
| | | | |||||
* | | | Merge pull request #2193 from ethereum/julia-assign-stack | chriseth | 2017-04-28 | 1 | -0/+2 |
|\ \ \ | | | | | | | | | Disallow assign from stack in Julia (=: var) | ||||
| * | | | Disallow assign from stack in Julia (=: var) | Alex Beregszaszi | 2017-04-28 | 1 | -1/+3 |
| | | | | |||||
| * | | | Do not validate identifiers against EVM instructions in JULIA | Alex Beregszaszi | 2017-04-28 | 1 | -4/+6 |
| | | | | |||||
| * | | | Add flag for JULIA parsing | Alex Beregszaszi | 2017-04-28 | 1 | -1/+4 |
| | | | | |||||
* | | | | Merge pull request #2189 from ethereum/julia-instructions | chriseth | 2017-04-28 | 2 | -5/+10 |
|\ \ \ \ | |/ / / |/| | | | Do not disallow EVM instructions as identifiers in Julia | ||||
| * | | | Do not validate identifiers against EVM instructions in JULIA | Alex Beregszaszi | 2017-04-27 | 1 | -4/+6 |
| | | | | |||||
| * | | | Add flag for JULIA parsing | Alex Beregszaszi | 2017-04-27 | 1 | -1/+4 |
| | | | | |||||
* | | | | Make assembler errors fatal | Alex Beregszaszi | 2017-04-27 | 1 | -12/+4 |
| | | | | |||||
* | | | | Catch assembler exceptions and throw readable Solidity exceptions | Alex Beregszaszi | 2017-04-27 | 1 | -2/+35 |
|/ / / | |||||
* | | | Remove parentheses from around function return parameters | Alex Beregszaszi | 2017-04-27 | 2 | -4/+2 |
| | | | |||||
* | | | Check stack height during code generation. | chriseth | 2017-04-26 | 1 | -6/+34 |
| | | | |||||
* | | | Refactor to combined scope and stack height info. | chriseth | 2017-04-26 | 11 | -63/+151 |
| | | | |||||
* | | | Store stack height in analysis phase. | chriseth | 2017-04-26 | 2 | -5/+35 |
| | | | |||||
* | | | Fix storage access tests. | chriseth | 2017-04-25 | 2 | -15/+21 |
| | | | |||||
* | | | Special case for storage types with offset zero. | chriseth | 2017-04-25 | 1 | -3/+18 |
| | | | |||||
* | | | Pass internal resolver to assembly analyzer. | chriseth | 2017-04-25 | 1 | -1/+2 |
| | | | |||||
* | | | Fix refactoring error. | chriseth | 2017-04-25 | 1 | -2/+2 |
| | | | |||||
* | | | Build fix. | chriseth | 2017-04-25 | 2 | -4/+4 |
| | | | |||||
* | | | Storage access from inline assembly. | chriseth | 2017-04-25 | 4 | -17/+75 |
| | | | |||||
* | | | Another stack check. | chriseth | 2017-04-25 | 1 | -0/+2 |
| | | | |||||
* | | | Move analysis out of code generator. | chriseth | 2017-04-25 | 7 | -26/+55 |
| | | | |||||
* | | | Only allow access to local variables and only if they have a stack size of one. | chriseth | 2017-04-25 | 3 | -63/+53 |
| | | | |||||
* | | | Check again that instruction argument count is correct. | chriseth | 2017-04-25 | 1 | -0/+1 |
| | | | |||||
* | | | Only run stack filler on AST elements that are or contain declarations. | chriseth | 2017-04-25 | 2 | -32/+4 |
| | | | |||||
* | | | Review comments. | chriseth | 2017-04-25 | 2 | -2/+6 |
| | | | |||||
* | | | Review comments and cleanup. | chriseth | 2017-04-25 | 4 | -8/+13 |
| | | | |||||
* | | | Remove some errors checks from code generation (was moved to analysis already). | chriseth | 2017-04-25 | 1 | -50/+10 |
| | | | |||||
* | | | Perform stack height checks in assembly analysis phase. | chriseth | 2017-04-25 | 3 | -37/+148 |
| | | | |||||
* | | | Add some missing error locations. | chriseth | 2017-04-25 | 1 | -2/+3 |
| | | | |||||
* | | | Use actual type checking phase of assembler. | chriseth | 2017-04-25 | 8 | -41/+48 |
| | | | |||||
* | | | Split external identifier access into resolving and code generation. | chriseth | 2017-04-25 | 9 | -143/+188 |
| | | | |||||
* | | | Refactor assembly analysis into scope filling and checking. | chriseth | 2017-04-25 | 8 | -236/+615 |
| | | | |||||
* | | | Register functions. | chriseth | 2017-04-25 | 3 | -33/+90 |
|/ / | |||||
* | | Merge pull request #2164 from ethereum/jsonio-catch-internal-exceptions | chriseth | 2017-04-25 | 1 | -0/+12 |
|\ \ | | | | | | | JSON IO catch internal exceptions | ||||
| * | | Catch jsoncpp exceptions | Alex Beregszaszi | 2017-04-25 | 1 | -0/+8 |
| | | | |||||
| * | | Do not crash on invalid JSON input | Alex Beregszaszi | 2017-04-25 | 1 | -0/+4 |
| | | | |||||
* | | | Merge pull request #2152 from ethereum/warnRevert | chriseth | 2017-04-25 | 3 | -2/+11 |
|\ \ \ | |/ / |/| | | Warn about side-effect free statements. |