Mathias Baumann
|
e643c4ca28
|
Add `while (..) to style checker
|
2019-11-11 17:28:41 +01:00 |
|
chriseth
|
2e5a42836c
|
Merge pull request #7681 from ethereum/develop
Merge develop into develop_060
|
2019-11-11 16:42:03 +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 |
|
Leonardo Alt
|
5dacaf57bc
|
Fix ICE in FixedBytes IndexAccess
|
2019-11-08 17:29:40 +01:00 |
|
chriseth
|
138ee647f1
|
Provide different options for reason strings.
|
2019-11-07 14:13:53 +01:00 |
|
Daniel Kirchner
|
108992c335
|
Merge pull request #7640 from ethereum/smt_fix_060
[SMTChecker] Fix override tests
|
2019-11-07 14:10:10 +01:00 |
|
chriseth
|
c0b27d0bc1
|
Merge pull request #7648 from ethereum/inlineAssemblyShadowing
Error on shadowing and invalid names in inline assembly
|
2019-11-07 13:31:09 +01:00 |
|
Daniel Kirchner
|
0556f64722
|
Analyze inline assembly variable declarations for invalid or shadowing names.
|
2019-11-07 13:04:37 +01:00 |
|
Leonardo Alt
|
fc945880d1
|
[SMTChecker] Fix override tests
|
2019-11-07 11:49:32 +01:00 |
|
Leonardo Alt
|
6b10efff8c
|
Add CHCSmtLib2Interface
|
2019-11-07 11:12:11 +01:00 |
|
chriseth
|
21e65076b3
|
Merge pull request #7650 from ethereum/develop
Merge develop into develop_060
|
2019-11-06 21:56:55 +01:00 |
|
cd10012
|
a94d22e5fe
|
Add documentation for extractReturnParameterDocs
|
2019-11-06 21:45:01 +01:00 |
|
cd10012
|
16fe59b7b4
|
Implement @erak review notes by creating function and adding constructor test
Update 060 doc with natspec change
Add two more tests with mixed usage
Fix solc-js
fix changelog
|
2019-11-06 21:44:59 +01:00 |
|
cd10012
|
f598b1515f
|
Give unamed parameters unique keys and update tests to new spec
Fix whitespace
|
2019-11-06 21:44:34 +01:00 |
|
cd10012
|
18fe693fdd
|
Add unamed return param test and check size in conditional
|
2019-11-06 21:44:09 +01:00 |
|
cd10012
|
b3ae601e88
|
Refactor to have multiple return params
|
2019-11-06 21:44:09 +01:00 |
|
chriseth
|
30ea41c36d
|
Merge pull request #7526 from ethereum/modifierDepth
Add modifier depth to source mappings.
|
2019-11-06 13:03:40 +01:00 |
|
Leonardo Alt
|
10e70b8603
|
[SMTChecker] Support inheritance and resolve overrides
|
2019-11-06 11:00:06 +01:00 |
|
chriseth
|
587c87b15b
|
Commandline interface additions for webassembly binary.
|
2019-11-05 20:05:57 +01:00 |
|
chriseth
|
e79a32e9d5
|
Wasm to binary assembly stack.
|
2019-11-05 20:02:42 +01:00 |
|
chriseth
|
4d99bf68f4
|
Merge pull request #7638 from ethereum/develop
Merge develop into develop_060
|
2019-11-05 17:33:54 +01:00 |
|
chriseth
|
cb2096c82a
|
Add modifier depth to source mappings.
|
2019-11-05 16:50:38 +01:00 |
|
chriseth
|
5388c919f0
|
Some changes to "abstract".
|
2019-11-05 13:55:31 +01:00 |
|
Leonardo Alt
|
c5e081dc8c
|
[SMTChecker] Refactor CHC loops and add if blocks
|
2019-11-05 09:28:59 +01:00 |
|
chriseth
|
46ac16d25c
|
Merge remote-tracking branch 'origin/develop' into develop_060
|
2019-11-04 19:09:11 +01:00 |
|
Leonardo
|
1eac3d1d83
|
Merge pull request #7582 from ethereum/smt_multid_array_assignment
[SMTChecker] Support assignments to m-d arrays and mappings
|
2019-11-04 17:37:33 +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
|
b76106fc4a
|
Parse override keyword for modifier definitions
|
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
|
c30839888f
|
Use `leave ` in code generator.
|
2019-10-29 14:32:16 +01:00 |
|
chriseth
|
ceb8ee9124
|
[Yul] leave statement.
|
2019-10-29 14:32:16 +01:00 |
|
Leonardo Alt
|
8a42e3f87a
|
[SMTChecker] Support assignments to m-d arrays and mappings
|
2019-10-28 17:27:39 +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 |
|
Christian Parpart
|
5a52fa547e
|
Assembly: Changed parser to use strict assembly mode.
|
2019-10-25 15:01:25 +02:00 |
|
chriseth
|
15e39f7d65
|
Merge pull request #7556 from ethereum/ice-7550
Check for use of modifiers in invalid contexts
|
2019-10-24 10:32:49 +02:00 |
|
Christian Parpart
|
76c72ba89f
|
Fixes signedness (causes compilation failure on MSVC).
|
2019-10-23 16:32:41 +02:00 |
|
Mathias Baumann
|
c3e8023ad5
|
Fix wrong assert in overflow check
|
2019-10-23 14:59:34 +02:00 |
|
Christian Parpart
|
c6152b8059
|
Compile fix.
|
2019-10-23 13:08:17 +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 |
|
Mathias L. Baumann
|
7e01696030
|
Merge pull request #7554 from ethereum/develop
Merge develop into develop_060
|
2019-10-21 17:05:12 +02:00 |
|
chriseth
|
ebfe7391ff
|
Use selfbalance for `address(this).balance `.
|
2019-10-16 14:25:56 +02:00 |
|
Gaith Hallak
|
62a62555bc
|
Remove trailing spaces from JSON output
|
2019-10-02 19:02:35 +02:00 |
|
Gaith Hallak
|
9d34d7de2f
|
Remove trailing spaces from JSON output
|
2019-10-02 18:01:47 +03:00 |
|
chriseth
|
f884373142
|
Merge branch 'origin/develop' into develop_060
|
2019-10-02 16:29:36 +02:00 |
|
Daniel Kirchner
|
7202ebb5b2
|
Fix internal compiler error for arrays of recursive structs.
|
2019-10-01 16:51:14 +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
|
387cb620e9
|
Merge pull request #7452 from ethereum/smt_fix_function_name
[SMTChecker] Fix SMT name for function identifiers
|
2019-09-24 15:55:14 +02:00 |
|
chriseth
|
cda23d63e9
|
Merge pull request #7458 from ethereum/fixErrorMessage
Fix error message about accessing storage pointers.
|
2019-09-24 15:11:03 +02:00 |
|
Leonardo Alt
|
83ef34f41d
|
[SMTChecker] Fix SMT name for function identifiers
|
2019-09-24 11:23:10 +02:00 |
|
chriseth
|
ca21659749
|
Fix error message about accessing storage pointers.
|
2019-09-24 10:52:02 +02:00 |
|
chriseth
|
b5d6d5fcf9
|
Create.
|
2019-09-23 17:22:56 +02:00 |
|
chriseth
|
70b796bd1a
|
Code generator for try/catch.
|
2019-09-23 17:22:56 +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 |
|
chriseth
|
6d6914f98f
|
Parser for try/catch.
|
2019-09-23 17:22:42 +02:00 |
|
chriseth
|
a66c354698
|
AST for try and catch.
|
2019-09-23 17:22:09 +02:00 |
|
Leonardo Alt
|
ed9674be8d
|
[SMTChecker] Add as const function to SMTLib2Interface
|
2019-09-18 22:57:14 +02:00 |
|
chriseth
|
9ecd51c54d
|
Refactor.
|
2019-09-18 14:06:03 +02:00 |
|
Leonardo Alt
|
43d6e00b14
|
Add push() for dynamic storage arrays
|
2019-09-17 13:47:33 +02:00 |
|
chriseth
|
5b3efee93b
|
Merge pull request #7442 from ethereum/develop
Merge develop into develop_060
|
2019-09-17 12:16:27 +02:00 |
|
Leonardo Alt
|
eab9f65610
|
Fix ICE when pop dyn storage array of mapping
|
2019-09-16 16:33:17 +02:00 |
|
Leonardo Alt
|
d685554980
|
Create option for metadata hash
|
2019-09-13 18:59:12 +02:00 |
|
Leonardo Alt
|
e1c238e25f
|
[SMTChecker] Add loop support
|
2019-09-13 12:40:53 +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 |
|
Daniel Kirchner
|
f4d990e5be
|
Drop constant and payable fields from ABI.
|
2019-09-06 14:42:09 +02:00 |
|
Daniel Kirchner
|
5d69bdf81e
|
Remove ASTPrinter.
|
2019-09-06 12:38:55 +02:00 |
|
chriseth
|
ea0a952a69
|
Merge pull request #7362 from ethereum/develop
Merge develop into develop_060
|
2019-09-05 16:50:44 +02:00 |
|
Daniel Kirchner
|
7148792b8a
|
Refactor ExpressionCompiler with acceptAndConvert.
|
2019-09-05 15:05:59 +02:00 |
|
chriseth
|
fd687f50ff
|
Merge pull request #7353 from ethereum/develop
Update 0.6.0 from develop
|
2019-09-04 20:21:37 +02:00 |
|
krk
|
33f7f960cf
|
Allow exponentials with signed base and unsigned power.
|
2019-09-04 17:32:47 +02:00 |
|
chriseth
|
8485a1abec
|
Change ABI sorting order.
|
2019-09-04 13:06:09 +02:00 |
|
Leonardo Alt
|
a51577facf
|
Fix Windows build
|
2019-09-02 22:37:30 +02:00 |
|
Leonardo Alt
|
a774b2d905
|
[SMTChecker] Zero-initialize arrays
|
2019-09-02 22:37:30 +02:00 |
|
chriseth
|
c499758cd8
|
Merge pull request #7326 from ethereum/develop
Merge develop into 0.6.0 branch.
|
2019-09-02 16:11:20 +02:00 |
|
Daniel Kirchner
|
2b938d703c
|
Allow global enum definitions.
|
2019-09-02 11:52:51 +02:00 |
|
Daniel Kirchner
|
872d21f527
|
Allow global struct definitions.
|
2019-09-02 11:17:42 +02:00 |
|
Leonardo Alt
|
214e5c6369
|
[SMTChecker] Fix index access type type error
|
2019-08-27 16:39:19 +02:00 |
|
Mathias Baumann
|
24716404f8
|
Parse override keyword
|
2019-08-26 17:34:21 +02:00 |
|
Mathias L. Baumann
|
502bf01be2
|
Merge pull request #7278 from ethereum/develop
Merge develop into develop_060
|
2019-08-26 10:26:48 +02:00 |
|
Mathias Baumann
|
0e3ff25b4e
|
Make sure json output array order is consistent
The source of the "contractDependencies" value was an std::map, thus
order was more or less random.
|
2019-08-19 17:42:03 +02:00 |
|
Daniel Kirchner
|
4354ef2ef4
|
Add update suggestion.
|
2019-08-19 14:58:05 +02:00 |
|
Daniel Kirchner
|
42f30981db
|
Add unimplemented assertion to IR generation when accessing address member of external function types.
|
2019-08-19 14:56:04 +02:00 |
|
Daniel Kirchner
|
9f6fff2120
|
Replace casting of external functions to address by a member named "address".
|
2019-08-19 14:56:04 +02:00 |
|
chriseth
|
c047803b80
|
Change BreadthFirstSearch to use value types instead of pointers.
|
2019-08-15 16:10:10 +02:00 |
|
Leonardo Alt
|
1a70a46f9b
|
[CHC] Add function blocks and check asserts
|
2019-08-15 12:25:15 +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
|
0c2f8ddfae
|
Merge pull request #7231 from ethereum/extractMSize
[Yul] Remove ContainsMSize from side-effect-collector.
|
2019-08-13 18:03:51 +02:00 |
|
chriseth
|
57125de9ef
|
Remove ContainsMSize from side-effect-collector.
|
2019-08-13 13:34:33 +02:00 |
|
Mathias Baumann
|
444395960f
|
Fix link to Contract ABI in source code
|
2019-08-13 12:43:04 +02:00 |
|
Leonardo
|
cbac3a4208
|
Merge pull request #7107 from ethereum/smt_chc_constructor_interface
[SMTChecker] Add CHC constructor/interface/error blocks
|
2019-08-12 15:06:08 +02:00 |
|
Leonardo Alt
|
bef6228810
|
[SMTChecker] Create CHC constructor/interface/error blocks
|
2019-08-12 12:34:57 +02:00 |
|
Leonardo Alt
|
360f868836
|
[SMTChecker] Fix literal string type mismatch
|
2019-08-10 21:51:46 +02:00 |
|
Leonardo Alt
|
4214cd1354
|
[SMTChecker] Fix ICE when reporting cex concerning state vars from different source files
|
2019-08-10 20:56:52 +02:00 |
|
Leonardo
|
67c855e93e
|
Merge pull request #7170 from ethereum/smt_fix_other_contract_state_var
[SMTChecker] Fix ICE when inlining functions from different source
|
2019-08-09 19:14:28 +02:00 |
|
Leonardo Alt
|
7b22496b1f
|
[SMTChecker] Fix ICE when inlining functions that use state vars and are in a different source
|
2019-08-09 17:50:52 +02:00 |
|
Leonardo Alt
|
11d8cf588e
|
[SMTChecker] Set unknown values for return variables of recursive functions
|
2019-08-09 17:01:08 +02:00 |
|
chriseth
|
74f16ef186
|
Refactor IRLValue so that it does not require IRGenerationContext.
|
2019-08-08 17:27:35 +02:00 |
|
chriseth
|
9955c51769
|
Merge pull request #7077 from ethereum/sol-yul-delete-fixed-storage
[Sol->Yul] Implement delete for fixed-sized storage arrays
|
2019-08-08 16:47:16 +02:00 |
|
mingchuan
|
15631a7fbe
|
Split calldataEncodedSize into calldataEncodedSize, calldataEncodedTailSize and calldataHeadSize and fix all usages.
|
2019-08-08 15:52:21 +02:00 |
|
Mathias Baumann
|
e072885031
|
[Sol->Yul] Implement delete for fixed-sized storage arrays
|
2019-08-07 18:28:52 +02:00 |
|
chriseth
|
6166dc8e8f
|
Merge pull request #6856 from rocky/recoveringParser1-ast
Produce AST even when there are parser errors
|
2019-08-07 15:56:45 +02:00 |
|
chriseth
|
c8f04b88bf
|
Merge pull request #7176 from ethereum/decodeMemoryLocation
Always copy dynamically-sized memory arrays during CompilerUtils::abiDecode
|
2019-08-07 15:42:14 +02:00 |
|
rocky
|
7fd7cc1e76
|
Produce AST even when there are parser errors
|
2019-08-07 15:25:53 +02:00 |
|
Daniel Kirchner
|
efb34bdf22
|
Always copy dynamically-sized memory arrays during CompilerUtils::abiDecode.
|
2019-08-06 14:11:14 +02:00 |
|
Leonardo Alt
|
369f8cd97f
|
[SMTChecker] CHC create function return variables
|
2019-08-05 12:36:51 +02:00 |
|
Leonardo
|
11632966c9
|
Merge pull request #7171 from ethereum/smt_fix_compound_bitwise
[SMTChecker] Fix ICE compound bitwise op inside branch
|
2019-08-05 12:15:01 +02:00 |
|
chriseth
|
9b375edfe3
|
Merge pull request #6787 from ethereum/sol2yul-ctor-code
Improve constructor-code codegen (wrt. state variable initialization)
|
2019-08-05 11:50:34 +02:00 |
|
Christian Parpart
|
235638b3fc
|
Implements constructor code for state variables.
|
2019-08-05 11:23:01 +02:00 |
|
Leonardo Alt
|
d5fb8cf58a
|
[SMTChecker] Fix ICE compound bitwise op inside branch
|
2019-08-02 20:02:39 +02:00 |
|
Leonardo Alt
|
7b5863e583
|
Do not erase knowledge about storage pointers when another pointer is assigned
|
2019-08-02 13:09:06 +02:00 |
|
chriseth
|
2a25d7461f
|
Merge pull request #7123 from rocky/tolerate-pragma-mismatch
A pragma version mismatch is not fatal if ...
|
2019-08-01 14:48:24 +02:00 |
|
chriseth
|
6730a59f74
|
Merge pull request #7157 from ethereum/fix-7155
FunctionType: Return correct stacksize for transfer/send
|
2019-08-01 14:40:35 +02:00 |
|
Mathias Baumann
|
e887c06f6b
|
FunctionType: Return correct stacksize for transfer/send
|
2019-08-01 13:56:09 +02:00 |
|
chriseth
|
04f298fd0e
|
Merge pull request #7132 from ethereum/smt_acc_solver
[SMTChecker] EncodingContext config flag to accumulate assertions
|
2019-08-01 13:04:37 +02:00 |
|
chriseth
|
aa87a607fd
|
Merge pull request #7152 from ethereum/smt_fix_pointer_cleanup
[SMTChecker] Erase pointer knowledge properly inside loops
|
2019-08-01 12:46:20 +02:00 |
|
Leonardo Alt
|
44d7c6976a
|
Erase pointer knowledge properly inside loops
|
2019-07-30 12:47:50 +02:00 |
|
Mathias Baumann
|
d9addbcf49
|
Fix error in g++7 with -O2 flag
|
2019-07-29 16:17:41 +02:00 |
|
Leonardo
|
00accd9daa
|
Merge pull request #7141 from ethereum/smt_fix_json
[SMTChecker] Reset SSA index to 0 instead of increasing in context reset
|
2019-07-29 10:20:06 +02:00 |
|
Leonardo
|
0197a200cd
|
Merge pull request #7142 from ethereum/smt_init_numbers
[SMTChecker] Initialize all number types with 0
|
2019-07-29 10:19:17 +02:00 |
|
Leonardo Alt
|
847f574e22
|
[SMTChecker] Fix ICE when inlining function with tuple expression
|
2019-07-26 16:29:29 +02:00 |
|
Leonardo Alt
|
cd5a5b3686
|
[SMTChecker] Initialize all number types with 0
|
2019-07-25 15:15:18 +02:00 |
|
Leonardo Alt
|
6bcbeb1d23
|
[SMTChecker] Reset SSA index to 0 instead of increasing in context reset
|
2019-07-25 14:16:34 +02:00 |
|
Leonardo
|
264035f0dd
|
Merge pull request #7120 from ethereum/smt_refactor_inlining
[SMTChecker] Refactor function inlining
|
2019-07-22 14:20:32 +02:00 |
|
Leonardo Alt
|
b204f27047
|
[SMTChecker] EncodingContext config flag to accumulate assertions
|
2019-07-19 19:31:25 +02:00 |
|
Leonardo
|
508cf66da2
|
Merge pull request #7062 from ethereum/smt_chc_checker
[SMTChecker] Add skeleton for CHC
|
2019-07-19 15:41:43 +02:00 |
|
Leonardo Alt
|
03cc124f32
|
Add CHC skeleton
|
2019-07-19 11:52:05 +02:00 |
|
chriseth
|
a30be56c27
|
Additional type info for ABI.
|
2019-07-18 16:54:11 +02:00 |
|
Leonardo Alt
|
382df64899
|
[SMTChecker] Refactor function inlining
|
2019-07-18 13:56:48 +02:00 |
|