diff options
author | Erik Kundt <bitshift@posteo.org> | 2018-07-18 04:46:17 +0800 |
---|---|---|
committer | Erik Kundt <bitshift@posteo.org> | 2018-07-18 20:29:01 +0800 |
commit | b0b35e1e6b762d3849710054fdb2e1909f6780d9 (patch) | |
tree | 89286fe1b0d2b74aad406f2c4a3e6699c29676b3 /libsolidity | |
parent | de6cd2425b6ea9cdf2a7b7f49cd88e4f18fa20e3 (diff) | |
download | dexon-solidity-b0b35e1e6b762d3849710054fdb2e1909f6780d9.tar dexon-solidity-b0b35e1e6b762d3849710054fdb2e1909f6780d9.tar.gz dexon-solidity-b0b35e1e6b762d3849710054fdb2e1909f6780d9.tar.bz2 dexon-solidity-b0b35e1e6b762d3849710054fdb2e1909f6780d9.tar.lz dexon-solidity-b0b35e1e6b762d3849710054fdb2e1909f6780d9.tar.xz dexon-solidity-b0b35e1e6b762d3849710054fdb2e1909f6780d9.tar.zst dexon-solidity-b0b35e1e6b762d3849710054fdb2e1909f6780d9.zip |
Adds warning if function is shadowing a contract.
Diffstat (limited to 'libsolidity')
-rw-r--r-- | libsolidity/analysis/NameAndTypeResolver.cpp | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/libsolidity/analysis/NameAndTypeResolver.cpp b/libsolidity/analysis/NameAndTypeResolver.cpp index e0880ec9..823378c7 100644 --- a/libsolidity/analysis/NameAndTypeResolver.cpp +++ b/libsolidity/analysis/NameAndTypeResolver.cpp @@ -482,15 +482,7 @@ bool DeclarationRegistrationHelper::registerDeclaration( Declaration const* shadowedDeclaration = nullptr; if (_warnOnShadow && !name.empty() && _container.enclosingContainer()) for (auto const* decl: _container.enclosingContainer()->resolveName(name, true, true)) - // Do not warn about functions shadowing a contract. - if ( - !( - dynamic_cast<ContractDefinition const*>(decl) && - dynamic_cast<FunctionDefinition const*>(&_declaration) && - name == decl->name() - ) - ) - shadowedDeclaration = decl; + shadowedDeclaration = decl; // We use "invisible" for both inactive variables in blocks and for members invisible in contracts. // They cannot both be true at the same time. |