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 |
|
Alex Beregszaszi
|
64e3c9913f
|
Merge pull request #4736 from ethereum/removeFillRight
Remove remaining instances of ``fillRight``.
|
2018-08-08 11:27:37 +01:00 |
|
Balajiganapathi S
|
09a36cba02
|
Add stricter hex underscore rules
|
2018-08-08 12:05:51 +02:00 |
|
Balajiganapathi S
|
0000bfc604
|
Allow underscores in numbers.
|
2018-08-08 12:05:51 +02:00 |
|
Matías Aereal Aeón
|
7dae58cbcc
|
Replace boost:lexical_cast<std::string> for std::to_string.
|
2018-08-08 03:55:43 -03:00 |
|
Alex Beregszaszi
|
3064bd17bc
|
Assert that type identifier contains only valid characters
|
2018-08-07 22:29:21 +01:00 |
|
Alex Beregszaszi
|
4dc3335cda
|
Merge pull request #4744 from ethereum/smt-magic-variable
SMT: do not crash on referencing MagicVariableDeclaration
|
2018-08-07 21:30:14 +01:00 |
|
chriseth
|
43d6a9d763
|
Do not stop after the first error in reference resolution.
|
2018-08-07 22:04:59 +02:00 |
|
Alex Beregszaszi
|
f024efb7ab
|
SMT: do not crash on referencing MagicVariableDeclaration
|
2018-08-07 20:43:20 +01:00 |
|
Daniel Kirchner
|
cc83e69469
|
Disallow empty return expressions in functions with non-empty return parameters.
|
2018-08-07 20:48:07 +02:00 |
|
Daniel Kirchner
|
b11e39e25e
|
Remove remaining instances of `fillRight ` left over from tuple wildcards assignments.
|
2018-08-07 18:51:53 +02:00 |
|
chriseth
|
d7756322c0
|
Merge pull request #4731 from ethereum/interface-enum
Allow enums in interfaces
|
2018-08-07 17:20:05 +02:00 |
|
chriseth
|
901550e473
|
Merge pull request #4692 from ethereum/devcore-path
Move absolutePath/sanitizePath helpers from CompilerStack to libdevcore
|
2018-08-07 16:15:49 +02:00 |
|
chriseth
|
a949cffd24
|
Merge pull request #4699 from ethereum/cleanup_VariableDeclaration
libsolidity: Remove dead code wrt. VariableDeclaration::canHaveAutoType
|
2018-08-07 16:14:41 +02:00 |
|
chriseth
|
c61cc98d0d
|
Merge pull request #4726 from ethereum/moveNothrow
Make MemberList nothrow move constructible.
|
2018-08-07 16:11:59 +02:00 |
|
Alex Beregszaszi
|
a765b5b31c
|
Merge pull request #4720 from ethereum/abi-rational-type-identifier
Fix type identifiers for RationalNumberType (on negative numbers)
|
2018-08-07 14:25:11 +01:00 |
|
Alex Beregszaszi
|
13e37df97c
|
Allow enums in interfaces
|
2018-08-07 13:28:53 +01:00 |
|
Alex Beregszaszi
|
b0f9fc5af0
|
Fix type identifiers for RationalNumberType
|
2018-08-07 13:23:14 +01:00 |
|
chriseth
|
133fd3d302
|
Make MemberList nothrow move constructible.
|
2018-08-07 14:20:18 +02:00 |
|
Alex Beregszaszi
|
05cc7e79e1
|
More precise error message if using non-variables with _slot/_offset
|
2018-08-07 13:18:54 +01:00 |
|
Alex Beregszaszi
|
eb7b3862ac
|
Properly handle invalid references used together with _slot and _offset.
|
2018-08-07 13:18:38 +01:00 |
|
Alex Beregszaszi
|
8b2d630275
|
Merge pull request #4724 from ethereum/slot-in-assembly
Do not crash on using _slot and _offset suffixes on their own
|
2018-08-07 12:55:40 +01:00 |
|
Alex Beregszaszi
|
296ba24f7f
|
Do not crash on using _slot and _offset suffixes on their own
|
2018-08-07 12:14:12 +01:00 |
|
chriseth
|
71e26f6adb
|
Remove clone feature.
|
2018-08-07 11:10:50 +01:00 |
|
Christian Parpart
|
4c90ddf64a
|
libsolidity: Remove dead code wrt. VariableDeclaration::canHaveAutoType()
Closes #4667
|
2018-08-07 11:34:13 +02:00 |
|
Alex Beregszaszi
|
bd75d4268b
|
Move fullyQualifiedName to ContractDefinition only
|
2018-08-06 18:58:27 +02:00 |
|
chriseth
|
276724dedc
|
Merge pull request #4663 from ethereum/dropConstantAST
[BREAKING] Drop constant field from JSON AST
|
2018-08-06 18:55:12 +02:00 |
|
Alex Beregszaszi
|
eccc603291
|
FixedBytes(0) is invalid, do not check for it in ABIEncoderV2
|
2018-08-06 16:54:05 +02:00 |
|
chriseth
|
bc73617f5e
|
Merge pull request #4689 from ethereum/cleanup-050-tests
Cleanup 0.5.0 test cases
|
2018-08-06 14:45:31 +02:00 |
|
Alex Beregszaszi
|
3de0b8b7f0
|
Move absolutePath/sanitizePath helpers from CompilerStack to libdevcore
|
2018-08-06 12:54:22 +01:00 |
|
Alex Beregszaszi
|
3481d4e2ec
|
Merge pull request #4690 from ethereum/equalParameterTypes
Renamed FunctionType::hasEqualArgumentTypes to FunctionType::hasEqual…
|
2018-08-06 12:50:04 +01:00 |
|
Jesse Busman
|
3fcd62921e
|
Renamed FunctionType::hasEqualArgumentTypes to FunctionType::hasEqualParameterTypes
|
2018-08-06 13:05:06 +02:00 |
|
Alex Beregszaszi
|
08e431f94e
|
Remove unused 050 variable in ReferencesResolver
|
2018-08-06 12:03:00 +01:00 |
|
chriseth
|
9d03de1f25
|
Merge pull request #4671 from ethereum/mappingTupleAssignment
Disallow assignments to mappings within tuple assignments; allow for local variables.
|
2018-08-06 12:59:16 +02:00 |
|
chriseth
|
3576980710
|
Merge pull request #4644 from ethereum/event_struct_error
Disallow structs in events without ABIEncoderV2
|
2018-08-06 11:44:05 +02:00 |
|
chriseth
|
30f981fc2c
|
Merge pull request #4681 from ethereum/var-suggestion-crash
Fix declaration suggestion for var with different number of components
|
2018-08-06 11:21:54 +02:00 |
|
Daniel Kirchner
|
44374a5846
|
Remove "constant" from JSON AST.
|
2018-08-06 11:15:25 +02:00 |
|
Alex Beregszaszi
|
83e6c34526
|
Fix declaration suggestion for var with different number of components
|
2018-08-04 15:22:22 +01:00 |
|
Christian Parpart
|
a4ee1dfc83
|
Merge pull request #4412 from ethereum/v050-reference-resolver-errorTypeForLoose
[BREAKING] permanently set errorTypeForLoose from Warning to SyntaxError
|
2018-08-03 19:30:33 +02:00 |
|
Daniel Kirchner
|
f9b90feea0
|
Review suggestions; to be squashed.
|
2018-08-03 17:38:06 +02:00 |
|
Daniel Kirchner
|
1e4b5886d6
|
Allow assignments to local variables of mapping types.
|
2018-08-03 16:22:03 +02:00 |
|
Daniel Kirchner
|
c0a169ca90
|
Disallow assignments to mappings within tuple assignments.
|
2018-08-03 15:46:26 +02:00 |
|
Leonardo Alt
|
20c6cea7bb
|
Disallow structs in events without ABIEncoderV2
|
2018-08-03 13:41:27 +02:00 |
|
Daniel Kirchner
|
35c5b7de25
|
Turn warning about uninitialized storage returns into an error.
|
2018-08-02 19:34:38 +02:00 |
|
chriseth
|
009a55c82d
|
Merge pull request #4327 from ethereum/document-internals
Properly explain all the analsys steps in CompilerStack
|
2018-08-02 15:07:35 +02:00 |
|
chriseth
|
90a5928b88
|
Merge pull request #4522 from ethereum/fullEncodingType
Isolate determining the encoding type into its own function.
|
2018-08-02 15:01:38 +02:00 |
|
Christian Parpart
|
5d9320c70b
|
Disallow loos assembly in Solidity by permanently setting it to SyntaxError (from Warning)
|
2018-08-02 13:36:05 +01:00 |
|
Alex Beregszaszi
|
6003ed2abd
|
Merge pull request #4603 from ethereum/smtlib2
[SMTLib2] Fix repeated declarations
|
2018-08-02 12:04:58 +01:00 |
|
Leonardo Alt
|
90f319615f
|
SMT model variables are sorted and printed as secondary source location
|
2018-08-01 23:27:46 +02:00 |
|
Leonardo Alt
|
b6a2655513
|
Replace "value" by "<result>" in the SMT model
|
2018-08-01 23:27:11 +02:00 |
|
Daniel Kirchner
|
ce7c7aca79
|
Extend code comment about signatures.
|
2018-08-01 17:18:17 +02:00 |
|
Daniel Kirchner
|
30d9961efb
|
Do not exclude public state variables when looking for conflicting declarations.
|
2018-08-01 14:31:04 +02:00 |
|
Alex Beregszaszi
|
ce99a5ce7f
|
Merge pull request #4378 from ethereum/noBaseWithoutArguments
[BREAKING] Disallow calling base constructors without arguments.
|
2018-08-01 13:18:37 +01:00 |
|
chriseth
|
061ea0cfc6
|
Correctly determine whether base constructor is called without parentheses.
|
2018-08-01 12:28:27 +01:00 |
|
chriseth
|
7e5406dd89
|
Disallow calling base constructors without arguments.
|
2018-08-01 12:28:27 +01:00 |
|
Christian Parpart
|
38f9667e09
|
Guard CycleDetector against recursion exhaustion.
fixes #3935.
|
2018-08-01 12:02:59 +01:00 |
|
chriseth
|
7a8a243eef
|
Isolate determining the encoding type into its own function.
|
2018-08-01 11:55:57 +01:00 |
|