mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Add SMTLogicError exception catches
This commit is contained in:
parent
25de3975ce
commit
0eb067ae4f
@ -28,6 +28,7 @@
|
|||||||
#include <libyul/optimiser/Suite.h>
|
#include <libyul/optimiser/Suite.h>
|
||||||
#include <liblangutil/SourceReferenceFormatter.h>
|
#include <liblangutil/SourceReferenceFormatter.h>
|
||||||
#include <libevmasm/Instruction.h>
|
#include <libevmasm/Instruction.h>
|
||||||
|
#include <libsmtutil/Exceptions.h>
|
||||||
#include <libsolutil/JSON.h>
|
#include <libsolutil/JSON.h>
|
||||||
#include <libsolutil/Keccak256.h>
|
#include <libsolutil/Keccak256.h>
|
||||||
#include <libsolutil/CommonData.h>
|
#include <libsolutil/CommonData.h>
|
||||||
@ -921,6 +922,16 @@ Json::Value StandardCompiler::compileSolidity(StandardCompiler::InputsAndSetting
|
|||||||
"Yul exception"
|
"Yul exception"
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
catch (smtutil::SMTLogicError const& _exception)
|
||||||
|
{
|
||||||
|
errors.append(formatErrorWithException(
|
||||||
|
_exception,
|
||||||
|
false,
|
||||||
|
"SMTLogicException",
|
||||||
|
"general",
|
||||||
|
"SMT logic exception"
|
||||||
|
));
|
||||||
|
}
|
||||||
catch (util::Exception const& _exception)
|
catch (util::Exception const& _exception)
|
||||||
{
|
{
|
||||||
errors.append(formatError(
|
errors.append(formatError(
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
#include <liblangutil/SourceReferenceFormatter.h>
|
#include <liblangutil/SourceReferenceFormatter.h>
|
||||||
#include <liblangutil/SourceReferenceFormatterHuman.h>
|
#include <liblangutil/SourceReferenceFormatterHuman.h>
|
||||||
|
|
||||||
|
#include <libsmtutil/Exceptions.h>
|
||||||
|
|
||||||
#include <libsolutil/Common.h>
|
#include <libsolutil/Common.h>
|
||||||
#include <libsolutil/CommonData.h>
|
#include <libsolutil/CommonData.h>
|
||||||
#include <libsolutil/CommonIO.h>
|
#include <libsolutil/CommonIO.h>
|
||||||
@ -1295,6 +1297,14 @@ bool CommandLineInterface::processInput()
|
|||||||
boost::diagnostic_information(_exception);
|
boost::diagnostic_information(_exception);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
catch (smtutil::SMTLogicError const& _exception)
|
||||||
|
{
|
||||||
|
serr() <<
|
||||||
|
"SMT logic error during analysis:" <<
|
||||||
|
endl <<
|
||||||
|
boost::diagnostic_information(_exception);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
catch (Error const& _error)
|
catch (Error const& _error)
|
||||||
{
|
{
|
||||||
if (_error.type() == Error::Type::DocstringParsingError)
|
if (_error.type() == Error::Type::DocstringParsingError)
|
||||||
|
Loading…
Reference in New Issue
Block a user