aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity
Commit message (Collapse)AuthorAgeFilesLines
* Split warning for multi arguments for hash functionsAlex Beregszaszi2018-05-161-10/+12
|
* Warn/enforce single bytes argument for certain builtins (hashing functions).chriseth2018-05-162-0/+43
| | | | | In 0.5.0 mode, only accept a single bytes argument for ``.call``, ``keccak256`` and others and do not pad when encoding.
* Add assert about source location.chriseth2018-05-161-0/+1
|
* Parse multi variable declaration statement.chriseth2018-05-161-8/+75
|
* Merge pull request #4139 from ethereum/abiEncodeIsPurechriseth2018-05-153-3/+10
|\ | | | | ABI encoding functions are pure and should be usable in constants.
| * ABI encoding functions are pure and should be usable in constants.chriseth2018-05-153-3/+10
| |
* | Merge pull request #3947 from ethereum/smt_storagechriseth2018-05-153-5/+44
|\ \ | |/ |/| [SMTChecker] Support to integer and Bool storage vars
| * [SMTChecker] Declaring all state vars before any function is visitedLeonardo Alt2018-05-152-2/+15
| |
| * [SMTChecker] Support to integer and Bool storage varsLeonardo Alt2018-05-153-5/+31
| |
* | Merge pull request #4062 from ethereum/revert-variablechriseth2018-05-152-1/+4
|\ \ | |/ |/| Fix revert with reason coming from a string variable
| * Fix revert with reason coming from a string variableAlex Beregszaszi2018-05-092-1/+4
| |
* | Add control flow analyzer and test for uninitialized storage returns.Daniel Kirchner2018-05-153-0/+217
| |
* | Add control flow graph.Daniel Kirchner2018-05-155-0/+806
| |
* | Fix link error when using boost shared librarymingchuan2018-05-111-1/+1
| |
* | Assert that mandatory fields in the AST are present in AsmAnalysisAlex Beregszaszi2018-05-101-0/+10
|/
* Merge pull request #4047 from ethereum/refactorToMultiAlex Beregszaszi2018-05-092-38/+74
|\ | | | | Refactor to allow implementing multi variable declarations.
| * Assert integrity of empty IndexAccessPath structure.chriseth2018-05-092-1/+11
| |
| * Further refactor.chriseth2018-05-092-17/+43
| |
| * Refactor expression parser.chriseth2018-05-092-21/+21
| |
* | Use the entire token as source location for parser errors.Daniel Kirchner2018-05-091-2/+2
|/
* Merge pull request #4054 from ethereum/token-nameschriseth2018-05-094-33/+33
|\ | | | | Improve parser error messages
| * Have more uniform parser errorsAlex Beregszaszi2018-05-042-5/+5
| |
| * More user friendly output in case of Identifier and Token keywordsAlex Beregszaszi2018-05-041-16/+17
| |
| * Remove code duplication in expectTokenAlex Beregszaszi2018-05-041-23/+11
| |
| * Introduce Token::friendlyName() helperAlex Beregszaszi2018-05-042-5/+16
| |
| * Display nicer error messages in the parser (display tokens and not internal ↵Alex Beregszaszi2018-05-041-11/+11
| | | | | | | | names)
* | Deprecate wildcard assignments.chriseth2018-05-081-8/+49
| |
* | fixed grammar in error in CompilerUtils.cpp line 399, 'less variables.' ↵njwest2018-05-071-3/+3
| | | | | | | | should be 'fewer variables.'
* | Merge pull request #4063 from ethereum/emit-non-eventchriseth2018-05-041-0/+1
|\ \ | |/ |/| Show proper error when trying to emit a non-event
| * Show proper error when trying to emit a non-eventAlex Beregszaszi2018-05-041-0/+1
| |
* | Merge pull request #4059 from ethereum/parser-simplifychriseth2018-05-044-38/+8
|\ \ | | | | | | Simplify the parser expectations
| * | Simplify expectIdentifierToken by using expectTokenAlex Beregszaszi2018-05-044-23/+6
| | |
| * | Remove useless helper expectAssignmentOperator in parserAlex Beregszaszi2018-05-042-15/+2
| |/
* | Change bytes to unsigned in FixedBytesTypedaniel2018-05-043-8/+7
| |
* | Change numBits to unsigned IntegerTypeAlex Beregszaszi2018-05-033-9/+10
| |
* | Change totalBits and fractionalDigits to unsigned in FixedPointTypeAlex Beregszaszi2018-05-032-8/+8
|/
* Merge pull request #3797 from ethereum/shift-constantinoplechriseth2018-05-028-52/+123
|\ | | | | Use native shift instructions on Constantinople
| * Support shifts in gas estimatorAlex Beregszaszi2018-05-011-5/+14
| |
| * Removed signed shift right from the utilities.chriseth2018-05-016-24/+24
| |
| * Do not use SAR instead of SDIV in shifts because it rounds differentlyAlex Beregszaszi2018-05-013-7/+10
| |
| * Use native shift instructions in ABIFunctions on ConstantinopleAlex Beregszaszi2018-05-013-26/+70
| |
| * Use native shift instructions on ConstantinopleAlex Beregszaszi2018-05-012-4/+19
| |
* | Revert "BREAKING: Bool variables should not allow arithmetic comparison"chriseth2018-05-022-2/+6
| |
* | Merge pull request #4003 from ethereum/bool_vars_comparisonchriseth2018-05-022-6/+2
|\ \ | | | | | | BREAKING: Bool variables should not allow arithmetic comparison
| * | Bool variables should not allow arithmetic comparisonLeonardo Alt2018-04-272-6/+2
| | |
* | | Add virtual destructors on base classes.Alexander Arlt2018-05-025-0/+9
| |/ |/|
* | Merge pull request #3996 from ethereum/refactorParserchriseth2018-05-012-66/+73
|\ \ | | | | | | Refactor parser.
| * | Refactor parser.chriseth2018-04-262-66/+73
| |/
* | Merge pull request #4018 from ethereum/disable-bytes0chriseth2018-05-012-13/+4
|\ \ | | | | | | Disable FixedBytesType(0) aka bytes0
| * | Remove unused function smallestTypeForLiteralAlex Beregszaszi2018-04-302-11/+0
| | |
| * | Disable FixedBytesType(0) aka bytes0Alex Beregszaszi2018-04-301-2/+4
| |/
* | Merge pull request #3958 from meowingtwurtle/fixedPointTypeschriseth2018-04-302-19/+12
|\ \ | |/ |/| Types class changes for fixed points
| * Remove category check in FixedPointType:binaryOperatorResult as commonType ↵Alex Beregszaszi2018-04-211-11/+0
| | | | | | | | handles the same
| * Types changes for fixed pointsJason Cobb2018-04-212-13/+17
| |
* | Add virtual destructor in LValue class.Alexander Arlt2018-04-251-0/+1
| |
* | Merge pull request #3981 from ethereum/years-suffixchriseth2018-04-241-0/+16
|\ \ | | | | | | The "year" denomination is deprecated
| * | The "year" denomination is deprecatedAlex Beregszaszi2018-04-231-0/+16
| | |
* | | Merge pull request #3970 from elopio/test/docstring-tag-endAlex Beregszaszi2018-04-241-1/+1
|\ \ \ | | | | | | | | docstring: add missing space
| * | | docstring: add missing spaceLeo Arias2018-04-241-1/+1
| | |/ | |/|
* | | Merge pull request #3976 from ethereum/emptyTupleComponentchriseth2018-04-231-0/+13
|\ \ \ | |_|/ |/| | Empty tuple components should not be possible
| * | Treats inline array as an error.Erik Kundt2018-04-231-0/+2
| | |
| * | Turns it into warning (error for 0.5.0) and adds Changelog entry.Erik Kundt2018-04-231-1/+8
| | |
| * | Prevents null type from being used in tuple.Erik Kundt2018-04-221-0/+4
| |/
* / Turn deprecated warnings for sha3/suicide into errors (experimental 0.5.0)Alex Beregszaszi2018-04-211-2/+10
|/
* Make literals an error for tight packing (experimental 0.5.0)Alex Beregszaszi2018-04-201-8/+18
|
* Merge pull request #3943 from ethereum/smt_remove_branch_warningchriseth2018-04-202-10/+10
|\ | | | | [SMTChecker] Remove 'information is erase' message for if-else
| * [SMTChecker] Remove 'information is erase' message for if-elseLeonardo Alt2018-04-192-10/+10
| |
* | Merge pull request #3941 from ethereum/bytes-contractchriseth2018-04-191-1/+0
|\ \ | | | | | | Disallow explicit conversion of bytesXX to contract
| * | Disallow explicit conversion of bytesXX to contractAlex Beregszaszi2018-04-191-1/+0
| |/
* / Improve error message for failed member lookup.chriseth2018-04-191-11/+16
|/
* Merge pull request #3923 from ethereum/warnConstructorAlex Beregszaszi2018-04-191-1/+6
|\ | | | | Warn about functions named "constructor".
| * Warn about functions named "constructor".chriseth2018-04-191-1/+6
| |
* | Merge pull request #3922 from ethereum/smt_sol_unimplementedassertAlex Beregszaszi2018-04-191-2/+2
|\ \ | |/ |/| [SMTChecker] Using solUnimplementedAssert instead of solAssert
| * [SMTChecker] Using solUnimplementedAssert instead of solAssert when applicableLeonardo Alt2018-04-181-2/+2
| |
* | Fix name clashes between constructor and fallback function.chriseth2018-04-181-47/+45
|/
* [SMTChecker] Integration with CVC4Leonardo Alt2018-04-177-22/+310
|
* Merge pull request #3868 from ethereum/bytescleanupchriseth2018-04-162-12/+10
|\ | | | | Properly force-clean for shortening bytesXX conversions.
| * Remove redundant cleanup for abi.encode.Alex Beregszaszi2018-04-161-2/+1
| |
| * Properly force-clean for shortening bytesXX conversions.chriseth2018-04-161-10/+9
| |
* | Merge pull request #3793 from ethereum/rationalNumberLimitchriseth2018-04-161-20/+160
|\ \ | |/ |/| Rational number limit
| * Limits rational numbers to 4096 bits.Erik Kundt2018-04-161-20/+160
| |
* | Merge pull request #3880 from ethereum/addressMemberDocAndWarnchriseth2018-04-161-1/+2
|\ \ | | | | | | Improve documentation and warning about accessing contract members in…
| * | Improve documentation and warning about accessing contract members inherited ↵Daniel Kirchner2018-04-141-1/+2
| |/ | | | | | | from address.
* | Merge pull request #3875 from ethereum/constructorSelfRefchriseth2018-04-141-4/+26
|\ \ | |/ |/| Stricter check for "this" in constructor.
| * Stricter check for member access to "this" in constructor.Daniel Kirchner2018-04-131-4/+26
| |
* | Uses short string representation of TypePointerErik Kundt2018-04-132-9/+9
| |
* | Merge pull request #3364 from ethereum/revertWithReasonchriseth2018-04-1312-27/+107
|\ \ | | | | | | Revert with reason
| * | Use error signature for revert data.chriseth2018-04-123-20/+24
| | |
| * | Only forward returndata if EVM version supports it.chriseth2018-04-122-1/+3
| | |
| * | Bubble up error messages.chriseth2018-04-125-11/+26
| | |
| * | Allow error string for ``require``.chriseth2018-04-122-0/+27
| | |
| * | Code generator for revert with reason string.chriseth2018-04-121-1/+18
| | |
| * | Register overload for ``revert()`` that can receive a reason string.chriseth2018-04-122-1/+4
| | |
| * | Allow function overloads involving MagicVariableDeclarations.chriseth2018-04-124-7/+18
| | |
| * | Use FunctionTypePointer (adds ``const``).chriseth2018-04-122-7/+8
| |/
* | Merge pull request #2980 from ethereum/abi-apichriseth2018-04-136-14/+195
|\ \ | | | | | | Add abi.encode and abi.encodePacked
| * | Allow struct encoding with new encoder.chriseth2018-04-121-7/+18
| | |
| * | Check partial function parameters if rest is arbitrary.chriseth2018-04-121-3/+14
| | |
| * | Add abi.encode, abi.encodePacked, abi.encodeWithSelector and ↵Alex Beregszaszi2018-04-125-4/+163
| | | | | | | | | | | | abi.encodeWithSignature.
* | | Fix internal compiler error when parsing ``var`` declaration without identifier.Daniel Kirchner2018-04-121-2/+4
| |/ |/|
* | Merge pull request #3848 from ethereum/constantDivisionByZerochriseth2018-04-123-0/+47
|\ \ | |/ |/| Error on invalid arithmetic with constant expressions.
| * Error on invalid arithmetic with constant expressions.Daniel Kirchner2018-04-123-0/+47
| |
* | Properly cope with constructor headers.chriseth2018-04-121-3/+6
| |
* | Warn if modifiers are applied to functions without implementation.chriseth2018-04-122-4/+11
| |
* | Fix state variable parsing.chriseth2018-04-121-0/+8
| |
* | Merge pull request #3863 from ethereum/fixGasEstimationchriseth2018-04-121-1/+8
|\ \ | |/ |/| Correctly ignore costs of fallback for other functions.
| * Correctly ignore costs of fallback for other functions.chriseth2018-04-121-1/+8
| |
* | Fix ConstantEvaluator to correctly handle single element tuples.Daniel Kirchner2018-04-122-0/+7
|/
* Merge pull request #3309 from ethereum/limit-errorschriseth2018-04-114-78/+123
|\ | | | | Limit the number of errors output in a single run to 256
| * Do not abort excessive warnings, just ignore them.Alex Beregszaszi2018-04-062-15/+38
| |
| * Ignore warnings when limited errors to 256Alex Beregszaszi2018-04-061-3/+10
| |
| * reindentAlex Beregszaszi2018-04-061-70/+69
| |
| * Catch FatalError in CompilerStack::analysis to cover all the analysis testsAlex Beregszaszi2018-04-062-11/+11
| |
| * Limit the number of errors output in a single run to 256Alex Beregszaszi2018-04-062-0/+16
| |
* | Fix bug in typechecking when comparing rational literalsJason Cobb2018-04-111-3/+3
| |
* | Error when using no parentheses in modifier-style constructor calls.Daniel Kirchner2018-04-106-18/+45
| |
* | Merge pull request #3821 from ethereum/warn-constructor-overridechriseth2018-04-105-50/+91
|\ \ | | | | | | Warn constructor override
| * | Use the most derived contract as main location in case of diamond inheritance.Daniel Kirchner2018-04-091-3/+18
| | |
| * | Move constructor argument override check to TypeChecker and reuse ↵Daniel Kirchner2018-04-097-93/+76
| | | | | | | | | | | | annotations in ContractCompiler.
| * | Allow duplicated constructor calls, if no arguments; support for multiple ↵Daniel Kirchner2018-04-091-20/+30
| | | | | | | | | | | | | | | | | | inheritance; backwards compatibility. # tmp
| * | Error on duplicated super constructor callsFederico Bond2018-04-092-0/+33
| | |
* | | Fixed typoshydai2018-04-101-6/+6
|/ /
* / Static Analyzer: Fix non-deterministic order of unused variable warnings.Daniel Kirchner2018-04-072-8/+10
|/
* Merge pull request #3831 from ethereum/memory-suffixchriseth2018-04-053-3/+15
|\ | | | | Allow ``memory`` suffix for internal elementary type parsing.
| * Allow ``memory`` suffix for internal elementary type parsing.chriseth2018-04-053-3/+15
| |
* | Merge pull request #3829 from ethereum/smt_remove_ufchriseth2018-04-056-10/+20
|\ \ | |/ |/| [SMTChecker] Remove usage of UFs to access SSA vars
| * [SMTChecker] Removing usage of UFs to access SSA indicesLeonardo Alt2018-04-056-10/+20
| |
* | Merge pull request #3824 from ethereum/baseArgumentsEmptyParenthesisDaniel Kirchner2018-04-056-35/+56
|\ \ | |/ |/| Error when using empty parentheses for base class constructors that r…
| * Error when using empty parenthesis for base class constructors that require ↵Daniel Kirchner2018-04-056-35/+56
| | | | | | | | arguments.
* | Merge pull request #3745 from ethereum/fixRecursionAlex Beregszaszi2018-04-053-30/+28
|\ \ | | | | | | Fix invalid recursion errors for structs
| * | Generalize cycle detection.chriseth2018-04-033-35/+28
| | |
| * | Fix detection of recursive structs.chriseth2018-04-031-0/+5
| | |
* | | More specific push implementation.chriseth2018-04-043-13/+71
| | |
* | | Create empty dynamic memory arrays more efficiently.chriseth2018-04-042-8/+29
| |/ |/|
* | Set isConstructor to false unconditionally and update to true later for ↵Daniel Kirchner2018-04-041-6/+4
| | | | | | | | constructors.
* | Set header.isConstructor for old style constructors in parseFunctionHeader ↵Daniel Kirchner2018-04-042-6/+16
| | | | | | | | as well.
* | Constructors are defined using the ``constructor`` keyword.Daniel Kirchner2018-04-044-8/+39
| |
* | Merge pull request #3693 from ethereum/optimizeMLOADAlex Beregszaszi2018-04-033-25/+45
|\ \ | |/ |/| Optimize across MLOAD if MSIZE is not used.
| * Optimize across MLOAD if MSIZE is not used.chriseth2018-04-033-25/+45
| |
* | Merge pull request #3699 from ethereum/interfaceExternalVisibilityAlex Beregszaszi2018-04-032-12/+13
|\ \ | | | | | | Defaults to external visibility for interfaces.
| * | Makes visibility warning more concise.Erik Kundt2018-04-031-2/+4
| | |
| * | Defaults to external visibility for interfaces.bitshift2018-04-032-12/+11
| | |
* | | Fix: Treat empty base constructor argument list as not provided.chriseth2018-04-031-3/+5
| |/ |/|
* | Set default fixed point decimal places to 18Jason Cobb2018-03-311-2/+2
| |
* | Merge pull request #3790 from ethereum/empty-structschriseth2018-03-302-0/+16
|\ \ | | | | | | Disallow empty structs
| * | Still allow empty structs for non-0.5.0 modeAlex Beregszaszi2018-03-271-1/+8
| | |
| * | Disallow empty structsAlex Beregszaszi2018-03-272-0/+9
| | |
* | | Prevent encoding of weird types and support packed encoding of external ↵chriseth2018-03-294-4/+21
| |/ |/| | | | | function types.
* | Merge pull request #3775 from federicobond/improve-error-fractional-shiftchriseth2018-03-281-1/+1
|\ \ | |/ |/| Improve error message when attempting to shift by fractional number
| * Improve error message when trying to shift by fractional numberFederico Bond2018-03-221-1/+1
| |
* | Merge pull request #3681 from ethereum/interface-externalchriseth2018-03-273-0/+18
|\ \ | | | | | | Allow overriding external functions in interfaces with public in a child
| * | Introduce inContractKind helper on FunctionDefinitionAlex Beregszaszi2018-03-263-11/+14
| | |
| * | Allow overriding external functions in interfaces with public in an ↵Alex Beregszaszi2018-03-261-0/+15
| |/ | | | | | | implementing contract
* | Merge pull request #3686 from ethereum/doNotIncludeItnernalchriseth2018-03-273-6/+28
|\ \ | | | | | | Do not include internal functions only used by constructor
| * | Add runtimeOnly option to pushCombinedFunctionEntryLabelAlex Beregszaszi2018-03-273-8/+8
| | |
| * | Use shortcut for internal function calls to avoid runtime reference.chriseth2018-03-271-1/+23
| |/
* | Changes deprecation and adjusts tests.bitshift2018-03-272-20/+24
| |
* | Moves blockhash function to global level.bitshift2018-03-272-9/+21
|/
* Decode dynamic data.chriseth2018-03-214-18/+48
|
* Move dynamic type removal out of the type system.chriseth2018-03-214-18/+37
|
* Simple size check for old ABI decoder.chriseth2018-03-213-32/+97
|
* Move the old ABI decoder code.chriseth2018-03-204-105/+106
|
* Merge branch 'develop' into externalFunctionsInLibrarieschriseth2018-03-155-12/+22
|\
| * Merge pull request #3725 from ethereum/blockhashNoCallchriseth2018-03-151-0/+3
| |\ | | | | | | Allow ``block.blockhash`` without it being called.
| | * Allow ``block.blockhash`` without being called.chriseth2018-03-141-0/+3
| | |
| * | Merge pull request #3722 from ethereum/fixModsAlex Beregszaszi2018-03-153-5/+16
| |\ \ | | | | | | | | Fix modifier lookup in libraries.
| | * | Bugfix in virtual lookup for modifiers in libraries.chriseth2018-03-133-5/+16
| | |/
| * / DocStringParser: Fix error message for empty parameter description.Daniel Kirchner2018-03-141-7/+3
| |/
* / Make external library functions accessible.chriseth2018-03-142-2/+3
|/
* [SMTChecker_Bool] Fix PR review comments: method renaming and solAssertLeonardo Alt2018-03-133-16/+17
|
* [SMTChecker_Bool] Fix PR comments; Add support to gt, ge, lt, le. and tests.Leonardo Alt2018-03-1310-41/+85
|
* [SMTChecker] Support to Bool variablesLeonardo Alt2018-03-136-8/+107
|
* Support constantinople in evm-versionAlex Beregszaszi2018-03-131-1/+1
|
* Properly skip cleanup if only enlarging storage array.chriseth2018-03-091-2/+2
|
* Merge pull request #3611 from ethereum/warn-using-address-overloadAlex Beregszaszi2018-03-071-0/+14
|\ | | | | Warn if using address overloads on contracts
| * Assert that address members are not present on contract types in 0.5.0.chriseth2018-03-051-0/+4
| |
| * Warn if using address overloads on contractsAlex Beregszaszi2018-03-051-0/+10
| |
* | Merge pull request #3664 from ethereum/literalsHexUnitSmallFixchriseth2018-03-071-2/+2
|\ \ | | | | | | Use double quotes for suggestion about hex literals and denominations.
| * | Use double quotes for suggestion about hex literals and denominations.Daniel Kirchner2018-03-071-2/+2
| | |
* | | Merge pull request #3527 from ethereum/warnLooseAsmAlex Beregszaszi2018-03-076-10/+63
|\ \ \ | | | | | | | | Warn about using loose assembly.
| * | | Warn about using loose inline assembly features as experimental 0.5.0 feature.chriseth2018-03-076-10/+63
| |/ /
* | | Merge pull request #3663 from ethereum/gasleftEmscriptenchriseth2018-03-071-0/+1
|\ \ \ | |/ / |/| | Add gasleft to FunctionType::richIdentifier().
| * | Add gasleft to FunctionType::richIdentifier().Daniel Kirchner2018-03-071-0/+1
| | |
* | | Merge pull request #2966 from ethereum/useStaticCallAlex Beregszaszi2018-03-072-2/+11
|\ \ \ | |/ / |/| | Use STATICCALL for pure function calls.
| * | Use STATICCALL for pure function calls if EVM version supports it and 0.5.0 ↵chriseth2018-03-062-2/+11
| | | | | | | | | | | | is activated.
* | | Merge pull request #3549 from ethereum/fixmultidimAlex Beregszaszi2018-03-062-6/+26
|\ \ \ | |/ / |/| | Properly detect which array and struct types are unsupported by the old ABI encoder.
| * | Fix multi-dimensional arrays in the ABI.chriseth2018-03-012-6/+26
| | |
* | | Merge pull request #3652 from ethereum/gasleft_v2chriseth2018-03-063-16/+22
|\ \ \ | | | | | | | | Use StaticAnalyzer to deprecate msg.gas instead of conditionally remo…
| * | | Use StaticAnalyzer to deprecate msg.gas instead of conditionally removing it ↵Daniel Kirchner2018-03-063-16/+22
| | | | | | | | | | | | | | | | in MagicType.
* | | | Merge pull request #3640 from ↵chriseth2018-03-061-2/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | AnthonyBroadCrawford/spanning-multiline-message-fix moved spanning multi lines message to appear on some lane vs new line…
| * | | | Improved messaging when an error spans multiple lines and updated change log ↵Anthony Broad-Crawford2018-03-061-2/+2
| | | | | | | | | | | | | | | | | | | | file.
* | | | | Merge pull request #3599 from ethereum/sendAllGasOnByzantiumchriseth2018-03-061-10/+13
|\ \ \ \ \ | | | | | | | | | | | | Send all gas on byzantium
| * | | | | Do not retain any gas in external calls (except if EVM version is set to ↵chriseth2018-03-061-10/+13
| | | | | | | | | | | | | | | | | | | | | | | | homestead).
* | | | | | Merge pull request #3643 from ethereum/gasleftchriseth2018-03-064-5/+21
|\ \ \ \ \ \ | |/ / / / / |/| | / / / | | |/ / / | |/| | | Move msg.gas to global function gasleft(). Closes #2971.
| * | | | Style improvements.Daniel Kirchner2018-03-062-4/+7
| | | | |
| * | | | Move msg.gas to global function gasleft(). Closes #2971.Daniel Kirchner2018-03-054-6/+19
| |/ / /
* | | | Merge pull request #3600 from ethereum/version050IsAnalysisOnlychriseth2018-03-061-0/+1
|\ \ \ \ | |_|_|/ |/| | | Do not warn about 0.5.0 experimental pragma.
| * | | Do not warn about 0.5.0 experimental pragma.chriseth2018-03-051-0/+1
| | | |
* | | | Merge pull request #3642 from leonardoalt/fix_z3-46chriseth2018-03-051-0/+1
|\ \ \ \ | |/ / / |/| | | Add z3 performance option
| * | | This z3 option is necessary for good solving performanceLeonardo Alt2018-03-041-0/+1
| |/ /
* | | Merge pull request #3569 from ethereum/evmVersionchriseth2018-03-0519-66/+231
|\ \ \ | |/ / |/| | EVM version
| * | Use EVM version in gas meter and optimizer.chriseth2018-03-057-23/+30
| | |
| * | Only warn for shift instructions if not using constantinopleAlex Beregszaszi2018-03-022-9/+10
| | |
| * | Add constantinople.chriseth2018-03-021-3/+5
| | |
| * | Add TangerineWhistle.chriseth2018-03-021-15/+24
| | |
| * | Provide EVM version to assembly analysis.chriseth2018-03-027-14/+37
| | |
| * | Use EVM version in type checker.chriseth2018-03-022-2/+9
| | |
| * | Provide target EVM version in CompilerContext.chriseth2018-03-024-9/+19
| | |
| * | Store EVM version in settings.chriseth2018-03-021-0/+1
| | |
| * | Add ability to set the target EVM version.chriseth2018-03-024-9/+114
| |/
* | Merge pull request #3628 from ethereum/literalsHexUnitchriseth2018-03-021-0/+17
|\ \ | |/ |/| Deprecate using unit denominations in combination with hex numbers.
| * Suggest expressions of the form '0x1234 * 1 day' instead of hex numbers with ↵Daniel Kirchner2018-03-021-2/+4
| | | | | | | | unit denominations.
| * Deprecate using unit denominations in combination with hex numbers. Closes ↵Daniel Kirchner2018-03-011-0/+15
| | | | | | | | #3574.
* | Merge pull request #3624 from ethereum/jsonio-libraries-hexAlex Beregszaszi2018-03-011-2/+18
|\ \ | | | | | | Ensure that library addresses supplied are of correct length and hex prefixed
| * | Ensure that library addresses supplied are of correct length and hex ↵Alex Beregszaszi2018-03-011-2/+18
| |/ | | | | | | prefixed in JSONIO
* | Fix PR commentsLeonardo Alt2018-03-013-12/+0
| |
* | Fix PR commentsLeonardo Alt2018-03-016-23/+37
| |
* | Supported types listed in SSAVariableLeonardo Alt2018-03-014-3/+20
| |
* | Integer min and max values placed under SymbolicIntVar instead of SMTCheckerLeonardo Alt2018-03-014-19/+9
| |
* | [SMTChecker] A little refactoring on SSA varsLeonardo Alt2018-03-018-54/+395
|/
* Merge pull request #3617 from ethereum/jsonio-librarieschriseth2018-03-011-3/+19
|\ | | | | Add more comprehensive tests and checks for libraries in JSONIO
| * Properly validate invalid hex characters in JSONIO librariesAlex Beregszaszi2018-02-281-2/+14
| |
| * Add more comprehensive tests and checks for libraries in JSONIOAlex Beregszaszi2018-02-281-1/+5
| |
* | Merge pull request #3613 from ethereum/require-visibilitychriseth2018-02-281-6/+13
|\ \ | |/ |/| Issue error if no visibility is specified (on 0.5.0)
| * Issue error if no visibility is specified (on 0.5.0)Alex Beregszaszi2018-02-271-6/+13
| |
* | Merge pull request #3476 from ethereum/scopingchriseth2018-02-288-71/+236
|\ \ | |/ |/| C99/C++ scoping rules
| * Only active variables at the point of their declaration.chriseth2018-02-276-30/+84
| |
| * Enable C99-scoping with the 0.5.0-experimental pragma.chriseth2018-02-275-38/+53
| |
| * Blocks and for loops can be scopes.chriseth2018-02-276-6/+78
| |
| * Scopes do not have to be declarations.chriseth2018-02-274-24/+47
| |
| * Make all lookups recursive by default.chriseth2018-02-272-10/+11
| |
* | Remove ROL/ROR as they are not part of EIP145 anymoreAlex Beregszaszi2018-02-271-3/+1
| |
* | Warn on using shift instructionsAlex Beregszaszi2018-02-271-0/+16
|/
* Turn throw into a syntax error for 0.5.0Alex Beregszaszi2018-02-271-4/+12
|
* Merge pull request #3589 from ethereum/identifiersAlex Beregszaszi2018-02-272-42/+63
|\ | | | | Clean up type identifiers
| * Use new escaping helpers for type identifiersAlex Beregszaszi2018-02-272-20/+9
| |
| * Rename Types::identifier to Types::richIdentifierAlex Beregszaszi2018-02-272-35/+41
| |
| * Add helpers escapeIdentifier to TypesAlex Beregszaszi2018-02-272-1/+27
| |
* | Fix: Function types for getters should not have storage pointers.chriseth2018-02-261-1/+4
| |
* | Simplify FunctionType constructors.chriseth2018-02-261-42/+14
|/
* Warn about using events without emit.chriseth2018-02-222-1/+13
|
* Introduce emit statement.chriseth2018-02-2214-2/+120
|
* Do not warn about analysis-only experimental features.chriseth2018-02-221-2/+4
|
* Add assertion for boolean literals in Julia-modeAlex Beregszaszi2018-02-221-0/+5
|
* Raise error on oversized number literals in assemblyAlex Beregszaszi2018-02-221-0/+8
|
* Merge pull request #3554 from ethereum/reuseScannerOrNotchriseth2018-02-215-6/+10
|\ | | | | Expect end of string at end of top-level block for assembly parser.
| * Expect end of string at end of top-level block for assembly parser.chriseth2018-02-215-6/+10
| |
* | Add new JSON API for better abstraction and for supporting strict JSON parsingAlexander Arlt2018-02-211-4/+3
|/
* Fix shadowing for imports with aliases.chriseth2018-02-201-2/+3
|
* Properly warn about the use of constants in inline assembly in connection ↵chriseth2018-02-201-6/+6
| | | | with ``_offset`` and ``_slot``.