Commit Graph

19563 Commits

Author SHA1 Message Date
chriseth
9c7b1e9c3f Detect assignment to function in inline assembly. 2021-02-23 11:47:12 +01:00
chriseth
dd1ae5ba11
Merge pull request #10990 from ethereum/call-graph-as-contract-annotation
Call graph as contract annotation
2021-02-23 11:43:24 +01:00
chriseth
907bde6e17
Merge pull request #10973 from ethereum/function-call-graph-v2
Function Call Graph v2
2021-02-23 11:42:52 +01:00
Kamil Śliwak
781f00771c Remove IRGenerator::verifyCallGraphs and make generate() verify the graphs automatically 2021-02-23 10:47:02 +01:00
Kamil Śliwak
54eb34d6fd Move call graphs from CompilerStack to ContractDefinitionAnnotation 2021-02-23 10:47:02 +01:00
Kamil Śliwak
6c28120f19 Move CallGraph structure to a separate module 2021-02-23 10:47:02 +01:00
Kamil Śliwak
769a7687c6 Make CompilerStack::contractDefinition() public 2021-02-23 10:47:02 +01:00
Kamil Śliwak
051995a373 Test suite for FunctionCallGraph 2021-02-23 10:46:28 +01:00
Mathias Baumann
53d70dec57 CompilerStack: Build call graphs in the analysis phase 2021-02-23 10:46:28 +01:00
Mathias Baumann
4c283f00c1 Add IRGenerator::verifyCallGraphs() 2021-02-23 10:46:28 +01:00
Kamil Śliwak
74ef7dd790 FunctionCallGraph: operator<< for printing nodes in an unambiguous way 2021-02-23 10:46:28 +01:00
Mathias Baumann
4c1f8d69f9 Implement a Function Call Graph 2021-02-23 10:46:28 +01:00
Mathias Baumann
64d14b4cc4 IRNames::function(): Return correct name if the function is a constructor 2021-02-23 10:29:12 +01:00
Kamil Śliwak
529495c530 CompilerStack: Typo in a comment 2021-02-23 10:29:12 +01:00
Kamil Śliwak
e27afe93a9 CompilerStack: Fix style on local variable name 2021-02-23 10:29:12 +01:00
Kamil Śliwak
13a9d21d88 FunctionType: Add assertions against missing type annotations
- This should make it easier to realize that one of the analysis phases has not been executed.
2021-02-23 10:29:12 +01:00
Mathias Baumann
8bacf03ffe MultiUseYulFunctionCollector::requestedFunctions(): Refactor the loop to use destructuring 2021-02-23 10:29:12 +01:00
chriseth
e75e3fc2e3
Merge pull request #10977 from ethereum/replace-throw-with-boost-macro
Replace raw throw with BOOST_THROW_EXCEPTION.
2021-02-22 16:18:13 +01:00
Harikrishnan Mulackal
6fd5ea01d1
Merge pull request #10971 from ethereum/onlyWarnAboutVariables
Only warn about variables being shadowed in inline assembly.
2021-02-19 16:17:02 +01:00
chriseth
78a097a012 Only warn about variables being shadowed in inline assembly. 2021-02-19 14:29:22 +01:00
Alex Beregszaszi
d48671a2b7
Merge pull request #10978 from ethereum/use-std-bind
test/libsolidity/util/ContractABIUtils.cpp: use std::bind.
2021-02-19 12:00:54 +00:00
Alexander Arlt
ae6710f4e7 test/libsolidity/util/ContractABIUtils.cpp: use std::bind. 2021-02-18 20:26:26 -05:00
Alexander Arlt
c44bb7e7ef Replace raw throw with BOOST_THROW_EXCEPTION. 2021-02-18 20:23:59 -05:00
Bhargava Shastry
5c6633f975
Merge pull request #10974 from ethereum/disable-reasoning-simplifier-fuzzing
Optimiser fuzzer: Disable  reasoning based simplifier runs.
2021-02-18 11:55:19 +01:00
Bhargava Shastry
91b7d60301 Optimiser fuzzer: Disable reasoning based simplifier runs. 2021-02-18 10:48:49 +01:00
chriseth
c812d928fd
Merge pull request #10965 from ethereum/test-intop
Remove unreachable warning for shift/exp operator
2021-02-16 14:18:49 +01:00
Alex Beregszaszi
f766700000 Remove unreachable warning for shift/exp operator 2021-02-16 13:17:58 +00:00
chriseth
8de2686dd2
Merge pull request #10970 from ethereum/import-assert
Remove unreachable assertion for import resolution
2021-02-16 14:06:08 +01:00
Alex Beregszaszi
efe3199981 Remove unreachable assertion for import resolution 2021-02-16 12:55:01 +00:00
chriseth
7ac440f35b
Merge pull request #10968 from enjiniya-sama/develop
Update blind-auction.rst
2021-02-16 13:52:16 +01:00
chriseth
d82b5d495b
Merge pull request #10969 from ethereum/missing-test
Add missing test case for try/catch
2021-02-16 13:45:14 +01:00
Alex Beregszaszi
346344dc7b Add missing test case for try/Catch 2021-02-16 12:33:55 +00:00
chriseth
859220c9bd
Merge pull request #10964 from ethereum/test-yul-func
Turn unreachable error into assertion
2021-02-16 13:33:11 +01:00
Sanad
110b4df1ff
Update blind-auction.rst 2021-02-16 12:09:58 +00:00
Alex Beregszaszi
ded5d721d2 Turn unreachable error into assertion 2021-02-16 10:59:22 +00:00
chriseth
3c4ef23809
Merge pull request #10966 from dms-yondy/grammer-improvement-in-docs
Fixed the grammer of a sentence in the docs
2021-02-16 11:41:05 +01:00
dms-yondy
79e4c6da11 Fixed the grammer of a sentence in the docs 2021-02-16 09:44:31 +00:00
chriseth
7f15be5549
Merge pull request #10963 from ethereum/test-variadic
Remove untriggerable errors on variadic calls (which have been removed)
2021-02-16 10:20:57 +01:00
Alex Beregszaszi
fd9050614a Remove untriggerable errors on variadic calls (which have been removed) 2021-02-15 22:45:57 +00:00
Kamil Śliwak
9d762f381f
Merge pull request #10932 from ssi91/add-sha256-field-to-the-docs
add sha256 field ot the docs
2021-02-15 17:48:02 +01:00
Franziska Heintel
d081b49af9
Merge pull request #10955 from ethereum/docsupdate
[DOCS] Updating contributing section and fixing capitalisation
2021-02-15 17:11:48 +01:00
franzihei
e97a856b45 Updating contributing and fixing capitalisation. 2021-02-15 16:18:11 +01:00
chriseth
f81568f684
Merge pull request #10960 from ethereum/ir-constructor-argument-multiple-slot
[sol2yul] IR constructor argument multiple slot
2021-02-15 14:59:02 +01:00
hrkrshnn
e24a23edcd Semantic test where constructor has a function as parameter 2021-02-15 14:16:28 +01:00
hrkrshnn
0135cae222 Fix IR bug: constructor parameter that needs multiple stack slots
When an argument had multiple stack slots, like `function() external`, there wasn't enough variables
assigned for the constructor. This lead to some mismatch between return values and arguments between
some functions.
2021-02-12 17:42:02 +01:00
Đorđe Mijović
b385b41fa0
Merge pull request #10951 from ethereum/metadataFormatFlag
Metadata format flag
2021-02-12 11:26:54 +01:00
Djordje Mijovic
6e62cbf156 Run metadata tests for every metadata format. 2021-02-12 10:38:03 +01:00
Djordje Mijovic
b598948211 Run gas tests on NoMetadata format only. 2021-02-12 10:38:03 +01:00
Djordje Mijovic
68a4efb2e7 Refactor overwriteRelease flag.
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2021-02-12 10:37:59 +01:00
chriseth
003701f6bc
Merge pull request #10953 from ethereum/modifier-function-return
[Sol2Yul] IR bug on Modifier with argument being a function return variable
2021-02-11 17:32:40 +01:00