chriseth
|
d12db7ec52
|
Merge pull request #8994 from ethereum/fixInvertedBinaryOp
Fix type inversion for shift and exp operators.
|
2020-06-03 14:11:16 +02:00 |
|
Mathias Baumann
|
6f8b5fe53b
|
Disallow override with non-public state variables
|
2020-06-03 14:03:26 +02:00 |
|
chriseth
|
c8b9d24eba
|
Merge pull request #9106 from ethereum/develop
Merge develop into breaking.
|
2020-06-03 13:51:28 +02:00 |
|
chriseth
|
a6c773bd96
|
Fix type inversion for shift and exp operators.
|
2020-06-03 13:46:26 +02:00 |
|
chriseth
|
e7f3c042b6
|
Struct member access for storage and memory.
|
2020-06-03 10:37:39 +02:00 |
|
chriseth
|
37e8d78cff
|
[Sol->Yul] Implement getters.
|
2020-06-03 10:33:37 +02:00 |
|
Leonardo
|
96ce4abe0e
|
Merge pull request #9069 from ethereum/smt_try
[SMTChecker] Fix internal error on try/catch
|
2020-06-02 21:09:49 +02:00 |
|
chriseth
|
c07254f5ac
|
Merge pull request #9055 from ethereum/issue-8881
Output error when forward referencing constants in inline assembly
|
2020-06-02 17:10:56 +02:00 |
|
chriseth
|
0e11d468cc
|
Merge pull request #9064 from ethereum/FixedPointType-solAssert
Added an assert for FixedPointType in InlineAssembly
|
2020-06-02 16:57:46 +02:00 |
|
Leonardo Alt
|
10162016ae
|
[SMTChecker] Fix internal error on try/catch
|
2020-06-02 16:51:53 +02:00 |
|
Leonardo
|
97cb091ada
|
Merge pull request #9068 from ethereum/smt_fix_state_var_init_call
[SMTChecker] Relax assertion about callstack
|
2020-06-02 15:53:14 +02:00 |
|
Mathias Baumann
|
bdc2c63327
|
Output error when forward referencing constants in inline assembly
|
2020-06-02 14:37:54 +02:00 |
|
Leonardo Alt
|
ede39fc2da
|
[SMTChecker] Relax assertion about callstack
|
2020-06-02 12:50:51 +02:00 |
|
Harikrishnan Mulackal
|
0bc9f772e7
|
Added an assert for FixedPointType in InlineAssembly
|
2020-06-02 13:31:10 +05:30 |
|
Leonardo Alt
|
2128ff9f13
|
Fix ICE on push for member access
|
2020-05-29 19:13:27 +02:00 |
|
Leonardo Alt
|
e5d25692a5
|
[SMTChecker] Fix BMC targets with FP
|
2020-05-29 18:13:13 +02:00 |
|
chriseth
|
0b216f5771
|
Merge pull request #9050 from ethereum/smt_fix_nonvalue_asgn
[SMTChecker] Fix ICE on index access assignment inside single branches
|
2020-05-28 16:25:46 +02:00 |
|
chriseth
|
65d8b6cf75
|
Merge pull request #9033 from a3d4/partfix-5819-add-errorid-to-error-class
Add unique ID to Error class
|
2020-05-28 16:24:47 +02:00 |
|
Leonardo Alt
|
b90fb1cab6
|
[SMTChecker] Fix ICE on index access assignment inside single branches
|
2020-05-28 15:56:46 +02:00 |
|
a3d4
|
c959341720
|
Add errorId to Error class
|
2020-05-28 15:00:33 +02:00 |
|
Leonardo Alt
|
a73ec6a82f
|
[SMTChecker] Fix ICE in inlining function calls while short circuiting
|
2020-05-28 13:14:19 +02:00 |
|
Leonardo
|
097954bc80
|
Merge pull request #9049 from ethereum/smt_fix_fp
[SMTChecker] Fix fixed point inc/dec
|
2020-05-28 13:13:23 +02:00 |
|
chriseth
|
f608e50bad
|
Merge pull request #9029 from ethereum/fewerInternalSourceRefs
Do not set source locations for small internal assembly routines.
|
2020-05-28 11:14:20 +02:00 |
|
Leonardo Alt
|
cb1cbbc1f1
|
[SMTChecker] Fix fixed point inc/dec
|
2020-05-28 10:56:06 +02:00 |
|
chriseth
|
ee8307ceed
|
Merge pull request #9044 from ethereum/issue-9028
Fix failure to find overload resolution when overrides are involved
|
2020-05-28 10:33:01 +02:00 |
|
Leonardo Alt
|
9e9f0c52e1
|
[SMTChecker] Support to bitwise
|
2020-05-27 20:59:00 +02:00 |
|
Mathias Baumann
|
a846c18e67
|
Fix failure to find overload resolution when overrides are involved
|
2020-05-27 18:31:56 +02:00 |
|
chriseth
|
eb923af09c
|
Do not set source locations for small internal assembly routines.
|
2020-05-27 18:26:46 +02:00 |
|
chriseth
|
894478ff8c
|
Merge pull request #9038 from ethereum/develop
Merge develop into breaking.
|
2020-05-27 15:24:27 +02:00 |
|
chriseth
|
afa873fe9f
|
Merge pull request #8913 from ethereum/yul-remove-pc-instr
Mark EVM instruction `pc()` as deprecated when used in inline assembly.
|
2020-05-27 12:10:32 +02:00 |
|
Christian Parpart
|
b7fa5d5040
|
Mark EVM instruction pc() as deprecated when used in inline assembly.
|
2020-05-27 12:07:23 +02:00 |
|
chriseth
|
1bf706085d
|
Merge pull request #9030 from ethereum/issue-8923
Fix ICE when trying to decode too large static arrays
|
2020-05-27 11:45:39 +02:00 |
|
chriseth
|
0aa3fb5026
|
Merge pull request #9014 from ethereum/sol-yul-abidecode
[Sol - Yul] Add support for ABIDecode.
|
2020-05-27 11:44:13 +02:00 |
|
chriseth
|
f066050ec0
|
Merge pull request #9024 from ethereum/namableTypes
Disallow non-namable types for inline arrays.
|
2020-05-27 09:21:07 +02:00 |
|
Kamil Śliwak
|
f574d8ec3a
|
Don't assume that an expression cannot be associated with a function declaration
|
2020-05-27 00:05:18 +02:00 |
|
Alexander Arlt
|
118cb13476
|
[Sol - Yul] Add support for ABIDecode.
|
2020-05-26 13:30:37 -05:00 |
|
Mathias Baumann
|
884e7cbffc
|
Fix ICE when trying to decode too large static arrays
|
2020-05-26 19:36:18 +02:00 |
|
Alexander Arlt
|
cb5bfc7436
|
Update natspec comments on state variables.
- changing some warnings to errors
|
2020-05-26 11:18:24 -05:00 |
|
chriseth
|
309f0fbc8a
|
Unimplemented assert for conversion from calldata slices to memory.
|
2020-05-26 18:17:36 +02:00 |
|
chriseth
|
d0b6de580f
|
Disallow non-namable types for inline arrays.
|
2020-05-26 18:17:35 +02:00 |
|
chriseth
|
e4b31e7230
|
Introduce named concept for types.
|
2020-05-26 18:17:25 +02:00 |
|
chriseth
|
50b200a5d5
|
Merge pull request #8797 from ethereum/sol-yul-populating-internal-dispatch-on-demand
[Sol->Yul] Populating internal dispatch on demand
|
2020-05-26 18:17:05 +02:00 |
|
chriseth
|
d989dfd43f
|
Merge pull request #9027 from ethereum/issue-8265
Fix ICE by avoiding copyForLocation() on ArraySliceType
|
2020-05-26 17:49:11 +02:00 |
|
Mathias Baumann
|
b3cafe4583
|
Fix ICE by avoiding copyForLocation() on ArraySliceType
|
2020-05-26 17:27:46 +02:00 |
|
Kamil Śliwak
|
1a2e441bc5
|
Generate internal dispatch only for functions that might actually get called via pointers
- This also adds support for internal library calls as a side-effect since they'll now be pulled into the internal dispatch automatically.
|
2020-05-26 17:01:50 +02:00 |
|
chriseth
|
b7aa6cb1f7
|
Merge pull request #9026 from ethereum/sol-yul-refactor-new-conditional-whiskers-syntax-in-internal-dispatch
[Sol->Yul] New whiskers conditionals in internal dispatch template (refactor)
|
2020-05-26 17:00:43 +02:00 |
|
Kamil Śliwak
|
2716b5ff83
|
Replace conditionally empty whiskers variables for punctuation with <?+> syntax in IRGenerator::generateInternalDispatchFunctions()
|
2020-05-26 16:33:40 +02:00 |
|
Harikrishnan Mulackal
|
21e34d7ca9
|
Fixed seed for randomness, fixed conflicts in errorids
|
2020-05-26 18:21:47 +05:30 |
|
chriseth
|
5fedb4eab0
|
Merge pull request #9001 from a3d4/partfix-5819-refactor-typechecker
Refactor TypeChecker to assign different IDs to different errors
|
2020-05-26 11:59:54 +02:00 |
|
chriseth
|
9604174151
|
Rename asCallableFunction.
|
2020-05-26 11:35:12 +02:00 |
|
chriseth
|
e6b399c86e
|
Merge pull request #8942 from ethereum/calldataVariables
Calldata variables.
|
2020-05-26 11:34:40 +02:00 |
|
chriseth
|
33450619b1
|
Checks for uninitialized access to calldata variables.
|
2020-05-26 10:51:13 +02:00 |
|
chriseth
|
499cb0526f
|
Calldata variables.
|
2020-05-26 10:51:13 +02:00 |
|
chriseth
|
76d27bcfaa
|
Fix assumption for member not in memory.
|
2020-05-26 10:35:04 +02:00 |
|
Djordje Mijovic
|
4c3e78d046
|
Disallowing shifts by signed types
|
2020-05-26 10:18:21 +02:00 |
|
chriseth
|
69a028b49c
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-05-26 10:11:23 +02:00 |
|
chriseth
|
6d64095ccf
|
Merge pull request #8987 from ethereum/sol-yul-bound-functions
[Sol->Yul] Bound functions
|
2020-05-25 16:53:33 +02:00 |
|
chriseth
|
44e62c1fae
|
Merge pull request #8997 from ethereum/sol-yul-refactor-no-internal-functions-with-arbitrary-parameters
[Sol->Yul] Remove unnecessary code for handling internal functions with arbitrary parameters (refactor)
|
2020-05-25 16:47:10 +02:00 |
|
chriseth
|
042dc965fa
|
Merge pull request #8952 from ethereum/sol-yul-refactor-simplify-end-visit-for-internal-calls
[Sol->Yul] Simplify end visit for internal calls (refactor)
|
2020-05-25 16:46:36 +02:00 |
|
chriseth
|
8e31c345a8
|
Merge pull request #8978 from ethereum/disturbance_stack
Add proper unipmlemented errors for array copying
|
2020-05-25 15:34:45 +02:00 |
|
a3d4
|
936ea6f950
|
Refactor TypeChecker to assign different IDs to different errors
|
2020-05-25 13:40:14 +02:00 |
|
chriseth
|
91aff43404
|
Merge pull request #8998 from a3d4/partfix-5819-add-error-tags-to-declarationtypechecker
Add error IDs to DeclarationTypeChecker
|
2020-05-25 11:36:06 +02:00 |
|
Mathias Baumann
|
d45bb2aa07
|
Add proper unipmlemented errors for array copying
|
2020-05-25 10:48:42 +02:00 |
|
a3d4
|
a499ef16fa
|
Fix spelling errors
|
2020-05-25 02:54:37 +02:00 |
|
a3d4
|
5870253b00
|
Shorten a couple of lines
|
2020-05-21 17:38:47 +02:00 |
|
a3d4
|
38e65a909a
|
Remove DocStringAnalyzer and DocStringParser class-specific error reporting functions
|
2020-05-21 00:26:14 +02:00 |
|
a3d4
|
66a8c7d1ab
|
Remove ReferencesResolver class-specific error reporting functions
|
2020-05-21 00:04:26 +02:00 |
|
a3d4
|
3a75b1da4d
|
Remove DeclarationTypeChecker class-specific error reporting functions
|
2020-05-20 23:56:25 +02:00 |
|
Kamil Śliwak
|
4a2ce57bed
|
Add support for bound function calls in IR generator
|
2020-05-20 21:10:20 +02:00 |
|
Kamil Śliwak
|
a68b4ab7ed
|
IRGeneratorForStatements: Slightly reorganize local variables in endVisit(MemberAccess)
- Add memberFunctionType accessible in the whole function to avoid declaring it multiple times
- Add objectCategory
|
2020-05-20 21:09:27 +02:00 |
|
Kamil Śliwak
|
87c598863f
|
IRGeneratorForStatements: Remove unnecessary code for handling internal functions with arbitrary parameters
- Internal functions cannot have arbitrary parameters
|
2020-05-20 21:08:59 +02:00 |
|
Kamil Śliwak
|
0943333276
|
Simplify endVisit() for internal calls
- Define IRHelpers::referencedFunctionDeclaration() to avoid repeating the same dynamic_casts over and over again.
|
2020-05-20 21:07:37 +02:00 |
|
chriseth
|
74b9b094c0
|
Merge remote-tracking branch 'origin/develop' into HEAD
|
2020-05-20 17:22:47 +02:00 |
|
chriseth
|
29405c223b
|
Merge pull request #8951 from ethereum/sol-yul-refactor-split-internal-dispatch
[Sol->Yul] Split internal dispatch into separate enumeration and code generation (refactor)
|
2020-05-20 16:28:24 +02:00 |
|
Leonardo
|
56b5f1bb12
|
Merge pull request #8976 from ethereum/libsmtutil
libsmtutil
|
2020-05-20 16:14:37 +02:00 |
|
hrkrshnn
|
4a001d568e
|
Removed null members from JSON output
|
2020-05-20 16:56:33 +05:30 |
|
chriseth
|
678a801daf
|
Merge pull request #8921 from a3d4/partfix-5819-remove-erroroccurred-flag-continued
Remove a dedicated error flag from DeclarationTypeChecker and other classes, continued
|
2020-05-20 13:23:37 +02:00 |
|
chriseth
|
84092edc5d
|
Merge pull request #8914 from random-internet-cat/down-with-unique-ptr
Down with unique_ptr!
|
2020-05-20 13:22:06 +02:00 |
|
Leonardo Alt
|
0eb067ae4f
|
Add SMTLogicError exception catches
|
2020-05-20 13:18:33 +02:00 |
|
Kamil Śliwak
|
6c6a8a74e8
|
IRGenerationContext: Extract code for enumerating dispatchable functions from generateInternalDispatch() into a separate function
|
2020-05-20 13:16:08 +02:00 |
|
Leonardo Alt
|
7a91c9b971
|
Remove Type from SolverInterface
|
2020-05-20 12:55:19 +02:00 |
|
Leonardo Alt
|
45eba27424
|
Rename namespace
|
2020-05-20 12:55:18 +02:00 |
|
Leonardo Alt
|
087605ea02
|
Create libsmtutil
|
2020-05-20 12:55:18 +02:00 |
|
Kamil Śliwak
|
bd75543900
|
Add IRNames::internalDispatch() and use it in IRGenerationContext
|
2020-05-20 12:48:49 +02:00 |
|
Kamil Śliwak
|
22c0568d34
|
IRGenerationContext::internalDispatch(): Remove unused local YulUtilFunctions instance
|
2020-05-20 12:46:32 +02:00 |
|
Kamil Śliwak
|
7d2292fbaf
|
Rename IRGenerationContext::internalDispatch() to generateInternalDispatchFunction()
|
2020-05-20 12:46:31 +02:00 |
|
a3d4
|
6bb177ce77
|
Remove dedicated error flags from DocStringParser and DocStringAnalyser
|
2020-05-20 04:17:49 +02:00 |
|
a3d4
|
6dbf23d52a
|
Remove a dedicated error flag from ReferencesResolver
|
2020-05-20 04:08:32 +02:00 |
|
Kamil Śliwak
|
1a521cc7ac
|
Use YulArity in IR generator
|
2020-05-19 23:03:21 +02:00 |
|
Kamil Śliwak
|
16e58449ab
|
ir/Common: Add YulArity struct
|
2020-05-19 23:03:15 +02:00 |
|
chriseth
|
22d5caa979
|
Merge pull request #8532 from aarlt/structured-docs-variables-aarlt
Allow NatSpec comments for state variables
|
2020-05-19 19:26:35 +02:00 |
|
chriseth
|
d422a406ba
|
Merge pull request #8983 from ethereum/develop
Merge develop into breaking.
|
2020-05-19 18:05:28 +02:00 |
|
Alexander Arlt
|
af8bb5fb60
|
Allow natspec comments on state variables.
|
2020-05-19 11:01:52 -05:00 |
|
Erik Kundt
|
7d37ed4531
|
Adds structured docs for variable declarations.
- adds natspec generation for state variables.
- exports structured docs for state variables to JSON.
|
2020-05-19 11:01:52 -05:00 |
|
Kamil Śliwak
|
b0ae85b6b0
|
IRGenerationContext::internalDispatch(): Don't use asCallableFunction() to get internal function type
|
2020-05-19 18:00:50 +02:00 |
|
Djordje Mijovic
|
bd64b971b9
|
Fixing tests on breaking branch.
|
2020-05-19 17:42:19 +02:00 |
|
chriseth
|
f70ff0dfaa
|
Merge pull request #8977 from ethereum/mapping-type-error
Error when Mapping type in (non-local) storage is assigned to
|
2020-05-19 16:52:54 +02:00 |
|
Harikrishnan Mulackal
|
774edd4670
|
Error when Mapping type in (non-local) storage is assigned to
|
2020-05-19 19:12:38 +05:30 |
|
chriseth
|
3b27b4347c
|
Merge pull request #8916 from ethereum/smt_array_push_pop
[SMTChecker] Support array push/pop
|
2020-05-19 15:41:10 +02:00 |
|
chriseth
|
3275243c89
|
Merge pull request #8898 from mijovic/sol2YulByteArrayPush
[Sol->Yul] Implementing ByteArray push() and pop()
|
2020-05-19 15:28:01 +02:00 |
|
Djordje Mijovic
|
d235d0c166
|
[Sol->Yul] Implementing Byte array push() and pop()
|
2020-05-19 14:47:00 +02:00 |
|
Leonardo Alt
|
2435ab938c
|
Add verification target for empty pop
|
2020-05-18 16:35:56 +02:00 |
|
Leonardo Alt
|
d4d26c02e4
|
Assume that push will not overflow
|
2020-05-18 16:35:56 +02:00 |
|
Leonardo Alt
|
82db35e563
|
[SMTChecker] Support array push/pop
|
2020-05-18 16:33:34 +02:00 |
|
Jason Cobb
|
20c8851f43
|
Use optional for CompilerStack::Contract source mappings
|
2020-05-18 10:24:38 -04:00 |
|
chriseth
|
f92a4f1965
|
Provide runtime object in Yul mode.
|
2020-05-18 13:48:23 +02:00 |
|
Kamil Śliwak
|
465e4d4088
|
Extract more functions for generating function and variable names into IRNames
|
2020-05-15 14:51:00 +02:00 |
|
Leonardo Alt
|
a0c605aa85
|
[SMTChecker] Support array length
|
2020-05-14 23:32:29 +02:00 |
|
Kamil Śliwak
|
7af7273b60
|
Move static functions for constructing names from IRGenerationContext into the new Common module
|
2020-05-14 19:48:00 +02:00 |
|
chriseth
|
2d1e7d9504
|
Merge pull request #8931 from random-internet-cat/lazy-init
Add LazyInit
|
2020-05-14 18:54:19 +02:00 |
|
chriseth
|
7ef114db9a
|
Merge pull request #8841 from ethereum/sol_yul_ripemd160_ecrecover
[Sol - Yul] Add support for ripemd160 & ecrecover.
|
2020-05-14 18:43:55 +02:00 |
|
Alexander Arlt
|
91e9d54c71
|
[Sol - Yul] Add support for ripemd160 & ecrecover.
|
2020-05-14 10:44:39 -05:00 |
|
chriseth
|
993a7941b1
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-05-14 17:24:40 +02:00 |
|
Jason Cobb
|
eae31559be
|
Use LazyInit for CompilerStack::Contract members
|
2020-05-14 10:39:53 -04:00 |
|
Jason Cobb
|
cffd1eaff1
|
Use LazyInit for ContractDefinition::m_interfaceFunctionList
|
2020-05-14 10:32:01 -04:00 |
|
Jason Cobb
|
413fa92cee
|
Use LazyInit for ContractDefinition::m_interfaceEvents
|
2020-05-14 10:29:29 -04:00 |
|
Jason Cobb
|
0e26700f65
|
Use LazyInit for MemberList::m_storageOffsets
|
2020-05-14 10:29:26 -04:00 |
|
chriseth
|
1b86f27002
|
Merge pull request #8935 from ethereum/moveScopesIntoResolver
Move scopes into resolver.
|
2020-05-14 14:20:58 +02:00 |
|
chriseth
|
e751a1c23d
|
Move scopes into resolver.
|
2020-05-14 13:16:47 +02:00 |
|
chriseth
|
257bc6a416
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-05-14 13:04:46 +02:00 |
|
Djordje Mijovic
|
472fb21ee0
|
[Sol->Yul] Enabling new bytes(n)
|
2020-05-14 12:55:14 +02:00 |
|
chriseth
|
504b8d29c9
|
Merge pull request #8907 from ethereum/licenseIdentifier
Check for SPDX license identifiers.
|
2020-05-14 01:21:24 +02:00 |
|
Daniel Kirchner
|
97296d8622
|
Allow ABI encoding for array slices without explicit casts.
|
2020-05-13 18:20:07 +02:00 |
|
chriseth
|
3872a1f000
|
Add support for SPDX license identifiers.
|
2020-05-13 18:16:59 +02:00 |
|
chriseth
|
e9446475bb
|
Merge pull request #8924 from ethereum/arraySliceBug
Fix array slice bug.
|
2020-05-13 16:06:28 +02:00 |
|
Daniel Kirchner
|
6f04664cfa
|
Disallow array slicing for arrays with dyanmically encoded base types.
|
2020-05-13 15:52:22 +02:00 |
|
chriseth
|
aca700497c
|
Merge pull request #8903 from ethereum/exponentiation-bug
Fix exponentiation bug
|
2020-05-13 15:49:23 +02:00 |
|
Harikrishnan Mulackal
|
47e9a13e8a
|
Fix exponentiation bug
|
2020-05-13 13:53:06 +05:30 |
|
chriseth
|
b2122d479f
|
Merge pull request #8915 from a3d4/partfix-5819-remove-erroroccurred-flag
Remove a dedicated error flag from DeclarationTypeChecker and other classes
|
2020-05-12 20:18:33 +02:00 |
|
a3d4
|
02d1f8c41a
|
Remove a dedicated error flag from DeclarationTypeChecker
|
2020-05-12 18:13:17 +02:00 |
|
chriseth
|
0be56a0abf
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-05-12 17:48:53 +02:00 |
|
chriseth
|
901b421bb8
|
Merge pull request #8910 from ethereum/natspec-return-bug
Bug that ignored return tag when no other devdoc tags were present
|
2020-05-12 16:47:07 +02:00 |
|
Harikrishnan Mulackal
|
095e17f7f9
|
Bug that ignored return tag when no other devdoc tags were present
|
2020-05-12 20:05:22 +05:30 |
|
chriseth
|
077cab0860
|
Merge pull request #8902 from a3d4/partfix-5819-add-more-error-ids
Add error IDs to OverrideChecker, BMC and ContractLevelChecker
|
2020-05-12 13:22:42 +02:00 |
|
a3d4
|
02eee54f38
|
Add error IDs to ContractLevelChecker
|
2020-05-12 11:42:29 +02:00 |
|
a3d4
|
7cae074b8a
|
Add error IDs to BMC
|
2020-05-12 11:39:18 +02:00 |
|
a3d4
|
1d5350e32f
|
Add error IDs to OverrideChecker
|
2020-05-12 02:26:02 +02:00 |
|
Daniel Kirchner
|
b9c63e0032
|
Merge pull request #8894 from ethereum/dockerUbuntuFocal
Update Dockerfiles and CI scripts to Ubuntu 20.04 and simplify them.
|
2020-05-12 00:52:21 +02:00 |
|
Daniel Kirchner
|
c2f5a66a79
|
Implement .creationCode for Sol->Yul.
|
2020-05-11 18:51:51 +02:00 |
|
Daniel Kirchner
|
3fbde6e782
|
Merge pull request #8856 from ethereum/implicitConstructorCallvalueCheck
Implicit constructor callvalue check
|
2020-05-11 18:50:36 +02:00 |
|
Daniel Kirchner
|
c1ed5bbb0f
|
Update Dockerfiles and CI scripts to Ubuntu 20.04 and simplify them.
|
2020-05-11 17:35:01 +02:00 |
|
chriseth
|
debee799dc
|
Merge pull request #8892 from ethereum/boost-cxx11
Replace boost/algorithm/cxx11 with C++11 features
|
2020-05-11 16:29:42 +02:00 |
|
Daniel Kirchner
|
79b217dfb3
|
Callvalue checks for implicit constructors.
|
2020-05-11 16:14:34 +02:00 |
|
chriseth
|
5566cd9f74
|
Merge pull request #8843 from ethereum/deprecate-now
[BREAKING] Deprecate keyword now
|
2020-05-11 16:09:21 +02:00 |
|
chriseth
|
f1e0aa7a56
|
Merge pull request #8763 from ethereum/bareCall
IR code generation for call.
|
2020-05-11 16:06:54 +02:00 |
|
chriseth
|
e2f7e8a3a7
|
Merge pull request #8890 from ethereum/fixclangv10
Fix clang v10 compilation errors
|
2020-05-11 15:39:09 +02:00 |
|
Alex Beregszaszi
|
875415a132
|
Replace boost/algorithm/cxx11 with C++11 features
|
2020-05-11 14:27:54 +01:00 |
|
chriseth
|
c0bf529236
|
Support bare calls.
|
2020-05-11 15:11:46 +02:00 |
|
chriseth
|
4c13ce24f0
|
Merge pull request #8887 from ethereum/boost-fs
Remove boost::filesystem where it is not needed
|
2020-05-11 15:09:54 +02:00 |
|
chriseth
|
0248303c15
|
Merge pull request #8872 from ethereum/int-min-max
implemented type(X).min and type(X).max for all integer types
|
2020-05-11 15:08:19 +02:00 |
|
Mathias Baumann
|
fe43132003
|
Fix clang v10 compilation errors
|
2020-05-11 14:59:51 +02:00 |
|
Alex Beregszaszi
|
76dfda7c1c
|
Replace boost:variant with std::variant in StandardCompiler
|
2020-05-11 12:39:53 +01:00 |
|
Alex Beregszaszi
|
ad1d2558eb
|
Drop Boost::system from libsolidity
|
2020-05-11 11:36:11 +01:00 |
|
Alex Beregszaszi
|
c31a93b3f2
|
Remove boost::filesystem where it is not needed
A two uses in CommonIO remain for the compiler (plus testing/tools use it extensively)
|
2020-05-11 11:19:11 +01:00 |
|
Harikrishnan Mulackal
|
e54c4eecfc
|
implemented type(X).min and type(X).max for all integer types
|
2020-05-11 14:51:13 +05:30 |
|
a3d4
|
0b09a77689
|
Removed minor parameter redundancy
|
2020-05-09 01:45:02 +02:00 |
|
a3d4
|
c3e519a151
|
Add unique IDs to error reporting calls
|
2020-05-09 01:28:55 +02:00 |
|
chriseth
|
aa7684fb54
|
Merge pull request #8864 from a3d4/fix-error-reporting-source-code-format
Fix error reporting source code format
|
2020-05-07 20:15:51 +02:00 |
|
chriseth
|
a0e291bd06
|
Implement Yul IR generation for abi.encode*
|
2020-05-07 19:39:15 +02:00 |
|
chriseth
|
d0b82fe854
|
Merge pull request #8869 from ethereum/useSlotes
Use vector of slots.
|
2020-05-07 19:03:59 +02:00 |
|
chriseth
|
75ca072ae6
|
Assertion about getters for non-value type immutables.
|
2020-05-07 18:18:40 +02:00 |
|
chriseth
|
f38cf85482
|
Use vector of slots.
|
2020-05-07 17:54:04 +02:00 |
|
Mathias Baumann
|
eb4926cb48
|
run addMissingFunctions only once
|
2020-05-07 17:06:11 +02:00 |
|
chriseth
|
3212cb6caa
|
Merge pull request #8859 from ethereum/noRuntimeForImmutable
trigger error when runtimeCode is called on contracts with immutables
|
2020-05-07 16:08:27 +02:00 |
|
chriseth
|
f42dc70c9f
|
Merge pull request #8863 from ethereum/nonReversedEncoder
Introduce non-reversed version of tupleEncoder.
|
2020-05-07 15:47:32 +02:00 |
|
Mathias Baumann
|
50e59f1008
|
trigger error when runtimeCode is called on contracts with immutables
|
2020-05-07 15:10:04 +02:00 |
|
chriseth
|
e986fde0c1
|
Introduce non-reversed version of tupleEncoder.
|
2020-05-07 15:08:09 +02:00 |
|
chriseth
|
80b4e51fd6
|
Merge pull request #8865 from a3d4/fix-8712-abi-compiler-error
Fix ABI internal compiler error caused by an internal constructor
|
2020-05-07 10:55:00 +02:00 |
|
a3d4
|
5e9502bfae
|
Fix ABI internal compiler error caused by an internal constructor
|
2020-05-07 05:49:49 +02:00 |
|
a3d4
|
7e1835af71
|
Fix error reporting source code format
|
2020-05-07 04:46:02 +02:00 |
|
chriseth
|
6fb112fa8e
|
Remove some unneeded headers.
|
2020-05-07 01:49:46 +02:00 |
|
chriseth
|
5e46ef7df5
|
Merge pull request #8680 from a3d4/fix-5819-tagging-error-cases
Tag error cases with unique IDs
|
2020-05-07 01:12:56 +02:00 |
|
Alex Beregszaszi
|
327c75bc1b
|
IR generation for shifts
|
2020-05-06 19:14:23 +02:00 |
|
chriseth
|
76275cf34a
|
Merge pull request #8824 from ethereum/solYulDirtyMemory
Fix accessing memory reference types in yul codegen and clean up on memory reads.
|
2020-05-06 16:17:19 +02:00 |
|
Daniel Kirchner
|
234ffcf278
|
Merge pull request #8718 from ethereum/irConstants
IR generation for constants.
|
2020-05-06 16:05:17 +02:00 |
|
a3d4
|
8f68c04358
|
Add unique IDs to error reporting calls
|
2020-05-06 13:53:46 +02:00 |
|
a3d4
|
e3641b88ec
|
Groundwork. Prepare for automatic tagging
[Not compilable until the next commit]
|
2020-05-06 13:52:28 +02:00 |
|
Daniel Kirchner
|
c25a3eba14
|
Fix accessing memory reference types in yul codegen and clean up on memory reads.
|
2020-05-06 11:34:11 +02:00 |
|
Harikrishnan Mulackal
|
b5612f96c9
|
Deprecated identifier now
|
2020-05-05 21:11:15 +05:30 |
|
chriseth
|
02c20698c9
|
IR generation for constants.
|
2020-05-05 17:07:55 +02:00 |
|
Daniel Kirchner
|
4d739b16a4
|
Cleanup function for internal function pointers.
|
2020-05-05 13:07:10 +02:00 |
|
Daniel Kirchner
|
7ad319687d
|
Sol->Yul: Add cleanup to operations.
|
2020-05-05 13:06:01 +02:00 |
|
Harikrishnan Mulackal
|
dd7d63925a
|
Merge pull request #8806 from ethereum/natspec-constructor
[BREAKING] Natspec constructor and functions have consistent userdoc
|
2020-05-05 15:47:34 +05:30 |
|
Djordje Mijovic
|
e8f6f63e77
|
[Sol2Yul] Adding support for builtin revert(string)
|
2020-05-05 07:05:39 +02:00 |
|
Djordje Mijovic
|
cf607aa887
|
[Sol->Yul] Checking if there is base contract when calling base constructror via modifier invocation.
|
2020-05-04 20:38:22 +02:00 |
|
chriseth
|
ecbf216354
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-05-04 18:46:45 +02:00 |
|
chriseth
|
1aef9c7d20
|
Merge pull request #8777 from ethereum/sol_yul_simplefunctions
[Sol - Yul] Add some built-in functions.
|
2020-05-04 16:07:10 +02:00 |
|
chriseth
|
51ccb1519f
|
Yul codegen for immutables.
|
2020-05-04 15:00:50 +02:00 |
|
hrkrshnn
|
aa65e9423c
|
Uniform output in functions and constructor NatSpec
|
2020-05-04 12:39:43 +05:30 |
|
Alexander Arlt
|
a9f4d14010
|
[Sol - Yul] Add support for send(..) & transfer(..)
|
2020-05-01 08:32:51 -05:00 |
|
Alexander Arlt
|
151e637336
|
[Sol - Yul] Add some built-in functions.
- simplifications for GasLeft, Selfdestruct and BlockHash.
- add support for addmod & mulmod.
|
2020-04-30 14:10:09 -05:00 |
|
chriseth
|
602b29cba7
|
Merge pull request #8796 from a3d4/fix-8760-typechecker-compiler-error
[Type Checker] Fix internal error when applying unary operators to tuples with empty components
|
2020-04-29 10:14:15 +02:00 |
|
a3d4
|
3bd15655cb
|
Type Checker: Fix internal error when applying unary operators to tuples with empty components
|
2020-04-29 02:18:48 +02:00 |
|
Jason Cobb
|
8973732b74
|
Compare categories instead of types in ContractCompiler(740)
|
2020-04-28 13:13:45 -04:00 |
|
chriseth
|
1fe55370f4
|
Merge remote-tracking branch 'origin/develop' into HEAD
|
2020-04-28 13:02:06 +02:00 |
|
Djordje Mijovic
|
f3f729549d
|
[Sol->Yul] Enabling creation function call
|
2020-04-27 16:15:57 +02:00 |
|
Alex Beregszaszi
|
99aa821410
|
Merge pull request #8720 from ethereum/irSha256
IR generation for sha256.
|
2020-04-27 13:44:26 +01:00 |
|
Alex Beregszaszi
|
aa0a69b47f
|
IRGenerator: include assertion for FunctionType::Kind::Declaration
|
2020-04-27 12:03:44 +01:00 |
|
chriseth
|
dda883b585
|
IR generation for sha256.
|
2020-04-27 11:10:20 +02:00 |
|
chriseth
|
61b1369fc2
|
Merge pull request #8701 from ethereum/solc-yul-chromosome
solc option for selecting yul optimisations
|
2020-04-27 10:44:14 +02:00 |
|
Alexander Arlt
|
66edaf43f4
|
[Sol - Yul] Add support for built-in logN().
|
2020-04-25 11:10:28 -05:00 |
|
Alexander Arlt
|
2fa26f4e92
|
[Sol - Yul] Add support for built-in selfdestruct(..).
|
2020-04-24 17:03:41 -05:00 |
|
Kamil Śliwak
|
c8b612536f
|
Add yulDetails.optimizerSteps to the standard JSON interface
|
2020-04-24 17:30:56 +02:00 |
|
Kamil Śliwak
|
c41a832f65
|
Move the default optimisation steps from OptimiserSuite to OptimiserSettings
- Now it's a mandatory parameter in OptimiserSuite::run()
|
2020-04-24 17:30:56 +02:00 |
|
Kamil Śliwak
|
d3da878200
|
Enable internal library calls
|
2020-04-24 15:00:51 +02:00 |
|
Kamil Śliwak
|
64bce597a1
|
IRGenerator: Enable code generation for libraries
|
2020-04-24 15:00:17 +02:00 |
|
Kamil Śliwak
|
56a85d6cb3
|
IRGeneratorForStatements: Handle internal calls to functions from specific base contracts as static calls rather than calls via pointers
|
2020-04-24 15:00:16 +02:00 |
|
Kamil Śliwak
|
397ea18b78
|
IRVariable: Fix improperly wrapped docstring
|
2020-04-24 15:00:16 +02:00 |
|
chriseth
|
2b39f3b988
|
Merge pull request #8766 from ethereum/sol_yul_gasleft
[Sol - Yul] Add support for built-in gasleft().
|
2020-04-24 14:24:01 +02:00 |
|
Leonardo Alt
|
059d0bdebb
|
Revert "Use Spacer option to improve performance of constant arrays"
This reverts commit 92059fa848 .
|
2020-04-24 11:55:58 +02:00 |
|
Alexander Arlt
|
aafa4583df
|
[Sol - Yul] Add support for built-in gasleft().
|
2020-04-23 17:14:03 -05:00 |
|
Kamil Śliwak
|
e65a5a562e
|
IRGenerationContext::internalDispatch(): Fix code generated when the function called via pointer does not return anything
|
2020-04-23 21:16:41 +02:00 |
|
hrkrshnn
|
051eec5c51
|
Converted warnings for .gas and .value into an error
|
2020-04-23 21:02:02 +05:30 |
|
hrkrshnn
|
e2e32d372f
|
virtual modifiers (in Abstract contracts) allow empty bodies
|
2020-04-23 17:26:59 +05:30 |
|
chriseth
|
16ed53ddd0
|
Merge pull request #8591 from mijovic/sol2YulConstructorParams
[Sol2Yul] Adding support for constructors with parameters (inheritance)
|
2020-04-23 12:56:54 +02:00 |
|
chriseth
|
edef6a0edd
|
Merge pull request #8757 from ethereum/removeMove
Remove unnecessary move.
|
2020-04-23 12:28:33 +02:00 |
|
chriseth
|
a371910674
|
Merge pull request #8642 from ethereum/interfaceid
Add support for interfaceId.
|
2020-04-23 12:24:49 +02:00 |
|
chriseth
|
5a160be128
|
Merge pull request #8754 from ethereum/smt_improve_array_performance
Use Spacer option to improve performance of constant arrays
|
2020-04-23 12:19:04 +02:00 |
|
chriseth
|
b864fe1c43
|
Remove unnecessary move.
|
2020-04-23 12:13:26 +02:00 |
|
chriseth
|
18ee96ac91
|
Merge pull request #8752 from a3d4/fix-8711-typechecker-compiler-error
Type Checker: Fix internal error when assigning to empty tuples
|
2020-04-23 12:01:00 +02:00 |
|
Leonardo Alt
|
92059fa848
|
Use Spacer option to improve performance of constant arrays
|
2020-04-23 10:45:02 +02:00 |
|
a3d4
|
c4bc77874b
|
Disallow empty tuples on the left hand side
|
2020-04-23 07:02:04 +02:00 |
|
a3d4
|
9538024c81
|
Fix #8711, #8277
|
2020-04-23 05:57:35 +02:00 |
|
Leonardo Alt
|
cfe3686116
|
Fix internal error when using array slices
|
2020-04-22 23:20:10 +02:00 |
|
Leonardo
|
6d98b907ef
|
Merge pull request #8746 from ethereum/smt_fix_fixed_point
Fix ICE with fixed point
|
2020-04-22 23:18:41 +02:00 |
|
Leonardo Alt
|
b191139f2a
|
Fix undefined behavior with nullptr
|
2020-04-22 20:49:40 +02:00 |
|
Leonardo Alt
|
83c9e82099
|
Fix ICE with fixed point
|
2020-04-22 19:57:00 +02:00 |
|
chriseth
|
6728e3ef94
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-04-22 17:21:32 +02:00 |
|
Djordje Mijovic
|
5329da93fb
|
[Sol2Yul] Adding support for constructors with parameters in case of inheritance
|
2020-04-22 14:47:08 +02:00 |
|
chriseth
|
4908101ad7
|
Yul IR generation for member access to type types.
|
2020-04-22 11:25:27 +02:00 |
|
chriseth
|
1d8e742296
|
Merge pull request #8684 from ethereum/yulForSelector
Yul codegen for `.selector`.
|
2020-04-20 16:32:11 +02:00 |
|
chriseth
|
41ef13129b
|
Merge pull request #8678 from ethereum/smt_remove_redundant_constraints
[SMTChecker] Remove redundant CHC constraints
|
2020-04-20 15:44:59 +02:00 |
|
chriseth
|
55483445e9
|
Merge pull request #8663 from ethereum/ir-function-generation-queue
[Sol->Yul] IR function generation queue (refactor)
|
2020-04-20 15:17:53 +02:00 |
|
chriseth
|
264c4264a1
|
Merge pull request #8644 from ethereum/refactor-lValueRequested
Replaced all instances of lValueRequested to willBeWrittenTo
|
2020-04-20 15:03:50 +02:00 |
|
chriseth
|
c24c4f85e4
|
Merge pull request #8665 from ethereum/recursiveStructRefactoring
Recursive struct refactoring and a bunch of ICE fixes.
|
2020-04-20 13:24:19 +02:00 |
|
hrkrshnn
|
4760b8589d
|
Replaced all instances of lValueRequested to willBeWrittenTo
|
2020-04-20 12:33:30 +05:30 |
|
Kamil Śliwak
|
c7947c1af6
|
Implement lazy function generation using function generation queue
|
2020-04-17 13:28:07 +02:00 |
|
Kamil Śliwak
|
1f28f79ae6
|
IRGenerator::generate(): Remove duplicate call to setMostDerivedContract()
- The same call happens in resetContext(_contract) called immediately before
|
2020-04-17 13:28:07 +02:00 |
|
Leonardo Alt
|
45f22e3ff4
|
Add functional map and fold generic functions
|
2020-04-16 19:21:36 +02:00 |
|
Alexander Arlt
|
3754a86ab2
|
Add support for interfaceID.
|
2020-04-16 12:17:40 -05:00 |
|
Daniel Kirchner
|
150497c12a
|
Stricter bounds for memory arrays.
|
2020-04-16 17:51:18 +02:00 |
|
Daniel Kirchner
|
f6d1cee06b
|
Ensure that public callable parameters are valid for calldata.
|
2020-04-16 17:23:20 +02:00 |
|
Daniel Kirchner
|
6093982606
|
Review suggestions.
|
2020-04-16 16:42:12 +02:00 |
|
Daniel Kirchner
|
6f06154eb5
|
Move direct struct recursion check to detect recursion in global structs.
|
2020-04-16 16:42:12 +02:00 |
|
Daniel Kirchner
|
b744a56801
|
Refactoring of errors and fixes for various ICEs.
|
2020-04-16 16:42:12 +02:00 |
|
Daniel Kirchner
|
df1809f8da
|
Annotate struct definitions with a recursive flag.
|
2020-04-16 16:42:12 +02:00 |
|
chriseth
|
f271dfa2e2
|
Yul codegen for .selector .
|
2020-04-16 13:42:58 +02:00 |
|
chriseth
|
06adbc2c59
|
Implement bit operations.
|
2020-04-16 00:33:45 +02:00 |
|
Leonardo Alt
|
bca43586c6
|
[SMTChecker] Remove redundant CHC constraints
|
2020-04-15 18:11:39 +02:00 |
|
Daniel Kirchner
|
b86c927505
|
Disallow virtual and override for constructors.
|
2020-04-15 13:58:37 +02:00 |
|