aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity
Commit message (Expand)AuthorAgeFilesLines
* Improve error message for wrong struct initialization (#3359)Federico Bond2018-01-041-1/+5
* [SMTChecker] Fix typo in the code (satisifable->satisfiable)Leonardo Alt2017-12-192-8/+8
* Merge pull request #3342 from ethereum/jsonio-sourcelocationAlex Beregszaszi2017-12-181-2/+2
|\
| * Populate the sourceLocation field properly in standard JSON on errorsAlex Beregszaszi2017-12-181-2/+2
* | Merge pull request #3304 from leonardoalt/smt_checkerchriseth2017-12-183-8/+55
|\ \
| * | [SMTChecker] Helper functions to add an expression to the solver conjoined wi...Leonardo Alt2017-12-142-5/+19
| * | [SMTChecker] Keep track of current path conditionsLeonardo Alt2017-12-143-8/+41
* | | Favour if over switch in ABI coder.chriseth2017-12-151-14/+14
| |/ |/|
* | Merge pull request #3232 from ethereum/simplifyConstantchriseth2017-12-144-48/+66
|\ \ | |/ |/|
| * Re-use `commonType`chriseth2017-12-121-1/+1
| * Simplify ConstantEvaluator.chriseth2017-12-123-41/+61
| * Reduce the types of errors outputted by ConstantEvaluatorAlex Beregszaszi2017-12-121-8/+6
| * Improve error message for constant evaluatorAlex Beregszaszi2017-12-122-2/+2
* | Merge pull request #3310 from ethereum/limitDeclYoichi Hirai2017-12-122-14/+17
|\ \
| * | Limit number of secondary source locations.chriseth2017-12-122-14/+17
| |/
* | Merge pull request #3183 from federicobond/fix-event-parsingYoichi Hirai2017-12-121-9/+5
|\ \ | |/ |/|
| * Fix event parsing. Refs #3175Federico Bond2017-11-231-9/+5
* | Fix struct encoding warning for libraries.chriseth2017-12-111-0/+1
* | Suggest the experimental ABI encoder if using structs as function parametersAlex Beregszaszi2017-12-111-0/+10
* | Suggest the "if" statement too instead of jumpsAlex Beregszaszi2017-12-061-1/+1
* | Warn for assembly labels tooAlex Beregszaszi2017-12-061-2/+3
* | Split Instruction and FunctionalInstruction in JuliaAlex Beregszaszi2017-12-055-13/+19
* | Merge pull request #3032 from ethereum/divisionchriseth2017-12-055-41/+164
|\ \
| * | Fix expression creation problems.chriseth2017-11-301-19/+30
| * | Fix signed division.chriseth2017-11-302-2/+20
| * | Unary operators and division.chriseth2017-11-305-61/+155
* | | Merge pull request #3265 from ethereum/rename_args_to_paramschriseth2017-12-045-11/+11
|\ \ \
| * | | Rename arguments to paramaters and returns to returnVariables.chriseth2017-12-015-11/+11
| |/ /
* / / Include missing forward declarations in AsmDataForwardAlex Beregszaszi2017-11-301-0/+3
|/ /
* | Simplify target selection codeAlex Beregszaszi2017-11-301-18/+9
* | Rename target selection to use the word artifactAlex Beregszaszi2017-11-301-32/+32
* | Add workaround for bytecode/deployedBytecode selectionAlex Beregszaszi2017-11-301-2/+20
* | Limit output according to the selected targets in StandardCompilerAlex Beregszaszi2017-11-301-20/+32
* | Add target selection helpers to StandardCompilerAlex Beregszaszi2017-11-301-0/+56
* | Cleanup and overflow checks for data pointers.chriseth2017-11-304-23/+47
* | ABI decoder.chriseth2017-11-306-4/+503
* | Merge pull request #3220 from ethereum/IuliaIfchriseth2017-11-2711-5/+52
|\ \
| * | Use if statement in abi functions.chriseth2017-11-221-3/+3
| * | If statement for Iulia / inline assembly.chriseth2017-11-2210-2/+49
* | | Explain IntIntFun and merge assertion.chriseth2017-11-241-3/+7
* | | Introduce sorts for smt expressions.chriseth2017-11-223-48/+37
|/ /
* | Fix problem with non-value-typed variables.chriseth2017-11-222-14/+16
* | For loop.chriseth2017-11-222-0/+43
* | Fix boolean constants.chriseth2017-11-221-2/+7
* | Check for conditions being constant.chriseth2017-11-224-27/+102
* | Tests.chriseth2017-11-221-5/+0
* | Track usage of variables.chriseth2017-11-224-70/+215
* | Handle branches.chriseth2017-11-222-54/+88
* | Improve cyclic constant error messageAlex Beregszaszi2017-11-221-1/+1
* | Detect cyclic constant definitionsBalajiganapathi S2017-11-222-8/+15
* | Allow constant integer variables as array lengths.Balajiganapathi S2017-11-222-0/+19
* | Show checksummed address always (prepend with 0)Alex Beregszaszi2017-11-171-2/+5
* | Do not try to display checksummed address for too-short/long address literalsAlex Beregszaszi2017-11-173-3/+5
* | Improves address literal checksum error messagewadeAlexC2017-11-173-3/+13
* | Merge pull request #3209 from ethereum/unimplemented-msgschriseth2017-11-162-3/+3
|\ \
| * | Add explanation to unimplemented assertionsAlex Beregszaszi2017-11-162-3/+3
* | | Merge pull request #3194 from kseo/print-using-forAlex Beregszaszi2017-11-162-0/+14
|\ \ \ | |/ / |/| |
| * | Print using for directive in ASTPrinterKwang Yul Seo2017-11-162-0/+14
* | | Merge pull request #3206 from kseo/outdated-commentAlex Beregszaszi2017-11-164-4/+4
|\ \ \ | |/ / |/| |
| * | Update outdated commentsKwang Yul Seo2017-11-154-4/+4
* | | Merge pull request #3189 from kseo/unusedAlex Beregszaszi2017-11-161-4/+0
|\ \ \ | |/ / |/| |
| * | Remove unused methodKwang Yul Seo2017-11-121-4/+0
| |/
* | Fix a typoKwang Yul Seo2017-11-141-1/+1
* | Remove a redundant checkKwang Yul Seo2017-11-131-1/+1
|/
* Merge pull request #3092 from rivenhk/b_2885chriseth2017-10-231-0/+15
|\
| * updated formatting when source snippets is too longrivenhk2017-10-191-3/+3
| * updating formatting when source snippets is too longrivenhk2017-10-181-5/+5
| * added formatting when source snippets is too longrivenhk2017-10-181-0/+15
* | Merge pull request #3030 from ethereum/smt-variable-typeschriseth2017-10-202-1/+16
|\ \
| * | SMT enforce variable typesAlex Beregszaszi2017-10-052-1/+16
* | | More detailed errors for invalid array lengths (such as division by zero).Alex Beregszaszi2017-10-201-3/+20
* | | Merge pull request #3101 from ethereum/compilerstack-headerchriseth2017-10-192-27/+41
|\ \ \
| * | | Simplify contract lookup in CompileStackAlex Beregszaszi2017-10-191-5/+10
| * | | Implement CompilerStack.lastContractName()Alex Beregszaszi2017-10-192-10/+19
| * | | Always require a contract/sourceName in CompilerStackAlex Beregszaszi2017-10-191-14/+14
* | | | Merge pull request #3108 from ethereum/remove-callcodechriseth2017-10-191-4/+12
|\ \ \ \
| * | | | Turn usage of callcode into an error as experimental 0.5.0 featureAlex Beregszaszi2017-10-191-4/+12
| |/ / /
* / / / Remove unused variable in Z3Alex Beregszaszi2017-10-191-1/+1
|/ / /
* | | Merge pull request #2925 from ethereum/tuple-value-checkchriseth2017-10-181-0/+6
|\ \ \
| * | | Only check tuples for valid rational numbers if they have more than one element.chriseth2017-10-181-1/+1
| * | | Validate each tuple literalAlex Beregszaszi2017-10-181-0/+6
| | |/ | |/|
* | | Do not accept truncated function selectors.chriseth2017-10-181-7/+4
* | | Catch exception in Z3.chriseth2017-10-181-18/+27
* | | Remove duplicate >= in Z3Alex Beregszaszi2017-10-181-2/+1
* | | Missing forward declaration.chriseth2017-10-181-0/+1
* | | Rename variables in SMT checker.chriseth2017-10-182-11/+11
|/ /
* | Allocate one byte per memory byte array element instead of 32.chriseth2017-10-171-2/+9
* | Improve Z3 message in cmakeAlex Beregszaszi2017-10-131-2/+2
* | Force interface functions as external (0.5.0)Alex Beregszaszi2017-10-061-2/+10
* | Remove obsolete createTypeError in ASTAlex Beregszaszi2017-10-063-12/+1
* | Use the proper error reporting interface in ConstantEvaluatorAlex Beregszaszi2017-10-063-7/+13
* | Require location keyword for local variables (0.5.0)Alex Beregszaszi2017-10-061-5/+13
* | Merge pull request #2981 from ethereum/no-address-overloadchriseth2017-10-051-2/+5
|\ \
| * | Do not add members of address to contracts in experimental 0.5.0Alex Beregszaszi2017-10-051-2/+5
* | | Merge pull request #3020 from ethereum/smt-functioncallAlex Beregszaszi2017-10-051-0/+10
|\ \ \ | |_|/ |/| |
| * | SMT should not crash on typecast/structsAlex Beregszaszi2017-10-051-0/+10
* | | Merge pull request #2982 from ethereum/encoderFixesAlex Beregszaszi2017-10-052-25/+18
|\ \ \ | |_|/ |/| |
| * | Rename "compacted" to "fromStack".chriseth2017-10-042-22/+18
| * | ABI encoder fixes and test.chriseth2017-09-271-5/+2
* | | Merge pull request #3029 from ethereum/tanwisgasAlex Beregszaszi2017-10-051-0/+3
|\ \ \
| * | | Send all gas for 0.5.0.chriseth2017-10-051-0/+3
| | |/ | |/|
* | | Merge pull request #2968 from ethereum/calldataencodedsizechriseth2017-10-051-0/+3
|\ \ \
| * | | Add some asserts about calldata encoded size.chriseth2017-10-041-0/+3
* | | | Merge pull request #2901 from ethereum/compiler-nameschriseth2017-10-053-1/+40
|\ \ \ \
| * | | | Restrict contracts compiled via outputSelection (but not the individual outpu...Alex Beregszaszi2017-10-051-0/+19
| * | | | Provide optional list of contract names to CompilerStack.compileAlex Beregszaszi2017-10-052-1/+21
| | |/ / | |/| |
* / | | Do not consider shadowing in variable names inside event declarationsFederico Bond2017-10-051-2/+4
|/ / /
* | | Merge pull request #2962 from ethereum/optionalDebugInfoAsmchriseth2017-10-041-5/+16
|\ \ \
| * | | Debugging info in CompilerContext.chriseth2017-10-041-5/+16
* | | | Merge pull request #3022 from ethereum/assertAlex Beregszaszi2017-10-043-3/+3
|\ \ \ \
| * | | | Use solAssert and not assertAlex Beregszaszi2017-10-043-3/+3
* | | | | Merge pull request #2990 from ethereum/someMoreSMTStuffchriseth2017-10-041-7/+0
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | Remove leftover couts.chriseth2017-09-291-7/+0
* | | | | Better error message when using fractional number as array size expressionswadeAlexC2017-10-041-2/+3
* | | | | Disallow non-pure constant state variables in 0.5.0Federico Bond2017-10-031-5/+14
* | | | | Merge pull request #2997 from federicobond/duplicate-eventsAlex Beregszaszi2017-10-032-5/+27
|\ \ \ \ \
| * | | | | Extract duplicate function or event finding logicFederico Bond2017-09-302-37/+14
| * | | | | Emit error when declaring event with same name and arguments twiceFederico Bond2017-09-302-0/+45
* | | | | | Add helpers for isPush/isDup/isSwapAlex Beregszaszi2017-10-021-3/+3
|/ / / / /
* | | | | Unary + now a synax error (experimental 0.5.0)Rhett Aultman2017-09-301-1/+8
* | | | | Validate array length in type checkerAlex Beregszaszi2017-09-291-1/+1
|/ / / /
* | | | Pull out helper to apply address member to contract membersAlex Beregszaszi2017-09-282-4/+10
* | | | Simplify address overloadingAlex Beregszaszi2017-09-282-30/+39
* | | | Fix overload resolution when conflict is with members of address (balance, tr...Alex Beregszaszi2017-09-281-6/+28
* | | | Merge pull request #2986 from ethereum/fixsourcelocationofvariabledecsatementAlex Beregszaszi2017-09-281-0/+1
|\ \ \ \
| * | | | Fix source location of VariableDeclarationStatement.chriseth2017-09-281-0/+1
| | |_|/ | |/| |
* / | | Better readable encoder assembly.chriseth2017-09-271-6/+28
|/ / /
* | | Merge pull request #2975 from ethereum/encode-memoryAlex Beregszaszi2017-09-274-22/+45
|\ \ \
| * | | Split encodeToMemory to packedEncode and abiEncodeAlex Beregszaszi2017-09-274-18/+41
| * | | Make most of the parameters mandatory in encodeToMemoryAlex Beregszaszi2017-09-272-6/+6
* | | | Order GlobalContext entriesAlex Beregszaszi2017-09-271-13/+13
* | | | Format GlobalContext for readabilityAlex Beregszaszi2017-09-271-42/+25
|/ / /
* | | Merge pull request #2978 from ethereum/infer-locationchriseth2017-09-271-1/+1
|\ \ \
| * | | Report correct location for inferred types in packed encodingAlex Beregszaszi2017-09-271-1/+1
| | |/ | |/|
* / | Ensure that address types are always declared as 160bitAlex Beregszaszi2017-09-275-14/+14
|/ /
* | Merge pull request #2934 from ethereum/fallthroughchriseth2017-09-262-53/+56
|\ \ | |/ |/|
| * Simplify switch statements by refactoring internal break statementsAlex Beregszaszi2017-09-252-24/+24
| * Avoid switch fallthrough in ExpressionCompilerAlex Beregszaszi2017-09-251-26/+32
| * Avoid switch fallthrough in CompilerUtilsAlex Beregszaszi2017-09-251-6/+3
* | Better error message for unexpected trailing comma in parameter listswadeAlexC2017-09-251-0/+2
|/
* More verbose errors for generated assembly.chriseth2017-09-221-2/+18
* Merge pull request #2902 from ethereum/warn-obsoletechriseth2017-09-211-0/+8
|\
| * Warn about obsolete sha3/suicide callsAlex Beregszaszi2017-09-191-0/+8
* | Limit parser recursion depth further (needed by increased assembly data struc...Alex Beregszaszi2017-09-201-1/+1
* | Support multiple assignment in inline assemblyAlex Beregszaszi2017-09-204-6/+56
* | Mark functions staticAlex Beregszaszi2017-09-204-14/+14
* | Mark constructors explicitAlex Beregszaszi2017-09-201-1/+1
* | Ensure parameter names match between headers and implementationAlex Beregszaszi2017-09-205-14/+14
|/
* Allow constant byte arrays.chriseth2017-09-191-1/+1
* Merge pull request #2910 from ethereum/fallback-restrict-externalchriseth2017-09-181-0/+5
|\
| * Force fallback to be external (experimental 0.5.0 change)Alex Beregszaszi2017-09-181-0/+5
* | Check for interface types of members and cache recursion check.chriseth2017-09-162-21/+48
* | Use "tuple" for struct types in ABI JSON.chriseth2017-09-161-1/+1
* | Implement struct encoder.chriseth2017-09-165-8/+141
* | Fix tests.chriseth2017-09-162-2/+2
* | Structure type json using "components".chriseth2017-09-161-8/+8
* | Fix interface type conversion internal to structs.chriseth2017-09-162-2/+8
* | Function signatures containing structs.chriseth2017-09-163-39/+84
* | Update tests and error messages.chriseth2017-09-161-1/+1
* | Check for recursive structs.chriseth2017-09-163-4/+33
* | Allow structs as part of function interfaces.chriseth2017-09-163-10/+54
|/
* Move ABI encoder into its own function.chriseth2017-09-165-66/+82
* Named assembly labels.chriseth2017-09-165-18/+24
* Merge pull request #2904 from ethereum/viewPure5Alex Beregszaszi2017-09-152-11/+24
|\
| * Enforce view with error for experimental 0.5.0.chriseth2017-09-142-11/+24
* | Warn if no visibility is specified on contract functions.Alex Beregszaszi2017-09-143-1/+15
|/
* Add experimental feature 'v0.5.0'Alex Beregszaszi2017-09-141-0/+2
* Merge pull request #2473 from ethereum/functiontype-sigAlex Beregszaszi2017-09-142-1/+13
|\
| * Rename .sig to .selector on function typesAlex Beregszaszi2017-09-132-2/+2
| * Add sig member on function typeAlex Beregszaszi2017-09-132-1/+13
* | Merge pull request #2848 from ethereum/checkViewPurechriseth2017-09-1410-4/+414
|\ \
| * | Minor changes from review.chriseth2017-09-131-9/+3
| * | Rename to invalidInPureFunctionschriseth2017-09-131-1/+1
| * | Allow constant variables in pure functions.chriseth2017-09-061-1/+1
| * | Rename and add anonymous namespace.chriseth2017-09-061-1/+4
| * | Fix testschriseth2017-09-061-5/+8
| * | Tone down error message.chriseth2017-09-061-2/+2
| * | Modifier invocation can be base constructor callchriseth2017-09-061-5/+7
| * | Analyze assembly.chriseth2017-09-062-11/+88
| * | Do not report on overriding function and only warn for view.chriseth2017-09-061-12/+19
| * | Store super function.chriseth2017-09-064-0/+8
| * | Remove previous warning about pureness not being enforced.chriseth2017-09-061-2/+0
| * | View-pure checker.chriseth2017-09-065-2/+320
* | | Limit each duplicate declaration error to 32 referencesAlex Beregszaszi2017-09-131-2/+20
| |/ |/|
* | Merge pull request #2852 from ssuman/developchriseth2017-09-121-1/+10
|\ \
| * | Display helpful warning for unused function arguments/return parametersSuman2017-09-121-1/+10
* | | Do not report overload conflicts for every line excessivelyAlex Beregszaszi2017-09-121-1/+5
|/ /
* | Merge pull request #2888 from ethereum/same-declaration-errorAlex Beregszaszi2017-09-121-10/+12
|\ \
| * | Use secondary source location as a vector in same declaration errorsAlex Beregszaszi2017-09-121-10/+12
* | | Merge pull request #2887 from ethereum/missing-functions-listchriseth2017-09-121-5/+7
|\ \ \
| * | | Show each unimplemented function in secondary source locationAlex Beregszaszi2017-09-121-5/+7
| |/ /
* | | Merge pull request #2853 from ethereum/cleanup-asm-streamchriseth2017-09-126-21/+38
|\ \ \ | |/ / |/| |
| * | Introduce assemblyStringAlex Beregszaszi2017-09-116-17/+12
| * | Do not return the stream in asssemblyStreamAlex Beregszaszi2017-09-114-8/+7
| * | Split out the JSON functionality from assembly.stream()Alex Beregszaszi2017-09-116-14/+37
| |/
* / Do not show the same error multiple times for eventsAlex Beregszaszi2017-09-121-4/+4
|/
* Change array too large error message as it is valid for non-calldata tooAlex Beregszaszi2017-09-061-1/+1
* Merge pull request #2860 from ethereum/noparamsfordefaultedAlex Beregszaszi2017-08-311-4/+4
|\
| * Remove parameter names for defaulted functions.chriseth2017-08-311-4/+4
* | Use Json::valueToQuotedString directlyAlex Beregszaszi2017-08-291-4/+2
* | Remove escape function.chriseth2017-08-291-3/+11
|/
* Merge pull request #2847 from ethereum/codegen-docsAlex Beregszaszi2017-08-293-1/+25
|\
| * Document more of the codegen featuresAlex Beregszaszi2017-08-293-1/+25
* | Merge pull request #2833 from ethereum/statemutability-builtinschriseth2017-08-295-22/+24
|\ \
| * | Swap declaration/statemutability in FunctionType constructorAlex Beregszaszi2017-08-294-11/+8
| * | Mark all built in functions with appropriate statemutabilityAlex Beregszaszi2017-08-293-12/+17
* | | Move all file specific globals to anonymous namespaceAlex Beregszaszi2017-08-292-0/+10
| |/ |/|
* | Include all overloaded events in ABIAlex Beregszaszi2017-08-291-2/+10
|/
* Mark event non-payable and not viewAlex Beregszaszi2017-08-281-2/+6
* Merge pull request #2835 from ethereum/compilerstack-docsAlex Beregszaszi2017-08-281-5/+7
|\
| * Reorder some methods in CompilerStack for readabilityAlex Beregszaszi2017-08-281-5/+7
* | Merge pull request #2834 from ethereum/fixTypeNameParsingAlex Beregszaszi2017-08-281-1/+4
|\ \ | |/ |/|
| * Crash fix, parseTypeName can return null.chriseth2017-08-281-1/+4
* | Merge pull request #2825 from ethereum/contract-unused-natspecchriseth2017-08-283-33/+0
|\ \ | |/ |/|
| * Removed unused natspec members of ContractDefinitionAlex Beregszaszi2017-08-263-33/+0
* | Merge pull request #2821 from ethereum/errorreporter-copyAlex Beregszaszi2017-08-261-0/+3
|\ \ | |/ |/|
| * Add copy constructor to ErrorReporter (since it has assignment operator)Alex Beregszaszi2017-08-251-0/+3
* | Merge pull request #2819 from ethereum/compilerstack-typecheckchriseth2017-08-261-19/+5
|\ \
| * | Do not create a new TypeChecker instance for every contractAlex Beregszaszi2017-08-251-3/+1
| * | Attach natspec before type checkingAlex Beregszaszi2017-08-251-6/+4
| * | Remove duplicate work from CompilerStack.analyze()Alex Beregszaszi2017-08-251-10/+0
* | | Merge pull request #2820 from ethereum/fallthroughchriseth2017-08-264-6/+8
|\ \ \
| * | | Move the break in switch for readabilityAlex Beregszaszi2017-08-251-3/+3
| * | | Mark to places fall-throughAlex Beregszaszi2017-08-252-0/+2
| * | | Remove fallthrough from ArrayUtilsAlex Beregszaszi2017-08-251-3/+3
| | |/ | |/|
* | | Merge pull request #2813 from ethereum/tightpack-warnAlex Beregszaszi2017-08-251-0/+22
|\ \ \ | |/ / |/| |
| * | Warn on using literals in tight packingAlex Beregszaszi2017-08-251-0/+22
* | | Merge pull request #2815 from ethereum/parser-fallthroughAlex Beregszaszi2017-08-252-9/+14
|\ \ \ | |_|/ |/| |
| * | Remove two other fall-through cases in ParserAlex Beregszaszi2017-08-252-3/+5
| * | Remove fallthrough from literal parsingAlex Beregszaszi2017-08-251-6/+9
| |/
* / Cleanup of Common.hchriseth2017-08-251-0/+1
|/
* Remove unused statements from the Natspec headersAlex Beregszaszi2017-08-252-28/+1
* Reorder ABI for readabilityAlex Beregszaszi2017-08-251-9/+10
* Rename statemutability to stateMutability in ABI/ASTAlex Beregszaszi2017-08-242-5/+5
* Consider pure as constant for the AST JSON (to aid static analyzers)Alex Beregszaszi2017-08-241-2/+2
* Introduce pure specifier on functionsAlex Beregszaszi2017-08-245-4/+10
* Merge pull request #2770 from ethereum/recursionInAsmchriseth2017-08-245-39/+44
|\
| * Reduce max recursion depth.chriseth2017-08-221-1/+1
| * Check recursion depth in assembly parser.chriseth2017-08-225-39/+44
* | Review changes.chriseth2017-08-235-24/+24
* | Use experimental feature pragma for SMT checker.chriseth2017-08-232-6/+4
* | Partial support for if statements.chriseth2017-08-234-16/+128
* | Format numbers more nicely.chriseth2017-08-231-11/+25
* | Refactor Z3 read callback.chriseth2017-08-236-133/+46
* | Rename read file callback.chriseth2017-08-238-20/+23
* | Introduce native Z3 support.chriseth2017-08-232-0/+244
* | Insert abstraction layer.chriseth2017-08-235-148/+225
* | Prepare build system for Z3.chriseth2017-08-232-1/+18
* | Cleanup.chriseth2017-08-239-716/+686
* | Use file to communicate with z3.chriseth2017-08-233-14/+274