Merge pull request #6702 from ethereum/smt_fix_asgn_unsupported_type

[SMTChecker] Fix unsupported type assignment
This commit is contained in:
Leonardo
2019-05-08 16:12:46 +02:00
committed by GitHub
3 changed files with 142 additions and 0 deletions
+5
View File
@@ -377,10 +377,15 @@ void SMTChecker::endVisit(Assignment const& _assignment)
"Assertion checker does not yet implement this assignment operator."
);
else if (!isSupportedType(_assignment.annotation().type->category()))
{
m_errorReporter.warning(
_assignment.location(),
"Assertion checker does not yet implement type " + _assignment.annotation().type->toString()
);
// Give it a new index anyway to keep the SSA scheme sound.
if (auto varDecl = identifierToVariable(_assignment.leftHandSide()))
newValue(*varDecl);
}
else
{
vector<smt::Expression> rightArguments;