aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity
Commit message (Collapse)AuthorAgeFilesLines
* 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
| * | cmake flags to make solvers optional. Implementation of #4651Matías Aereal Aeón2018-08-081-1/+2
| | |
* | | Merge pull request #4770 from ethereum/throw-codegenAlex Beregszaszi2018-08-091-4/+2
|\ \ \ | | | | | | | | Remove code generation for Throw statement
| * | | Remove code generation for Throw statementAlex Beregszaszi2018-08-091-4/+2
| | | | | | | | | | | | | | | | It is disallowed in the type system.
* | | | Merge pull request #4769 from ethereum/inlineasm-overloading-resolutionAlex Beregszaszi2018-08-091-0/+3
|\ \ \ \ | |/ / / |/| | | Provide nicer error message when referencing overloaded references
| * | | Provide nicer error message when referencing overloaded referencesAlex Beregszaszi2018-08-081-0/+3
| | | |
* | | | Merge pull request #4753 from mattaereal/boost-to-string-patchAlex Beregszaszi2018-08-087-22/+22
|\ \ \ \ | | | | | | | | | | Replace boost:lexical_cast<std::string> for std::to_string.
| * | | | Removing std:: from std::to_string and include for boost/lexical_castMatías Aereal Aeón2018-08-086-21/+21
| | | | |
| * | | | Replace boost:lexical_cast<std::string> for std::to_string.Matías Aereal Aeón2018-08-083-10/+10
| | |/ / | |/| |
* | | | Merge pull request #4761 from ethereum/libsolc-exceptionsAlex Beregszaszi2018-08-082-4/+4
|\ \ \ \ | |_|/ / |/| | | Mark libsolc external C functions as noexcept
| * | | Mark StandardCompiler::compile as noexceptAlex Beregszaszi2018-08-082-4/+4
| | |/ | |/| | | | | | | It has a generic catch statement and shouldn't leak out exceptions.
* | | Remove experimental 0.5.0 pragmaAlex Beregszaszi2018-08-081-3/+0
| | |
* | | Merge pull request #4740 from ethereum/enforceNumberOfReturnValueschriseth2018-08-081-1/+5
|\ \ \ | | | | | | | | Disallow empty return in function with return arguments.
| * | | Disallow empty return expressions in functions with non-empty return parameters.Daniel Kirchner2018-08-081-1/+5
| | | |
* | | | Merge pull request #4748 from ethereum/validate-identifierchriseth2018-08-082-1/+12
|\ \ \ \ | | | | | | | | | | Assert that type identifier contains only valid characters
| * | | | Assert that type identifier contains only valid charactersAlex Beregszaszi2018-08-082-1/+12
| | |/ / | |/| |
* | | | Merge pull request #4745 from ethereum/nameResolverNoEarlyExitchriseth2018-08-081-3/+0
|\ \ \ \ | | | | | | | | | | Do not stop after the first error in reference resolution.
| * | | | Do not stop after the first error in reference resolution.chriseth2018-08-081-3/+0
| | |/ / | |/| |
* | | | Merge pull request #4736 from ethereum/removeFillRightAlex Beregszaszi2018-08-083-21/+14
|\ \ \ \ | |_|/ / |/| | | Remove remaining instances of ``fillRight``.
| * | | Remove remaining instances of ``fillRight`` left over from tuple wildcards ↵Daniel Kirchner2018-08-083-21/+14
| |/ / | | | | | | | | | assignments.
* | | Merge pull request #4744 from ethereum/smt-magic-variableAlex Beregszaszi2018-08-081-2/+8
|\ \ \ | |/ / |/| | SMT: do not crash on referencing MagicVariableDeclaration
| * | SMT: do not crash on referencing MagicVariableDeclarationAlex Beregszaszi2018-08-081-2/+8
| | |
* | | Merge pull request #4731 from ethereum/interface-enumchriseth2018-08-072-8/+0
|\ \ \ | | | | | | | | Allow enums in interfaces
| * | | Allow enums in interfacesAlex Beregszaszi2018-08-072-8/+0
| |/ /
* | | Merge pull request #4692 from ethereum/devcore-pathchriseth2018-08-072-28/+4
|\ \ \ | | | | | | | | Move absolutePath/sanitizePath helpers from CompilerStack to libdevcore
| * | | Move absolutePath/sanitizePath helpers from CompilerStack to libdevcoreAlex Beregszaszi2018-08-062-28/+4
| | | |
* | | | Merge pull request #4699 from ethereum/cleanup_VariableDeclarationchriseth2018-08-073-111/+109
|\ \ \ \ | | | | | | | | | | libsolidity: Remove dead code wrt. VariableDeclaration::canHaveAutoType
| * | | | libsolidity: Remove dead code wrt. VariableDeclaration::canHaveAutoType()Christian Parpart2018-08-073-111/+109
| | | | | | | | | | | | | | | | | | | | Closes #4667
* | | | | Merge pull request #4726 from ethereum/moveNothrowchriseth2018-08-072-11/+2
|\ \ \ \ \ | | | | | | | | | | | | Make MemberList nothrow move constructible.
| * | | | | Make MemberList nothrow move constructible.chriseth2018-08-072-11/+2
| |/ / / /
* | | | | Merge pull request #4720 from ethereum/abi-rational-type-identifierAlex Beregszaszi2018-08-071-1/+8
|\ \ \ \ \ | | | | | | | | | | | | Fix type identifiers for RationalNumberType (on negative numbers)
| * | | | | Fix type identifiers for RationalNumberTypeAlex Beregszaszi2018-08-071-1/+8
| | |_|/ / | |/| | |
* | | | | More precise error message if using non-variables with _slot/_offsetAlex Beregszaszi2018-08-072-3/+7
| | | | |
* | | | | Properly handle invalid references used together with _slot and _offset.Alex Beregszaszi2018-08-071-0/+2
|/ / / /
* | | | Merge pull request #4724 from ethereum/slot-in-assemblyAlex Beregszaszi2018-08-071-0/+5
|\ \ \ \ | | | | | | | | | | Do not crash on using _slot and _offset suffixes on their own
| * | | | Do not crash on using _slot and _offset suffixes on their ownAlex Beregszaszi2018-08-071-0/+5
| |/ / /
* / / / Remove clone feature.chriseth2018-08-076-103/+0
|/ / /
* | | Move fullyQualifiedName to ContractDefinition onlyAlex Beregszaszi2018-08-072-11/+2
| | |
* | | Merge pull request #4663 from ethereum/dropConstantASTchriseth2018-08-071-6/+0
|\ \ \ | | | | | | | | [BREAKING] Drop constant field from JSON AST
| * | | Remove "constant" from JSON AST.Daniel Kirchner2018-08-061-6/+0
| | | |
* | | | FixedBytes(0) is invalid, do not check for it in ABIEncoderV2Alex Beregszaszi2018-08-061-1/+2
| | | |
* | | | Merge pull request #4689 from ethereum/cleanup-050-testschriseth2018-08-062-3/+0
|\ \ \ \ | | | | | | | | | | Cleanup 0.5.0 test cases
| * | | | Remove unused 050 variable in ReferencesResolverAlex Beregszaszi2018-08-062-3/+0
| | | | |
* | | | | Merge pull request #4690 from ethereum/equalParameterTypesAlex Beregszaszi2018-08-065-9/+9
|\ \ \ \ \ | |_|_|/ / |/| | | | Renamed FunctionType::hasEqualArgumentTypes to FunctionType::hasEqual…
| * | | | Renamed FunctionType::hasEqualArgumentTypes to ↵Jesse Busman2018-08-065-9/+9
| |/ / / | | | | | | | | | | | | FunctionType::hasEqualParameterTypes
* | | | Merge pull request #4671 from ethereum/mappingTupleAssignmentchriseth2018-08-062-5/+33
|\ \ \ \ | |/ / / |/| | | Disallow assignments to mappings within tuple assignments; allow for local variables.
| * | | Review suggestions; to be squashed.Daniel Kirchner2018-08-031-8/+10
| | | |
| * | | Allow assignments to local variables of mapping types.Daniel Kirchner2018-08-031-1/+9
| | | |
| * | | Disallow assignments to mappings within tuple assignments.Daniel Kirchner2018-08-032-5/+23
| | | |
* | | | Merge pull request #4644 from ethereum/event_struct_errorchriseth2018-08-061-0/+10
|\ \ \ \ | | | | | | | | | | Disallow structs in events without ABIEncoderV2
| * | | | Disallow structs in events without ABIEncoderV2Leonardo Alt2018-08-031-0/+10
| |/ / /
* | | | Merge pull request #4681 from ethereum/var-suggestion-crashchriseth2018-08-061-0/+6
|\ \ \ \ | |_|/ / |/| | | Fix declaration suggestion for var with different number of components
| * | | Fix declaration suggestion for var with different number of componentsAlex Beregszaszi2018-08-041-0/+6
| |/ /
* | | Merge pull request #4412 from ethereum/v050-reference-resolver-errorTypeForLooseChristian Parpart2018-08-043-9/+5
|\ \ \ | |/ / |/| | [BREAKING] permanently set errorTypeForLoose from Warning to SyntaxError
| * | Disallow loos assembly in Solidity by permanently setting it to SyntaxError ↵Christian Parpart2018-08-023-9/+5
| | | | | | | | | | | | (from Warning)
* | | Turn warning about uninitialized storage returns into an error.Daniel Kirchner2018-08-031-5/+5
| |/ |/|
* | Merge pull request #4327 from ethereum/document-internalschriseth2018-08-023-2/+19
|\ \ | | | | | | Properly explain all the analsys steps in CompilerStack
| * | Properly explain all the analsys steps in CompilerStackAlex Beregszaszi2018-07-313-2/+19
| | |
* | | Merge pull request #4522 from ethereum/fullEncodingTypechriseth2018-08-025-42/+37
|\ \ \ | |_|/ |/| | Isolate determining the encoding type into its own function.
| * | Isolate determining the encoding type into its own function.chriseth2018-08-015-42/+37
| | |
* | | Merge pull request #4603 from ethereum/smtlib2Alex Beregszaszi2018-08-024-18/+44
|\ \ \ | | | | | | | | [SMTLib2] Fix repeated declarations
| * | | Remove repeated declarations in Z3 and CVC4 as wellLeonardo Alt2018-08-012-7/+15
| | | |
| * | | [SMTLib2] Fix repeated declarationsLeonardo Alt2018-07-282-11/+29
| | | |
* | | | SMT model variables are sorted and printed as secondary source locationLeonardo Alt2018-08-021-3/+11
| | | |
* | | | Replace "value" by "<result>" in the SMT modelLeonardo Alt2018-08-021-3/+3
| | | |
* | | | Extend code comment about signatures.Daniel Kirchner2018-08-011-1/+2
| | | |
* | | | Do not exclude public state variables when looking for conflicting declarations.Daniel Kirchner2018-08-011-8/+1
| | | |
* | | | Merge pull request #4378 from ethereum/noBaseWithoutArgumentsAlex Beregszaszi2018-08-011-17/+7
|\ \ \ \ | | | | | | | | | | [BREAKING] Disallow calling base constructors without arguments.
| * | | | Correctly determine whether base constructor is called without parentheses.chriseth2018-08-011-11/+11
| | | | |
| * | | | Disallow calling base constructors without arguments.chriseth2018-08-011-14/+4
| | |/ / | |/| |
* / | | Guard CycleDetector against recursion exhaustion.Christian Parpart2018-08-013-3/+9
|/ / / | | | | | | | | | fixes #3935.
* | | Disallow conversion between unrelated contract types.chriseth2018-08-012-8/+7
| | |