aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity
Commit message (Collapse)AuthorAgeFilesLines
* liblangutil: Scanner: remove superfluous sourceName field (it's in ↵Christian Parpart2018-12-013-4/+4
| | | | | | | CharStream already) Also, ParserBase::sourceName() was dead code. Eliminating it should increase test coverage (how sneaky) :-)
* liblangutil: SourceLocation: adds (shared) pointer to underlying CharStream ↵Christian Parpart2018-12-015-13/+13
| | | | | | source, eliminating sourceName Also, adapted affecting code to those changes.
* liblangutil: extends CharStream to know about the respective (file-)name ↵Christian Parpart2018-11-293-4/+4
| | | | (and adapt codebase to it)
* Merge pull request #5525 from ethereum/obsoleteCommentchriseth2018-11-281-6/+1
|\ | | | | Remove obsolete comment.
| * Remove obsolete comment.chriseth2018-11-281-6/+1
| |
* | Use yul parser in assembly stack.chriseth2018-11-272-18/+17
| |
* | Yul objects.chriseth2018-11-272-18/+6
|/
* Merge pull request #5382 from ethereum/libraryMappingPublicchriseth2018-11-272-13/+17
|\ | | | | Allow mapping arguments for public and external library functions.
| * Allow mapping arguments for public and external library functions.Daniel Kirchner2018-11-262-13/+17
| |
* | Properly disallow different return types for interface overloads with ↵chriseth2018-11-261-3/+3
| | | | | | | | different visibilities.
* | Merge pull request #5445 from ethereum/publicExternalOverwritechriseth2018-11-261-8/+10
|\ \ | |/ |/| Allow overwriting external functions (with ``calldata`` arguments) with public functions (with ``memory`` arguments)
| * Use asCallableFunction for definition clashes in the same contract.chriseth2018-11-261-1/+3
| |
| * Use asCallableFunction for external interface clash check.chriseth2018-11-261-2/+2
| |
| * Use callable types for override check.chriseth2018-11-261-4/+4
| |
| * Use asCallableFunction in override check (part 1).chriseth2018-11-261-1/+1
| |
* | Merge pull request #5504 from ethereum/smt_fix_emscriptenchriseth2018-11-261-0/+4
|\ \ | | | | | | [SMTChecker] Fix crash when SMTLib2Interface reports unknow for constant checks
| * | [SMTChecker] Unknown answer for constant condition check should not do anythingLeonardo Alt2018-11-261-0/+4
| | |
* | | Merge pull request #5404 from ethereum/jumpFixeschriseth2018-11-262-2/+8
|\ \ \ | | | | | | | | Annotate jump from calldata decode to function as "jump in".
| * | | Use "in" tag for jumps from unpacker to function.chriseth2018-11-262-2/+8
| | | |
* | | | Fix merge problem in CMake files.chriseth2018-11-261-1/+0
| | | |
* | | | Merge pull request #5493 from ethereum/cmake-no-globbingchriseth2018-11-261-5/+52
|\ \ \ \ | |_|_|/ |/| | | [WIP] CMake: Explicitly state which files to compile instead of relying on globbing
| * | | CMake: Explicitly state which files to compile instead of relying on globbing.Christian Parpart2018-11-261-5/+52
| |/ / | | | | | | | | | | | | Also remove header file lists, as there is no need to add them to add_library() or add_executable(), which should lower maintenance of the cmake files.
* | | Merge pull request #5486 from ethereum/allowExternalPublicOverridechriseth2018-11-261-9/+6
|\ \ \ | | | | | | | | Allow external public override
| * | | Allow visibility change from external to public.chriseth2018-11-261-9/+6
| | | |
* | | | Merge pull request #5494 from ethereum/scanner-error-handlingchriseth2018-11-261-2/+2
|\ \ \ \ | |_|_|/ |/| | | Improved Scanner error diagnostics.
| * | | Change scanner error diagnostics to be non-intrusive to the token API.Christian Parpart2018-11-241-26/+2
| | | | | | | | | | | | | | | | | | | | This also implicitly eliminates the magic-token Token::IllegalHex, and streamlines error diagnostics over a custom enum class.
| * | | adapt to latest code changesLazaridis2018-11-241-0/+24
| | |/ | |/|
* | | Merge pull request #5497 from ethereum/langutil-SourceReferenceFormatterchriseth2018-11-264-221/+2
|\ \ \ | |_|/ |/| | Moving SourceReferenceFormatter into langutil namespace.
| * | Moving SourceReferenceFormatter into langutil namespace.Christian Parpart2018-11-244-221/+2
| |/
* | Merge pull request #5485 from ethereum/refactorCallableFunctionchriseth2018-11-264-33/+33
|\ \ | |/ |/| Refactor callable function
| * Correct style.chriseth2018-11-231-16/+16
| |
| * Use callable function for virtual resolution.chriseth2018-11-221-1/+1
| |
| * Make asCallableFunction to never fail and assert abount parameter size if ↵chriseth2018-11-222-8/+8
| | | | | | | | bound instead.
| * Rename 'asMemberFunction' to widen its purpose.chriseth2018-11-222-9/+9
| |
* | Merge pull request #5491 from ethereum/libyul-as-librarychriseth2018-11-2430-2839/+113
|\ \ | | | | | | Libyul as static library (version 3 ;( )
| * | Isolating libyul library API into its own namespace `yul`.Christian Parpart2018-11-2312-75/+76
| | |
| * | CMake: Isolate libyul into its own static libraryChristian Parpart2018-11-231-3/+3
| | |
| * | Reorder some include files and group <libyul/>'s together (as much as possible)Christian Parpart2018-11-237-16/+15
| | |
| * | Rewrite header paths to adapt to recent `git mv` of libsolidity/inlineasm to ↵Christian Parpart2018-11-238-21/+21
| | | | | | | | | | | | libyul
| * | Moving files from libsolidity/inlineasm/*.{cpp,h} to libyul/.Christian Parpart2018-11-2316-2726/+0
| | |
* | | Testing with smtlib2 interface always thereLeonardo Alt2018-11-231-6/+1
| | |
* | | Error message stays in the SMTCheckerLeonardo Alt2018-11-232-8/+9
| | |
* | | Display better error message in SMTLib2Leonardo Alt2018-11-233-8/+10
| | |
* | | Renaming json fields smtlib2queries and smtlib2responsesLeonardo Alt2018-11-231-2/+2
| | |
* | | Rename function and warn if responses are supplied for Z3.chriseth2018-11-233-7/+13
| | |
* | | Inject SMTLIB2 queries and responses via standard-json-io.chriseth2018-11-2310-20/+77
|/ /
* | Stylechriseth2018-11-231-7/+9
| |
* | Merge pull request #5451 from ethereum/bound_function_testschriseth2018-11-231-0/+3
|\ \ | | | | | | Add assert and tests for bound functions
| * | Add assert and tests for bound functionsLeonardo Alt2018-11-221-0/+3
| | |
* | | [SMTChecker] Refactor setZeroValue and setUnknownValueLeonardo Alt2018-11-226-44/+58
|/ /
* | [SMTChecker] Add ArraySort and array operationsLeonardo Alt2018-11-225-2/+76
| |
* | [SMTChecker] Add FunctionSort and refactors the solver interface to create ↵Leonardo Alt2018-11-2214-128/+134
|/ | | | variables
* Introduce namespace `langutil` in liblangutil directory.Christian Parpart2018-11-2258-160/+314
| | | | | | | Also: - Use {}-style list initialisation for SourceLocation construction - Introduce new system includes - Changes the API of the Scanner to take source as value (with move) as opposed to as a reference
* Ensure liblangutil is compiled and linked as its own static library.Christian Parpart2018-11-221-3/+3
|
* Isolating files shared between Yul- and Solidity language frontend.Christian Parpart2018-11-2264-2720/+68
|
* Merge pull request #5466 from ethereum/smt_refactor_sort_patch1Alex Beregszaszi2018-11-2113-100/+102
|\ | | | | [SMTChecker] Refactor smt::Sort and its usage
| * [SMTChecker] Refactor smt::Sort and its usageLeonardo Alt2018-11-2113-100/+102
| |
* | Removing redundant virtual from override function declarationmordax2018-11-2117-565/+565
|/ | | | | | Remove trailing whitespace Remove changelog change
* [SMTChecker] Support bound function callsLeonardo Alt2018-11-191-0/+12
|
* [SMTChecker] Implement uninterpreted functions and use it for blockhash()Leonardo Alt2018-11-1515-25/+102
|
* Do not perform cleanup on unsigned integers when loading from calldata.chriseth2018-11-151-1/+8
|
* Add CompilerStack state assertions in internal methodsAlex Beregszaszi2018-11-141-6/+12
|
* Move lastContractName closer to contractNamesAlex Beregszaszi2018-11-141-13/+13
|
* Do not crash on filesystemFriendlyName if no contracts were compiledAlex Beregszaszi2018-11-141-0/+3
|
* Add Scanner function that prints source based on SourceLocationLeonardo Alt2018-11-134-3/+15
|
* Merge pull request #5406 from ethereum/uninitializedStorageUnimplementedchriseth2018-11-131-2/+5
|\ | | | | Ignore unimplemented functions for detecting uninitialized storage returns.
| * Ignore unimplemented functions for storage returns.Daniel Kirchner2018-11-131-2/+5
| |
* | Deterministic YulStringRepository using string hashes.Daniel Kirchner2018-11-131-1/+0
|/
* Fix for style.chriseth2018-11-121-3/+3
|
* Remove trailing whitespace.chriseth2018-11-121-1/+1
|
* Refactor of bool TypeChecker::visit(FunctionCall const& _functionCall).Kristofer Peterson2018-11-102-277/+521
| | | | | | Visit method now cleanly determines if node represents a function call, struct construction or type conversion. Type checking, validation and error message logic is moved to separate methods.
* Reset yul string repository.chriseth2018-11-091-0/+3
|
* Merge pull request #5265 from ethereum/cleanupsha3chriseth2018-11-095-5/+5
|\ | | | | Simplify sha3.
| * Renamed SHA3.{h,cpp} files.chriseth2018-10-185-5/+5
| |
* | Merge pull request #5365 from ethereum/improveNameDispenserchriseth2018-11-081-1/+0
|\ \ | | | | | | [Yul] Use single counter for name dispenser for performance reasons.
| * | Use single counter for name dispenser for performance reasons.chriseth2018-11-081-1/+1
| | |
* | | Merge pull request #5370 from ethereum/fixWindowsDaniel Kirchner2018-11-081-0/+1
|\ \ \ | | | | | | | | Fix windows build.
| * | | Fix windows build.chriseth2018-11-081-0/+1
| |/ /
* | | Merge pull request #5351 from ethereum/functionTypeConversionchriseth2018-11-081-2/+16
|\ \ \ | | | | | | | | Relax type equality requirement of function types during conversion in code generation.
| * | | Function type conversion test cases.Daniel Kirchner2018-11-081-4/+16
| | | |
| * | | Relax identity requirement of function type conversions during code generation.Daniel Kirchner2018-11-061-0/+2
| | | |
* | | | Merge pull request #5348 from ethereum/boostRationalNegativeDenominatorFixchriseth2018-11-082-2/+11
|\ \ \ \ | |_|/ / |/| | | Fix negative denominator in ``boost::rational`` during exponentiation.
| * | | Fix negative denominator in ``boost::rational`` during exponentiation.Daniel Kirchner2018-11-062-2/+11
| |/ /
* | | Performance: Replace string by special single-copy YulString class.chriseth2018-11-0811-64/+76
| | |
* | | Eliminate `byte`-typedef and use `uint8_t` in all their places instead.Christian Parpart2018-11-071-3/+3
|/ / | | | | | | | | | | | | | | | | | | | | This change is made to (easily) be forward compatible with future C++ standards, in order to allow compiling the code with newer standards at some point in the future. * Removed the `using byte = uint8_t;` line from Common.h * Mechanically change all uses of `byte` to `uint8_t`. Tested with GCC 7.3 in C++11/14/17 modes :-)
* | Fixes crash while encoding too large arrays.Erik Kundt2018-10-301-0/+3
| |
* | Merge pull request #5316 from lazaridiscom/4891-memory-store-assertschriseth2018-10-291-21/+37
|\ \ | | | | | | refine memory-store assertions, closes #4891
| * | refine memory-store assertions, closes #4891Lazaridis2018-10-271-21/+37
| | |
* | | Remove unused AST utils.chriseth2018-10-252-102/+0
| | |
* | | Merge pull request #5283 from ethereum/smt_fixed_byteschriseth2018-10-2512-280/+144
|\ \ \ | | | | | | | | [SMTChecker] Support FixedBytes
| * | | Grouping of symbolic variables in the same file and support to FixedBytesLeonardo Alt2018-10-2512-280/+144
| | | |
* | | | Merge pull request #5242 from ethereum/someCheckschriseth2018-10-252-4/+24
|\ \ \ \ | |/ / / |/| | | Some well-formedness checks for the Yul AST.
| * | | Some well-formedness checks for the Yul AST.chriseth2018-10-222-4/+24
| | | |
* | | | Merge pull request #5272 from ethereum/smt_special_varschriseth2018-10-2413-61/+144
|\ \ \ \ | | | | | | | | | | [SMTChecker] Support msg.*, tx.*, block.*, gasleft and blockhash
| * | | | Add gasleft constraint and use full member access nameLeonardo Alt2018-10-235-16/+31
| | | | |
| * | | | [SMTChecker] Support msg.*, tx.*, block.*, gasleft and blockhashLeonardo Alt2018-10-1911-51/+119
| |/ / /
* / / / Refactor `solidity::Token` into an `enum class` with `TokenTraits` helper ↵Christian Parpart2018-10-2221-359/+352
|/ / / | | | | | | | | | namespace
* | | Merge pull request #5256 from ethereum/lvalueCleanupchriseth2018-10-191-42/+7
|\ \ \ | | | | | | | | Lvalue cleanup
| * | | Removed unreachable cases in LValue.cpp.chriseth2018-10-181-42/+7
| | | |
* | | | Merge pull request #5257 from ethereum/assertAboutRemovedchriseth2018-10-191-10/+9
|\ \ \ \ | |_|_|/ |/| | | Assert about some removed language concepts in the code generator.
| * | | Assert about some removed language concepts in the code generator.chriseth2018-10-181-10/+9
| |/ /
* | | Fix possibly effectless map emplaceLeonardo Alt2018-10-181-7/+10
| | |
* | | [SMTChecker] Refactor expressions such that they also use SymbolicVariableLeonardo Alt2018-10-184-77/+57
|/ /
* | Merge pull request #5235 from ethereum/smt_refactor_typesLeonardo2018-10-1814-218/+378
|\ \ | | | | | | [SMTChecker] Refactoring types
| * | Refactor SymbolicAddressVariable and SymbolicVariable allocationLeonardo Alt2018-10-178-51/+159
| | |
| * | Consistent renaming of 'counters' and 'sequence' to 'index'Leonardo Alt2018-10-1710-71/+71
| | |
| * | [SMTChecker] Refactoring typesLeonardo Alt2018-10-1712-150/+202
| | |
* | | Merge pull request #5224 from bshastry/compilerwarn-fixchriseth2018-10-171-2/+2
|\ \ \ | | | | | | | | Fix compiler warning
| * | | Retained move/copy semantics; removed const qualifier from Expression's ↵Bhargava Shastry2018-10-171-2/+4
| | | | | | | | | | | | | | | | members name (of type std::string) and arguments (of type std::vector<Expression>)
| * | | Fix compiler warning: clang-8 warns of explicitly-defined op implicitly ↵Bhargava Shastry2018-10-171-2/+0
| |/ / | | | | | | | | | deleted for Expression object's copy and move constructors
* / / Prevent externally used functions from being removed.chriseth2018-10-175-10/+29
|/ /
* | Merge pull request #5209 from ethereum/smt_ssa_refactorchriseth2018-10-159-37/+48
|\ \ | | | | | | [SMTChecker] Refactor SSAVariable such that it only uses Type and not Declaration
| * | Refactor SSAVariable such that it only uses Type and not DeclarationLeonardo Alt2018-10-159-37/+48
| | |
* | | [SMTChecker] Inline calls to internal functionsLeonardo Alt2018-10-152-68/+243
|/ /
* | Merge pull request #5208 from mestorlx/bug4156chriseth2018-10-151-4/+4
|\ \ | | | | | | [WIP] Bad identifier suggestion in certain cases
| * | Updated MAXIMUM_STRING_DISTANCE to non static maximumStringDistance taking ↵mestorlx2018-10-131-4/+4
| |/ | | | | | | into account length of the identifier
* | Renaming namespace dev::julia to dev::yul.Christian Parpart2018-10-159-27/+27
| |
* | Renaming libjulia to libyulChristian Parpart2018-10-154-8/+8
| |
* | Fixes invalid function calls to literals inside tuple assignment's LHS.Christian Parpart2018-10-151-2/+6
|/
* Merge pull request #5195 from ethereum/unsigned-array-indexchriseth2018-10-112-3/+6
|\ | | | | Do not crash on non-unsigned array index
| * Fixes crash on non-unsigned array index.Erik Kundt2018-10-112-3/+6
| |
* | Improved error message for lookup in function types.Martin Diz2018-10-101-2/+19
| |
* | Merge pull request #5132 from ethereum/genericVisitorchriseth2018-10-101-25/+2
|\ \ | |/ |/| Generic visitor.
| * Generic visitor.chriseth2018-10-091-25/+2
| |
* | Merge pull request #5180 from ethereum/cpp-cleanupchriseth2018-10-108-10/+10
|\ \ | | | | | | Some C++ cleanup
| * | Do not require ctype/stdio if not neededAlex Beregszaszi2018-10-102-2/+2
| | |
| * | Change find to use a single characterAlex Beregszaszi2018-10-101-1/+1
| | |
| * | Use empty() instead of size() == 0Alex Beregszaszi2018-10-097-7/+7
| | |
* | | Fixes large rational number literals being wrongly interpreted.Christian Parpart2018-10-091-9/+3
| |/ |/| | | | | Fixes #5052.
* | Merge pull request #5124 from lazaridiscom/1802-hex-error-reportingchriseth2018-10-093-3/+8
|\ \ | | | | | | use Token type for hex error, draft re #1802
| * | provide general hex-literal error message, fixes #1802Lazaridis2018-10-093-3/+8
| |/ | | | | | | dummy
* / Fix pragma error suggestion.chriseth2018-10-091-1/+1
|/
* Merge pull request #4734 from ethereum/astUpdatechriseth2018-10-091-1/+3
|\ | | | | JSON AST: replace ``isConstructor`` by ``kind`` which also supports fallbacks
| * Restore ``isConstructor`` in the legacy AST.Daniel Kirchner2018-09-111-0/+2
| |
| * Replace ``isConstructor`` field in the JSON AST by a ``kind`` field.Daniel Kirchner2018-09-111-1/+1
| |
* | Fix typos.chriseth2018-10-043-6/+6
| |
* | Fixes #5051 (introduced in #4684), effectively allowing underscores in ↵Christian Parpart2018-10-024-6/+13
| | | | | | | | address literals.
* | Merge pull request #4962 from anurag-git/anurag_issue_3667-1chriseth2018-10-018-30/+5
|\ \ | | | | | | Removed default case from "ExpressionCompiler::visit(FunctionCall...)".
| * | Removing extra default cases to force compile time error, instead of runtime.Anurag Dashputre2018-09-307-28/+5
| | |
| * | Removed default case from "ExpressionCompiler::visit(FunctionCall...)".Anurag Dashputre2018-09-131-2/+0
| | |
* | | Merge pull request #5113 from ethereum/compilerstack-datagaschriseth2018-10-011-2/+1
|\ \ \ | | | | | | | | Use GasEstimator::dataGas in CompilerStack
| * | | Use GasEstimator::dataGas in CompilerStackAlex Beregszaszi2018-09-281-2/+1
| | | |
* | | | Merge pull request #4676 from jwasinger/extcodehashAlex Beregszaszi2018-09-281-1/+11
|\ \ \ \ | |/ / / |/| | | Add support for EXTCODEHASH
| * | | Add assembly support for EXTCODEHASH (EIP-1052)Jared Wasinger2018-09-261-1/+11
| | | |
* | | | Merge pull request #5099 from ethereum/standard-json-optimiserchriseth2018-09-271-4/+19
|\ \ \ \ | |/ / / |/| | | Be more strict about values in the optimizer block in StandardJSON
| * | | Be more strict about values in the optimizer block in StandardJSONAlex Beregszaszi2018-09-261-4/+19
| | | |
* | | | Add PathGasMeter.estimateMax helperAlex Beregszaszi2018-09-261-3/+2
|/ / /
* | | Merge pull request #5061 from ethereum/fixedSizeArrayLengthchriseth2018-09-261-0/+2
|\ \ \ | | | | | | | | Disallow fixed-size arrays with zero length
| * | | Removes unnecessary check of array type.Erik Kundt2018-09-261-3/+1
| | | |
| * | | Simplifies zero-length check for fixed-size arrays.Erik Kundt2018-09-221-3/+3
| | | |
| * | | Moves length check to reference resolver.Erik Kundt2018-09-222-5/+4
| | | |
| * | | Disallows fixed-size multidim. arrays with zero-length.Erik Kundt2018-09-221-0/+5
| | | |
* | | | Merge pull request #5092 from ethereum/create2-evmversionchriseth2018-09-262-12/+6
|\ \ \ \ | | | | | | | | | | CREATE2 is part of Constantinople now
| * | | | CREATE2 is part of Constantinople nowAlex Beregszaszi2018-09-262-12/+6
| | | | | | | | | | | | | | | | | | | | Also add hasCreate2 to EVMVersion
* | | | | Use better assertion messages for RationalNumberType::literalValueAlex Beregszaszi2018-09-261-2/+2
|/ / / /
* | | | Removed extra whitespace.Nicolás Venturo2018-09-261-1/+1
| | | |
* | | | Merge pull request #5063 from ethereum/standard-json-bugchriseth2018-09-241-2/+2
|\ \ \ \ | | | | | | | | | | Fix typo in parsing/writing JSON error in StandardCompiler
| * | | | Fix typo in parsing/writing JSON error in StandardCompilerAlex Beregszaszi2018-09-221-2/+2
| | | | |
* | | | | Merge pull request #5041 from liangdzou/fix_typo_in_docchriseth2018-09-241-1/+1
|\ \ \ \ \ | | | | | | | | | | | | fix typo in docs and comments
| * | | | | fix typoliangdzou2018-09-211-1/+1
| | | | | |
* | | | | | Use 'switch' instead of 'if..else if'Khan M Rashedun-Naby2018-09-241-17/+22
| | | | | |
* | | | | | Merge pull request #5050 from ethereum/standard-json-crashesAlex Beregszaszi2018-09-211-2/+10
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | Add proper error reporting when invalid settings are provided in StandardJSON
| * | | | | Add proper error reporting when invalid settings are provided in StandardJSONAlex Beregszaszi2018-09-211-2/+10
| | |/ / / | |/| | |
* | | | | Merge pull request #5049 from ethereum/structtype-assert-annotationAlex Beregszaszi2018-09-211-0/+3
|\ \ \ \ \ | | | | | | | | | | | | Add assertion for annotated type in Structtype::canBeUsedExternally
| * | | | | Add assertion for annotated type in Structtype::canBeUsedExternallyAlex Beregszaszi2018-09-211-0/+3
| |/ / / /
* | | | | Merge pull request #5030 from ethereum/payableConversionchriseth2018-09-212-5/+3
|\ \ \ \ \ | |_|/ / / |/| | | | Make non-payable default for conversion to address.
| * | | | Make non-payable default for conversion to address.chriseth2018-09-202-5/+3
| |/ / /
* | | | fix typoliangdzou2018-09-204-6/+6
| | | |
* | | | Disallow uppercase X in hex number literalshydai2018-09-191-2/+2
|/ / /
* | | fix code format problemsliangdzou2018-09-192-2/+4
| | |
* | | fix some format typosliangdzou2018-09-171-1/+1
| | |
* | | Do not set to ref for explicit conversion and add assertion for arrayliangdzou2018-09-141-2/+17
| | | | | | | | | | | | type conversion. Also, add some test cases for #4901 and #4948.
* | | fixing rebase conflictsJordan Last2018-09-143-8/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | add ElementaryTypes::BytesMemory and ElementaryTypes::StringMemory fix rebase conflicts fixing rebase conflicts use make_shared instead of new fix tabs and StateMutability parameter create address and addressType functions, fix spaces in comment fix typo and switch nonpayable to payable fix spaces fix comment again
* | | Merge pull request #4911 from ethereum/addressPayableDaniel Kirchner2018-09-138-39/+154
|\ \ \ | |/ / |/| | Payable and non-payable address type.
| * | Add ``stateMutability`` field to JSON AST for ``address`` types.Daniel Kirchner2018-09-131-2/+7
| | |
| * | Add payable and non-payable state mutability to AddressType.Daniel Kirchner2018-09-137-37/+147
| | |
* | | give more information (at most 35 chars before and after) for too long linesliangdzou2018-09-131-2/+8
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | add tests for giving more informations for too long lines add edge tests for giving more informations for too long lines avoid printing out tailing white space update test case after avoiding printing out trailing whitespace update test case for removing the pre-release warning from reference refactor the code to if-else flavor rename folder to cmdlineErrorReports under test rename folder to cmdlineErrorReports under test ignore whitespace for reference files avoiding to modify the file stderr_path by call sed without -i option print ' ...' instead of ' ... ' at the end of a line
* / Accept ``address payable`` during parsing.Daniel Kirchner2018-09-114-11/+59
|/
* Always perform cleanup for EXP.chriseth2018-09-101-1/+3
|
* This fixes several bugs with regards to line breaks and comments:chriseth2018-09-062-28/+58
| | | | | | | | | | | - any unicode line break (line feed, vertical tab, form feed, carriage return, NEL, LS and PS) is considered to terminate a single-line comment. The line break itself is considered to be the next token after the comment, leading to a parser error if it is not an ascii character (i.e. for NEL, LS and PS). - unterminated multiline comments are considered illegal tokens - '/** /' is considered an unterminated multiline comment (previously, whitespace was allowed before the last '/'
* Refactor handling of whitespace.chriseth2018-09-061-5/+0
|
* More consistently use parse*() functions without argument in the parser.Daniel Kirchner2018-09-062-46/+64
|
* Merge pull request #4872 from bakaoh/issue4716chriseth2018-09-061-4/+5
|\ | | | | Crash when array index value is too large
| * Fix #4716: Crash when array index value is too largebakaoh2018-09-051-4/+5
| |
* | Split IntegerType into IntegerType and AddressType.Daniel Kirchner2018-09-0510-100/+171
| |
* | Merge pull request #4590 from ethereum/msgValueModifierchriseth2018-09-055-65/+102
|\ \ | | | | | | Warn if modifier uses msg.value in non-payable function
| * | Turn warning into error.chriseth2018-09-041-5/+7
| | |
| * | Warns if modifier uses msg.value in non-payable function.Erik Kundt2018-09-045-65/+100
| | |
* | | Merge pull request #4895 from ethereum/abidecodesinglechriseth2018-09-053-21/+25
|\ \ \ | | | | | | | | Fix abi.decode returning single value.
| * | | Fix abi.decode returning single value.chriseth2018-09-053-21/+25
| | | |
* | | | Merge pull request #4866 from bakaoh/issue4743chriseth2018-09-051-4/+5
|\ \ \ \ | | | | | | | | | | Fix#4743: Incorrect source location for nameless parameters
| * | | | Fix#4743: Incorrect source location for nameless parametersbakaoh2018-08-281-4/+5
| | |_|/ | |/| |
* | | | Merge pull request #4897 from ethereum/trailingWhitespaceDetectionchriseth2018-09-051-1/+1
|\ \ \ \ | |_|/ / |/| | | Trailing whitespace detection script and circleci job.
| * | | Remove trailing whitespace.Daniel Kirchner2018-09-041-1/+1
| | | |
* | | | Merge pull request #4888 from ↵chriseth2018-09-042-2/+25
|\ \ \ \ | |/ / / |/| | | | | | | | | | | ethereum/disallow_single_statement_vardecl_if_while_for Disallow single statement var decl in if/while/for without blocks
| * | | Review suggestionsLeonardo Alt2018-09-042-11/+11
| | | |
| * | | Changed error message and added testsLeonardo Alt2018-09-041-1/+1
| | | |
| * | | Disallow single statement var decl in if/while/for without blocksLeonardo Alt2018-09-042-2/+25
| | | |
* | | | Add return data to bare calls.Daniel Kirchner2018-09-042-27/+57
| | | |
* | | | Remove trailing whitespace for all files in the repository.Daniel Kirchner2018-09-042-8/+8
| | | |
* | | | Merge pull request #4837 from chase1745/default-to-unspecifiedchriseth2018-09-046-12/+12
|\ \ \ \ | |_|_|/ |/| | | Rename `Location::Default` to `Location::Unspecified`
| * | | Rename Location::Default to Location::Unspecified.Chase McDermott2018-08-186-12/+12
| | |/ | |/|
* | | Merge pull request #4851 from anurag-git/anurag_issue_4824chriseth2018-09-033-9/+3
|\ \ \ | |_|/ |/| | Removed unused "FunctionType::Kind::CallCode"
| * | Removed unused "FunctionType::Kind::CallCode" from Types.h and all its usageAnurag Dashputre2018-08-233-9/+3
| |/
* | Merge branch 'develop' into anurag_issue_3667Anurag Dashputre2018-08-2320-287/+689
|\|
| * Merge pull request #4629 from ethereum/mapping_dynamic_keychriseth2018-08-161-1/+15
| |\ | | | | | | Dynamic type as mapping key returns error instead of assertion fail
| | * Dynamic type as mapping key returns error instead of assertion failLeonardo Alt2018-08-161-1/+15
| | |
| * | Merge pull request #4825 from ethereum/expressionCompBareCallchriseth2018-08-162-5/+16
| |\ \ | | | | | | | | More safeguards for (library) function types.
| | * | More safeguards for (library) function types.chriseth2018-08-152-5/+16
| | | |
| * | | fix a typo: declaratoion => declarationliangdzou2018-08-161-1/+1
| | |/ | |/|
| * | Merge pull request #4822 from ethereum/addressStaticCallchriseth2018-08-164-8/+27
| |\ \ | | | | | | | | Add ``staticcall`` to ``address``.
| | * | Add ``staticcall`` to ``address``.Daniel Kirchner2018-08-154-8/+27
| | |/
| * | Review suggestionsLeonardo Alt2018-08-151-3/+3
| | |
| * | Disallow indexed reference types in events when using ABIEncoderV2Leonardo Alt2018-08-151-0/+10
| |/
| * Merge pull request #4390 from ethereum/abidecodechriseth2018-08-156-6/+115
| |\ | | | | | | Add abi.decode
| | * Add abi.decode(bytes data, (...))chriseth2018-08-156-6/+115
| | |
| * | Fixes #4718: High CPU usage when using large variable namesbakaoh2018-08-151-2/+5
| |/
| * Merge pull request #4738 from ethereum/dataloc_mergedchriseth2018-08-156-131/+220
| |\ | | | | | | Enforce data location.
| | * Refactor data location check.Chase McDermott2018-08-156-131/+220
| | |
| * | Merge pull request #4542 from aarlt/constructor_natspecchriseth2018-08-154-27/+91
| |\ \ | | |/ | |/| Fix: natspec annotations on constructors
| | * Fix: natspec annotations on constructorsAlexander Arlt2018-08-094-27/+91
| | | | | | | | | | | | - natspec annotations on constructore where ignored.
| * | Merge pull request #4765 from ethereum/fixes-issue-4673chriseth2018-08-142-2/+4
| |\ \ | | | | | | | | [WIP] Fixes issue where computing storage size for a number would take too long (or even cause a crash).
| | * | Fixes issue where computing storage size for a number would take too long.Christian Parpart2018-08-142-2/+4
| | | | | | | | | | | | | | | | Fixes #4673.
| * | | Add implicit convertibility to function pointer with higher state mutabilityJesse Busman2018-08-142-21/+65
| | | |
| * | | Merge pull request #4782 from ethereum/encodePackedArrayOfStructschriseth2018-08-141-10/+10
| |\ \ \ | | | | | | | | | | Encode packed array of structs
| | * | | Disallow packed encoding of arrays of structs.chriseth2018-08-101-10/+10
| | |/ /
| * | | Adds support for structs in interfaces.Christian Parpart2018-08-142-4/+9
| | | | | | | | | | | | | | | | Closes #4733.
| * | | Merge pull request #4777 from ethereum/typeConversionMemorychriseth2018-08-141-3/+6
| |\ \ \ | | | | | | | | | | Defaul data location for type conversions is memory.
| | * | | Defaul data location for type conversions is memory.chriseth2018-08-131-3/+6
| | | | |
| * | | | Merge pull request #4798 from ethereum/mappingArgumentsAndReturnschriseth2018-08-132-2/+8
| |\ \ \ \ | | | | | | | | | | | | Mapping arguments and returns
| | * | | | Allow mappings of arrays as arguments and return values of internal functions.Daniel Kirchner2018-08-131-4/+1
| | | | | |
| | * | | | Consider mappings return values in control flow analysis.Daniel Kirchner2018-08-131-1/+4
| | | | | |
| | * | | | Allow mapping arguments and return values in all internal functions.Daniel Kirchner2018-08-131-1/+0
| | | | | |
| | * | | | Allow mapping arguments and return values in internal library functions.Daniel Kirchner2018-08-131-1/+8
| | |/ / /
| * | | | Merge pull request #4696 from ethereum/byteLiteralConversionchriseth2018-08-133-40/+46
| |\ \ \ \ | | |/ / / | |/| | | Disallow ambiguous implicit and explicit conversions from number literals to bytesXX
| | * | | Disallow ambiguous conversions between number literals and bytesXX types.Daniel Kirchner2018-08-133-40/+46
| | |/ /
| * / / Disallow remappings with empty prefix.Daniel Kirchner2018-08-113-25/+42
| |/ /
* | | Removed the default cases related to assertion to detect the problem at ↵Anurag Dashputre2018-08-231-6/+0
| | | | | | | | | | | | compile-time instead of run-time
* | | Default case removed to detect errors at comoile time rather than run timeAnurag Dashputre2018-08-171-1/+0
|/ /
* | Merge pull request #4790 from ethereum/fixCalldatachriseth2018-08-101-1/+1
|\ \ | | | | | | Fix data location of external reference parameters.
| * | Fix data location of external reference parameters.chriseth2018-08-091-1/+1
| | |
* | | Merge pull request #4767 from ethereum/cvc4BuildDaniel Kirchner2018-08-092-12/+16
|\ \ \ | |/ / |/| | Add workarounds for building against CVC4 on ArchLinux.
| * | Do not force GMP to be present as dependency of CVC4, but also allow CLN ↵Daniel Kirchner2018-08-091-11/+4
| | | | | | | | | | | | instead.
| * | Add workarounds for building against CVC4 on ArchLinux.Daniel Kirchner2018-08-092-1/+12
| | |
* | | Rename FunctionKind SHA3 to KECCAK256 (as the instruction was renamed in ↵Alex Beregszaszi2018-08-095-11/+11
| |/ |/| | | | | libevmasm)
* | Merge pull request #4684 from ethereum/underscores_in_numeric_literalschriseth2018-08-094-14/+90
|\ \ | |/ |/| [BREAKING] Underscores in numeric literals
| * Cleanup & polish numbers-with-underscores parsing, also improving tests.Christian Parpart2018-08-083-64/+66
| |
| * Add stricter hex underscore rulesBalajiganapathi S2018-08-084-17/+67
| |
| * Allow underscores in numbers.Balajiganapathi S2018-08-081-2/+26
| |
* | Merge pull request #4665 from mattaereal/cmake-patch-solverAlex Beregszaszi2018-08-091-1/+2
|\ \ | | | | | | cmake option added to make solvers optional