Adjust code to review findings

This commit is contained in:
wechman
2022-09-28 13:06:25 +02:00
parent a8bf1f255d
commit c1dc8df9c9
9 changed files with 31 additions and 17 deletions
+3 -3
View File
@@ -61,8 +61,6 @@ bool ControlFlowBuilder::visit(BinaryOperation const& _operation)
switch (_operation.getOperator())
{
case Token::Conditional:
return true;
case Token::Or:
case Token::And:
{
@@ -89,10 +87,12 @@ bool ControlFlowBuilder::visit(BinaryOperation const& _operation)
connect(m_currentNode, nextNode);
m_currentNode = nextNode;
return false;
}
return false;
}
}
return ASTConstVisitor::visit(_operation);
}
bool ControlFlowBuilder::visit(UnaryOperation const& _operation)
+1 -1
View File
@@ -3853,7 +3853,7 @@ void TypeChecker::endVisit(UsingForDirective const& _usingFor)
m_errorReporter.typeError(
9921_error,
_usingFor.location(),
"The \"using\" directive cannot be used to attach functions to the enum type."
"The \"using\" directive cannot be used to attach functions to enum types."
);
Type const* normalizedType = TypeProvider::withLocationIfReference(
+9 -6
View File
@@ -403,20 +403,23 @@ FunctionDefinitionResult Type::userDefinedOperator(Token _token, ASTNode const&
);
solAssert(functionType && !functionType->parameterTypes().empty());
solAssert(isImplicitlyConvertibleTo(*functionType->parameterTypes().front()));
if ((_unaryOperation && function.parameterList().parameters().size() == 1) ||
(!_unaryOperation && function.parameterList().parameters().size() == 2))
if (
(_unaryOperation && function.parameterList().parameters().size() == 1) ||
(!_unaryOperation && function.parameterList().parameters().size() == 2)
)
seenFunctions.insert(&function);
}
if (seenFunctions.size() == 1)
return *seenFunctions.begin();
else if (seenFunctions.size() == 0)
return FunctionDefinitionResult::err("A user-defined operator not found.");
else if (!!typeDefinition() && seenFunctions.size() == 0)
return FunctionDefinitionResult::err("Operator has not been user-defined.");
else if (!!typeDefinition())
return FunctionDefinitionResult::err("Multiple user-defined functions provided for this operator.");
else
return FunctionDefinitionResult::err("A user-defined operator not unique.");
return nullptr;
}
MemberList::MemberMap Type::boundFunctions(Type const& _type, ASTNode const& _scope)
{
MemberList::MemberMap members;