Mathias Baumann
|
21844aa545
|
Move event-outside-emit check to PostTypeChecker
refs #7566
|
2020-01-08 14:05:08 +01:00 |
|
Mathias Baumann
|
9f8d49e358
|
Move modifier context check to PostTypeChecker
refs #7566
|
2020-01-08 14:05:08 +01:00 |
|
chriseth
|
5ca3abd7cb
|
Merge pull request #8106 from random-internet-cat/move-contract-kind
Move ContractKind from ContractDefinition to file-scope
|
2020-01-08 13:06:26 +01:00 |
|
Christian Parpart
|
345f9928ab
|
Library libdevcore renamed to libsolutil.
|
2020-01-07 15:51:50 +01:00 |
|
Christian Parpart
|
6b23412fae
|
C++ namespace cleanup (except tests).
|
2020-01-07 15:51:50 +01:00 |
|
Jason Cobb
|
529405deb6
|
Move ContractKind from ContractDefinition to file-scope
|
2020-01-07 09:11:29 -05:00 |
|
Mathias L. Baumann
|
20cf9d9fef
|
Merge pull request #8038 from ethereum/statless-typechecker-7566
Refactor PostTypeChecker into multiple classes per usecase
|
2020-01-06 14:39:58 +01:00 |
|
chriseth
|
ece6463f56
|
Merge pull request #8069 from random-internet-cat/set-scope
Move scope of Scopable into new ScopableAnnotation
|
2019-12-20 08:22:36 +01:00 |
|
Jason Cobb
|
6679f92c8a
|
Move all references to scope into annotation
|
2019-12-19 21:45:16 -05:00 |
|
chriseth
|
7db88cfedd
|
Remove yul::Instruction .
|
2019-12-19 23:22:19 +01:00 |
|
Mathias Baumann
|
a8ca96cd3e
|
Refactor PostTypeChecker into multiple classes per usecase
|
2019-12-19 10:43:27 +00:00 |
|
chriseth
|
c175a468ab
|
Do not call ABIEncoderV2 experimental.
|
2019-12-12 10:59:07 +01:00 |
|
Leonardo Alt
|
1fb62b91d2
|
Add more override tests with public state variables
|
2019-12-11 15:15:51 +01:00 |
|
chriseth
|
70623665bf
|
Move helper structs and clean code.
|
2019-12-11 15:15:51 +01:00 |
|
chriseth
|
30732269f6
|
Consider state vars.
|
2019-12-11 15:15:51 +01:00 |
|
chriseth
|
57824566e6
|
Use proxies.
|
2019-12-11 15:15:51 +01:00 |
|
chriseth
|
3e1b00b459
|
Introduce proxies.
|
2019-12-11 15:15:51 +01:00 |
|
chriseth
|
90feb8f72a
|
Move Visibility out of Declaration.
|
2019-12-11 00:38:59 +01:00 |
|
chriseth
|
93d84f3554
|
Split out override checker into its own file.
|
2019-12-10 16:00:05 +01:00 |
|
chriseth
|
a5f7661075
|
Ambigous overrides for modifiers.
|
2019-12-09 18:43:59 +01:00 |
|
chriseth
|
152f42c6b2
|
Make ambigous override checker generic.
|
2019-12-09 18:41:39 +01:00 |
|
chriseth
|
e1d6ce2b66
|
Override checks for modifiers.
|
2019-12-09 18:41:39 +01:00 |
|
Daniel Kirchner
|
4c7f9f9751
|
Do not require overriding for functions in common base with unique implementation.
|
2019-12-09 16:04:45 +01:00 |
|
chriseth
|
e061f1e743
|
Merge remote-tracking branch 'origin/develop' into HEAD
|
2019-12-05 16:44:26 +01:00 |
|
Mathias Baumann
|
b7d5de59c5
|
Implement overridding of functions by public variables
|
2019-12-05 12:48:52 +00:00 |
|
Gaith Hallak
|
4d90180e24
|
Support referencing other constants in inline assembly
|
2019-12-05 13:27:17 +03:00 |
|
Daniel Kirchner
|
426f04b389
|
Implement and fix overriding unimplemented and implemented functions with unimplemented functions.
|
2019-12-05 09:26:43 +01:00 |
|
Daniel Kirchner
|
8b35918ad0
|
Replace superFunction by baseFunctions in AST annotations and JSON AST.
|
2019-12-05 03:33:32 +01:00 |
|
Erik Kundt
|
19d466d6fb
|
Fixes named return natspec errors in compilation tests.
|
2019-12-04 15:38:12 +01:00 |
|
Erik Kundt
|
e5cb0fe839
|
Reports doctring error on named return mismatch.
|
2019-12-04 15:38:11 +01:00 |
|
Christian Parpart
|
7bbdfe070f
|
Make shadowing of inherited state variables an error.
|
2019-12-03 21:20:03 +01:00 |
|
Daniel Kirchner
|
05baa23e8a
|
Require unimplemented functions to be virtual.
|
2019-12-02 21:59:00 +01:00 |
|
chriseth
|
1ebcc757e1
|
Merge remote-tracking branch 'origin/develop' into develop_060
|
2019-11-27 19:14:08 +01:00 |
|
Mathias Baumann
|
7bc6645218
|
Disallow use of virtual and private together
|
2019-11-27 18:52:41 +01:00 |
|
chriseth
|
0bb88dabb7
|
Restrict usage of plain "new".
|
2019-11-27 17:55:11 +01:00 |
|
chriseth
|
0973ae751a
|
Do not warn about enabled ABIEncoderV2 anymore.
|
2019-11-26 15:49:42 +01:00 |
|
chriseth
|
d5e9271592
|
Merge pull request #7350 from ethereum/array-length-rvalue
Make `length` member read-only
|
2019-11-21 19:22:42 +01:00 |
|
Leonardo Alt
|
389da5228e
|
Merge remote-tracking branch 'origin/develop' into merge_develop_060
|
2019-11-20 12:27:40 +01:00 |
|
Leonardo Alt
|
be849b3c47
|
Replace boost::variant by std::variant in libyul
|
2019-11-19 17:23:18 +01:00 |
|
Erik Kundt
|
ecaed1030f
|
Makes array length access read-only.
|
2019-11-19 16:09:21 +01:00 |
|
chriseth
|
6797879128
|
Merge pull request #7647 from ethereum/virtual-5424
Implement virtual keyword
|
2019-11-19 13:21:27 +01:00 |
|
chriseth
|
216e1749f4
|
Merge remote-tracking branch 'origin/develop' into develop_060
|
2019-11-14 13:42:46 +01:00 |
|
chriseth
|
766309b6e4
|
Merge pull request #7713 from ethereum/no-lib-instance-7625
Disallow variables of library types
|
2019-11-14 13:39:56 +01:00 |
|
Mathias Baumann
|
0891b9451b
|
Disallow variables of library types
|
2019-11-14 13:20:31 +01:00 |
|
chriseth
|
a667384517
|
Merge pull request #7712 from ethereum/fixIstanbulAsmParsing
Fix assembly parsing by passing evm version.
|
2019-11-14 13:20:15 +01:00 |
|
chriseth
|
b099374d8c
|
Fix assembly parsing by passing evm version.
|
2019-11-14 13:06:36 +01:00 |
|
Mathias Baumann
|
5b8ff78176
|
Implement virtual keyword
|
2019-11-14 11:49:39 +01:00 |
|
chriseth
|
06588cde76
|
Reconstruct function definition for magic variables in overload error message.
|
2019-11-14 10:13:22 +01:00 |
|
Mathias Baumann
|
15df2b30d7
|
List candidates when overload failed
fixes #7146
|
2019-11-13 15:54:36 +01:00 |
|
Daniel Kirchner
|
8148619d5b
|
Merge branch 'develop' into develop_060
|
2019-11-12 10:32:41 +01:00 |
|
Mathias Baumann
|
e35a23bbcc
|
Add `switch (..) to style checker
|
2019-11-11 17:44:21 +01:00 |
|
Mathias Baumann
|
e643c4ca28
|
Add `while (..) to style checker
|
2019-11-11 17:28:41 +01:00 |
|
Christian Parpart
|
f15d47f165
|
Yul: Remove obsoleted FunctionalInstruction.
|
2019-11-11 16:04:39 +01:00 |
|
Alexander Arlt
|
ce0cef7cbc
|
Output which functions are not implemented
|
2019-11-08 14:06:57 -05:00 |
|
Daniel Kirchner
|
0556f64722
|
Analyze inline assembly variable declarations for invalid or shadowing names.
|
2019-11-07 13:04:37 +01:00 |
|
chriseth
|
5388c919f0
|
Some changes to "abstract".
|
2019-11-05 13:55:31 +01:00 |
|
Daniel Kirchner
|
3321fc56ea
|
Split fallback function and introduce "fallback()" and "receive()" syntax.
|
2019-11-04 17:17:58 +01:00 |
|
chriseth
|
5392532d70
|
Fix override error message.
|
2019-11-04 13:37:23 +01:00 |
|
Alexander Arlt
|
f3f652e290
|
Update TypeChecker.cpp
|
2019-11-01 14:54:47 -05:00 |
|
Alexander Arlt
|
c908c16acd
|
Remove InternalCompilerError on abstract contract instantiation.
|
2019-11-01 14:54:47 -05:00 |
|
Alexander Arlt
|
62950a9234
|
Support for abstract contracts.
|
2019-11-01 14:54:47 -05:00 |
|
Mathias Baumann
|
6c6a9054b2
|
Implement override checking
|
2019-10-30 17:31:33 +01:00 |
|
Mathias Baumann
|
5ff02c12e2
|
Add reference to contract in FunctionDefinition annotation
|
2019-10-30 17:31:33 +01:00 |
|
Mathias Baumann
|
20e227afb5
|
Ensure list of overrides consists of contracts
|
2019-10-30 17:31:33 +01:00 |
|
Mathias Baumann
|
f4c40080c4
|
Move if-condition to function for re-use
|
2019-10-30 17:31:33 +01:00 |
|
chriseth
|
ceb8ee9124
|
[Yul] leave statement.
|
2019-10-29 14:32:16 +01:00 |
|
chriseth
|
edf1e83fda
|
Merge remote-tracking branch 'origin/develop' into develop_060
|
2019-10-28 15:21:49 +01:00 |
|
chriseth
|
607bf24afe
|
Merge pull request #7386 from ethereum/060-strict-inline-assembly
Defaulting to strict inline assembly (instead of loose)
|
2019-10-28 12:48:58 +01:00 |
|
chriseth
|
9719f099aa
|
Merge pull request #7551 from ethereum/060-cxx17-std-optional
Use `std::optional<>` rather than `boost::optional<>`
|
2019-10-28 12:17:31 +01:00 |
|
chriseth
|
07c67b98f6
|
Merge remote-tracking branch 'origin/develop' into HEAD
|
2019-10-28 12:12:52 +01:00 |
|
Christian Parpart
|
df729b3084
|
Make use of C++17 std::optional<> instead of boost::optional<>.
|
2019-10-28 11:39:30 +01:00 |
|
Henry Lee
|
24cbb4dd17
|
Treat magic variables as unknown identifiers in inline assembly
This fixes #4575. For keywords such as 'super' and 'this', will be
treated as unknown identifiers.
|
2019-10-28 14:59:50 +11:00 |
|
Christian Parpart
|
3c1d12b16c
|
Assembly: Remove errorTypeForLoose property from AsmAnalyzer.
|
2019-10-25 15:01:26 +02:00 |
|
Christian Parpart
|
dc2adb3d9d
|
Assembly: Removing EVMDialect::looseAssemblyForEVM().
|
2019-10-25 15:01:26 +02:00 |
|
Christian Parpart
|
e23998fc6e
|
Assembly: Remove Label instruction.
|
2019-10-25 15:01:25 +02:00 |
|
Christian Parpart
|
5e8d348f66
|
Assembly: Remove StackAssignment instruction.
|
2019-10-25 15:01:25 +02:00 |
|
Mathias Baumann
|
8c5d1da5a5
|
Check for use of modifiers in invalid contexts
|
2019-10-23 12:36:20 +02:00 |
|
Mathias Baumann
|
ad7cf42aad
|
Add missing dots in deprecation warning
|
2019-10-23 12:23:21 +02:00 |
|
Mathias Baumann
|
6ac12afd06
|
Disallow call of same-class-ctor as modifier
|
2019-10-23 10:29:41 +02:00 |
|
chriseth
|
f884373142
|
Merge branch 'origin/develop' into develop_060
|
2019-10-02 16:29:36 +02:00 |
|
Christian Parpart
|
00d7dac15f
|
Fixes source location in warning for shadowing import delcarations.
|
2019-09-30 11:45:46 +02:00 |
|
Leonardo
|
ca714a2d3d
|
Merge pull request #7485 from ethereum/develop
Merge develop into develop_060
|
2019-09-26 15:43:12 +02:00 |
|
chriseth
|
ca21659749
|
Fix error message about accessing storage pointers.
|
2019-09-24 10:52:02 +02:00 |
|
chriseth
|
8e736a9f49
|
Type Checker for try/catch.
|
2019-09-23 17:22:56 +02:00 |
|
chriseth
|
b5bc52f2a7
|
Control flow for try statements.
|
2019-09-23 17:22:56 +02:00 |
|
Leonardo Alt
|
43d6e00b14
|
Add push() for dynamic storage arrays
|
2019-09-17 13:47:33 +02:00 |
|
Daniel Kirchner
|
4782c800ec
|
Initial introduction of array slices with partial implementation for dynamic calldata arrays.
|
2019-09-13 10:57:53 +02:00 |
|
Leonardo Alt
|
5cfe0b7670
|
Allow explicit conversion from address to address payable
|
2019-09-09 23:46:00 +02:00 |
|
krk
|
33f7f960cf
|
Allow exponentials with signed base and unsigned power.
|
2019-09-04 17:32:47 +02:00 |
|
Daniel Kirchner
|
4354ef2ef4
|
Add update suggestion.
|
2019-08-19 14:58:05 +02:00 |
|
chriseth
|
c047803b80
|
Change BreadthFirstSearch to use value types instead of pointers.
|
2019-08-15 16:10:10 +02:00 |
|
Daniel Kirchner
|
e545103ec8
|
Extract reasonOfFailure to lambda function.
|
2019-08-14 17:59:48 +02:00 |
|
Daniel Kirchner
|
b0a5666b43
|
Better error messages when writing to expressions that cannot be written to.
|
2019-08-14 17:59:48 +02:00 |
|
chriseth
|
57125de9ef
|
Remove ContainsMSize from side-effect-collector.
|
2019-08-13 13:34:33 +02:00 |
|
chriseth
|
9cb9021c36
|
Cope with constants without value in inline assembly.
|
2019-07-09 11:12:13 +02:00 |
|
chriseth
|
18072586c9
|
Remove trailing whitespace in error message.
|
2019-07-08 14:28:38 +02:00 |
|
chriseth
|
2b91022b25
|
Fix view/pure checker for access to base.
|
2019-07-03 11:19:57 +02:00 |
|
chriseth
|
cdd137e3d1
|
Support constant numbers in inline assembly.
|
2019-07-02 14:01:05 +02:00 |
|
Leonardo Alt
|
b7634faa3d
|
Improve error message for delegatecall.value
|
2019-06-06 12:55:12 +02:00 |
|
chriseth
|
df96648b1c
|
Do not allow msize in inline assembly if the Yul optimizer is active.
|
2019-05-28 12:54:33 +02:00 |
|