aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2018-11-13 20:22:59 +0800
committerGitHub <noreply@github.com>2018-11-13 20:22:59 +0800
commit7e0041cf22a19e109742d36d484bda3b8f0cde40 (patch)
tree51b27835f04a90aa82c8cee7f3a7f4f34dd4692e /libsolidity
parent9c6048b0b855d5f3409b1aa7ac47f9f79a0dcde1 (diff)
parentb5e9d849ef93589ab8eb59e1becbc4d7a8250ccb (diff)
downloaddexon-solidity-7e0041cf22a19e109742d36d484bda3b8f0cde40.tar.gz
dexon-solidity-7e0041cf22a19e109742d36d484bda3b8f0cde40.tar.zst
dexon-solidity-7e0041cf22a19e109742d36d484bda3b8f0cde40.zip
Merge pull request #5406 from ethereum/uninitializedStorageUnimplemented
Ignore unimplemented functions for detecting uninitialized storage returns.
Diffstat (limited to 'libsolidity')
-rw-r--r--libsolidity/analysis/ControlFlowAnalyzer.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/libsolidity/analysis/ControlFlowAnalyzer.cpp b/libsolidity/analysis/ControlFlowAnalyzer.cpp
index ab6569be..8a608552 100644
--- a/libsolidity/analysis/ControlFlowAnalyzer.cpp
+++ b/libsolidity/analysis/ControlFlowAnalyzer.cpp
@@ -28,8 +28,11 @@ bool ControlFlowAnalyzer::analyze(ASTNode const& _astRoot)
bool ControlFlowAnalyzer::visit(FunctionDefinition const& _function)
{
- auto const& functionFlow = m_cfg.functionFlow(_function);
- checkUnassignedStorageReturnValues(_function, functionFlow.entry, functionFlow.exit);
+ if (_function.isImplemented())
+ {
+ auto const& functionFlow = m_cfg.functionFlow(_function);
+ checkUnassignedStorageReturnValues(_function, functionFlow.entry, functionFlow.exit);
+ }
return false;
}