mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Do not warn about shadowing parameters in functions without implementation
This commit is contained in:
@@ -606,6 +606,18 @@ bool Declaration::isEventOrErrorParameter() const
|
||||
return dynamic_cast<EventDefinition const*>(scope()) || dynamic_cast<ErrorDefinition const*>(scope());
|
||||
}
|
||||
|
||||
bool Declaration::isVisibleAsUnqualifiedName() const
|
||||
{
|
||||
if (!scope())
|
||||
return true;
|
||||
if (isStructMember() || isEnumValue() || isEventOrErrorParameter())
|
||||
return false;
|
||||
if (auto const* functionDefinition = dynamic_cast<FunctionDefinition const*>(scope()))
|
||||
if (!functionDefinition->isImplemented())
|
||||
return false; // parameter of a function without body
|
||||
return true;
|
||||
}
|
||||
|
||||
DeclarationAnnotation& Declaration::annotation() const
|
||||
{
|
||||
return initAnnotation<DeclarationAnnotation>();
|
||||
|
||||
Reference in New Issue
Block a user