Commit Graph
4163 Commits
Author SHA1 Message Date
chriseth cc6fa6d61f Merge pull request #4822 from ethereum/addressStaticCall
Add ``staticcall`` to ``address``.
2018-08-16 00:13:21 +02:00
chriseth 455345871d More safeguards for (library) function types. 2018-08-15 17:11:43 +02:00
Leonardo Alt faed71c6b1 Review suggestions 2018-08-15 17:11:18 +02:00
Leonardo Alt b6c839e817 Disallow indexed reference types in events when using ABIEncoderV2 2018-08-15 17:11:18 +02:00
Daniel Kirchner 7ca0aaaf6f Add `staticcall to address`. 2018-08-15 16:06:48 +02:00
chriseth 6c0261e6ab Merge pull request #4390 from ethereum/abidecode
Add abi.decode
2018-08-15 12:31:26 +02:00
chriseth 9328ea4c3c Add abi.decode(bytes data, (...)) 2018-08-15 10:45:16 +02:00
bakaoh 3fa8829845 Fixes #4718: High CPU usage when using large variable names 2018-08-15 10:23:08 +02:00
chriseth cc54f6c425 Merge pull request #4738 from ethereum/dataloc_merged
Enforce data location.
2018-08-14 21:38:07 +02:00
chriseth 8f27fb1f4a Merge pull request #4542 from aarlt/constructor_natspec
Fix: natspec annotations on constructors
2018-08-14 19:13:25 +02:00
Chase McDermott 683bce1869 Refactor data location check. 2018-08-14 18:07:15 +02:00
chriseth 3f42118d19 Merge pull request #4765 from ethereum/fixes-issue-4673
[WIP] Fixes issue where computing storage size for a number would take too long (or even cause a crash).
2018-08-14 17:34:04 +02:00
Jesse Busman c059119145 Add implicit convertibility to function pointer with higher state mutability 2018-08-14 17:13:10 +02:00
chriseth ec7ccbdf86 Merge pull request #4782 from ethereum/encodePackedArrayOfStructs
Encode packed array of structs
2018-08-14 16:32:57 +02:00
Christian Parpart 43bda53410 Fixes issue where computing storage size for a number would take too long.
Fixes #4673.
2018-08-14 15:38:10 +02:00
Christian Parpart 81faafe7f2 Adds support for structs in interfaces.
Closes #4733.
2018-08-14 15:36:03 +02:00
chriseth 6ca3973944 Merge pull request #4777 from ethereum/typeConversionMemory
Defaul data location for type conversions is memory.
2018-08-14 11:36:19 +02:00
chriseth 3dd31b704a Merge pull request #4798 from ethereum/mappingArgumentsAndReturns
Mapping arguments and returns
2018-08-13 17:27:29 +02:00
chriseth ae8218543b Merge pull request #4696 from ethereum/byteLiteralConversion
Disallow ambiguous implicit and explicit conversions from number literals to bytesXX
2018-08-13 17:25:30 +02:00
Daniel Kirchner 341128962f Allow mappings of arrays as arguments and return values of internal functions. 2018-08-13 16:33:37 +02:00
Daniel Kirchner 4ae59acc09 Consider mappings return values in control flow analysis. 2018-08-13 16:33:37 +02:00
Daniel Kirchner a9f31da411 Allow mapping arguments and return values in all internal functions. 2018-08-13 15:50:22 +02:00
chriseth bd567a22c9 Defaul data location for type conversions is memory. 2018-08-13 14:38:12 +02:00
Daniel Kirchner 57ada1d69e Allow mapping arguments and return values in internal library functions. 2018-08-13 14:31:10 +02:00
Daniel Kirchner 7d7abeb149 Disallow ambiguous conversions between number literals and bytesXX types. 2018-08-13 14:27:01 +02:00
Daniel Kirchner 954d7433bd Disallow remappings with empty prefix. 2018-08-10 19:26:48 +02:00
chriseth 0b65b2dff6 Disallow packed encoding of arrays of structs. 2018-08-09 21:16:51 +02:00
chriseth 6954f83a0c Merge pull request #4790 from ethereum/fixCalldata
Fix data location of external reference parameters.
2018-08-09 19:40:15 +02:00
Daniel Kirchner b6e352f694 Merge pull request #4767 from ethereum/cvc4Build
Add workarounds for building against CVC4 on ArchLinux.
2018-08-09 15:45:52 +02:00
chriseth c9ca083d14 Fix data location of external reference parameters. 2018-08-09 15:04:00 +02:00
Alex Beregszaszi ed52f422b7 Rename FunctionKind SHA3 to KECCAK256 (as the instruction was renamed in libevmasm) 2018-08-08 22:37:40 +01:00
Alexander Arlt f76d4d5919 Fix: natspec annotations on constructors
- natspec annotations on constructore where ignored.
2018-08-08 21:53:35 +02:00
chriseth d634d20b5b Merge pull request #4684 from ethereum/underscores_in_numeric_literals
[BREAKING] Underscores in numeric literals
2018-08-08 21:36:57 +02:00
Daniel Kirchner c7a0f44159 Do not force GMP to be present as dependency of CVC4, but also allow CLN instead. 2018-08-08 19:02:59 +02:00
Daniel Kirchner 9b4546c487 Add workarounds for building against CVC4 on ArchLinux. 2018-08-08 19:02:59 +02:00
Alex Beregszaszi 551343ae3e Merge pull request #4665 from mattaereal/cmake-patch-solver
cmake option added to make solvers optional
2018-08-08 17:58:01 +01:00
Alex Beregszaszi 9d782cc39c Merge pull request #4770 from ethereum/throw-codegen
Remove code generation for Throw statement
2018-08-08 17:55:27 +01:00
Alex Beregszaszi bb071f3075 Merge pull request #4769 from ethereum/inlineasm-overloading-resolution
Provide nicer error message when referencing overloaded references
2018-08-08 17:55:10 +01:00
Alex Beregszaszi a9819aa8bc Remove code generation for Throw statement
It is disallowed in the type system.
2018-08-08 17:02:25 +01:00
Matías Aereal Aeón 4b20708c49 cmake flags to make solvers optional. Implementation of #4651 2018-08-08 12:43:57 -03:00
Alex Beregszaszi 9062704054 Merge pull request #4753 from mattaereal/boost-to-string-patch
Replace boost:lexical_cast<std::string> for std::to_string.
2018-08-08 16:07:25 +01:00
Alex Beregszaszi 3c791d637d Provide nicer error message when referencing overloaded references 2018-08-08 15:59:24 +01:00
Alex Beregszaszi efeffa8083 Merge pull request #4761 from ethereum/libsolc-exceptions
Mark libsolc external C functions as noexcept
2018-08-08 15:56:12 +01:00
Matías Aereal Aeón e902ce1aa0 Removing std:: from std::to_string and include for boost/lexical_cast 2018-08-08 11:26:30 -03:00
Alex Beregszaszi 1bfb841771 Remove experimental 0.5.0 pragma 2018-08-08 14:05:36 +01:00
chriseth de8e9114fd Merge pull request #4740 from ethereum/enforceNumberOfReturnValues
Disallow empty return in function with return arguments.
2018-08-08 14:59:09 +02:00
Alex Beregszaszi 5b4ad10b3c Mark StandardCompiler::compile as noexcept
It has a generic catch statement and shouldn't leak out exceptions.
2018-08-08 13:22:40 +01:00
Christian Parpart b9222808f6 Cleanup & polish numbers-with-underscores parsing, also improving tests. 2018-08-08 13:38:46 +02:00
chriseth d0863f4994 Merge pull request #4748 from ethereum/validate-identifier
Assert that type identifier contains only valid characters
2018-08-08 12:50:45 +02:00
chriseth fd12c718f6 Merge pull request #4745 from ethereum/nameResolverNoEarlyExit
Do not stop after the first error in reference resolution.
2018-08-08 12:49:46 +02:00