aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #5630 from ethereum/warn_functions_empty_bodychriseth2018-12-132-14/+15
|\ | | | | Supress unused var and state mut warnings for functions with empty body
| * Disable state mutability warning for functions with empty bodyLeonardo Alt2018-12-121-0/+1
| |
| * Disable unused var warning for functions with empty bodyLeonardo Alt2018-12-121-14/+14
| |
* | Refactoring of the ControlFlowGraph and use for detecting all uninitialized ↵Daniel Kirchner2018-12-126-326/+348
|/ | | | storage accesses.
* Codegen for object access.chriseth2018-12-127-11/+39
|
* Provide Dialect to EVMCodeTransform.chriseth2018-12-122-3/+3
|
* Merge pull request #5454 from ethereum/smt_math_functionschriseth2018-12-124-85/+133
|\ | | | | [SMTChecker] Abstract math functions
| * [SMTChecker] Use SymbolicFunctionVariable for uninterpreted functionsLeonardo Alt2018-12-114-85/+133
| |
* | Merge pull request #4779 from ethereum/optimise-string-literalschriseth2018-12-121-1/+1
|\ \ | |/ |/| Decide better in storing string literals as data
| * Set codecopy limit for data to 32 bytes.chriseth2018-12-111-1/+1
| |
* | Merge pull request #5619 from ethereum/cleanup-abcchriseth2018-12-117-56/+49
|\ \ | | | | | | Some code cleanup
| * | Replace push_back with emplace_back where it makes senseMathias Baumann2018-12-117-56/+49
| |/
* / Add tests for implcit conversions from literals to fixed-point numbers.Yi Huang2018-12-112-54/+68
|/
* Merge pull request #5008 from liangdzou/yul_stack_reusechriseth2018-12-104-6/+11
|\ | | | | Reuse stack slots in Yul codegen
| * Reuse stack slots in Yul to EVM code generation.liangdzou2018-12-104-6/+11
| |
* | [SMTChecker] Introduce SymbolicFunctionVariableLeonardo Alt2018-12-102-1/+56
|/
* Adds more detailed type errors and tests.Erik Kundt2018-12-071-4/+4
|
* Adds an additional message to failing type conversions.Erik Kundt2018-12-072-9/+8
|
* Merge pull request #4936 from ethereum/binSelectchriseth2018-12-073-6/+81
|\ | | | | Binary search for dispatch.
| * Binary search for dispatch.chriseth2018-12-063-6/+81
| |
* | Merge pull request #5587 from ethereum/yulCodeBuiltinschriseth2018-12-061-1/+1
|\ \ | | | | | | Builtin functions to access Yul objects.
| * | Provide Yul Object builtins.chriseth2018-12-041-1/+1
| | |
* | | Analyze and compile sub-objects.chriseth2018-12-062-7/+34
| | |
* | | Extend abstract assembly to be able to handle sub-objects.chriseth2018-12-062-0/+42
| | |
* | | Expose EthAssemblyAdapter.chriseth2018-12-062-91/+128
| | |
* | | Merge pull request #5554 from ethereum/cp-SourceReferenceFormatter-refactorchriseth2018-12-062-17/+8
|\ \ \ | |_|/ |/| | [2/3] Refactor SourceReferenceFormatter (split-out data extraction & make use of new SourceLocation knowledge)
| * | liblangutil: refactor SourceReferenceFormatter, splitting out retrieval and ↵Christian Parpart2018-12-062-17/+8
| | | | | | | | | | | | making use of new SourceLocation's CharStream knowledge
* | | Merge pull request #5514 from corollari/developchriseth2018-12-061-4/+3
|\ \ \ | | | | | | | | Remove unary + from the type system
| * | | Fix #5470Albert2018-12-061-4/+3
| | | | | | | | | | | | | | | | Remove unary + from the type system
* | | | Restrict toHex to `bytes`.chriseth2018-12-062-2/+2
|/ / /
* | | add a 'readable' format for large hex valuesKevin Kelley2018-12-061-3/+5
| | |
* | | Merge pull request #5591 from ethereum/smt_simplify_sortchriseth2018-12-062-29/+19
|\ \ \ | | | | | | | | [SMTChecker] Simplify symbolic variables
| * | | [SMTChecker] Simplify symbolic variablesLeonardo Alt2018-12-052-29/+19
| |/ /
* | | Simplifies Result<T> and prevents undefined behaviour.Erik Kundt2018-12-051-3/+3
| | |
* | | Introduces Result<T> for operator and implicit conversion type checks.Erik Kundt2018-12-053-102/+105
|/ /
* | Merge pull request #5390 from ethereum/smt_one_loopchriseth2018-12-051-10/+40
|\ \ | | | | | | [SMTChecker] Unroll loops once
| * | [SMTChecker] Loops are unrolled onceLeonardo Alt2018-12-041-10/+40
| | |
* | | Switch namespaces.chriseth2018-12-044-8/+12
| | |
* | | Remove some includes.chriseth2018-12-041-9/+0
| | |
* | | Adjust include paths.chriseth2018-12-045-10/+7
| | |
* | | Move AsmCodeGen.chriseth2018-12-043-0/+218
| |/ |/|
* | Introduce the concept of builtin functions.chriseth2018-12-044-11/+18
|/
* Fix internal compiler error for unimplemented base contract function.Anurag Dashputre2018-12-031-1/+2
|
* Merge pull request #5341 from ethereum/optimizeAssemblyCommandlinechriseth2018-12-032-0/+12
|\ | | | | Apply the optimize commandline parameter to assembly mode.
| * Apply the optimize commandline parameter to assembly mode.chriseth2018-12-012-0/+12
| |
* | Merge pull request #5568 from ethereum/smt_remove_unary_pluschriseth2018-12-031-3/+0
|\ \ | | | | | | [SMTChecker] Remove unary plus operator
| * | [SMTChecker] Remove unary plus operatorLeonardo Alt2018-12-031-3/+0
| | |
* | | Merge pull request #5557 from ↵chriseth2018-12-031-21/+32
|\ \ \ | |/ / |/| | | | | | | | ethereum/fixInterfaceImplementedByPublicStateVariable Public state variables are implementing external functions.
| * | Public state variables are implementing external functions.chriseth2018-12-031-21/+32
| |/
* | Merge pull request #5537 from ethereum/cp-SourceLocation-related-refactoringchriseth2018-12-017-17/+17
|\ \ | |/ |/| [1/3] SourceLocation related refactoring.
| * 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 #5528 from ethereum/smt_sorts_virtualchriseth2018-11-301-6/+16
|\ \ | | | | | | [SMTChecker] Make smt::Sort::operator== virtual
| * | [SMTChecker] Make smt::Sort::operator== virtualLeonardo Alt2018-11-301-6/+16
| | |
* | | Move library related checks.chriseth2018-11-304-16/+16
| | |
* | | Move hash collisions checks.chriseth2018-11-303-13/+18
| | |
* | | Move external type clash check.chriseth2018-11-304-40/+40
| | |
* | | Move fallback function checks.chriseth2018-11-303-20/+25
| | |
* | | Move constructor checks.chriseth2018-11-303-16/+21
| | |
* | | Rename functions.chriseth2018-11-302-15/+15
| | |
* | | No need to visit structs early.chriseth2018-11-301-7/+1
| | |
* | | Move base constructor argument checks.chriseth2018-11-304-93/+97
| | |
* | | Move abstract function check.chriseth2018-11-304-46/+46
| | |
* | | Move override checks.chriseth2018-11-304-87/+88
| | |
* | | Move duplication checks.chriseth2018-11-304-92/+93
| | |
* | | Add skeleton for contract level checker.chriseth2018-11-304-2/+113
|/ /
* | Merge pull request #5548 from ethereum/fixMemberAccesschriseth2018-11-301-3/+3
|\ \ | | | | | | Fix bug related to state variables of function type accessed via base contract.
| * | Fix bug related to state variables of function type accessed via base contract.chriseth2018-11-301-3/+3
| | |
* | | Disallow inline arrays of mapping type.chriseth2018-11-301-0/+3
|/ /
* | Merge pull request #5543 from ethereum/fixSortMOvechriseth2018-11-291-1/+2
|\ \ | | | | | | Fix move bug.
| * | Fix move bug.chriseth2018-11-291-1/+2
| | |
* | | Report deprecation error on functions sha3 and suicide also without call.Leonardo Alt2018-11-291-20/+17
|/ /
* | Merge pull request #5538 from hydai/static_uint256chriseth2018-11-296-22/+24
|\ \ | | | | | | Replace IntegerType(256) with static function IntegerType::uint256()
| * | Replace IntegerType(256) with static function IntegerType::uint256()hydai2018-11-296-22/+24
| | |
* | | Fix ICE when function type struct parameter has field of non-existent typeLeonardo Alt2018-11-291-1/+7
|/ /
* | Merge pull request #5526 from ethereum/fixGetterNewCoderchriseth2018-11-291-10/+31
|\ \ | |/ |/| Fix: Disallow structs in getters for old encoder.
| * Properly check getter types to be old-abi-coder-compatible.chriseth2018-11-281-10/+31
| |
* | 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
| | |