Centralized fatal error handling via handleFatalError(msg)

This commit is contained in:
Pavel Kirienko
2014-03-09 20:48:06 +04:00
parent 1b7efa45f5
commit 3dc5183317
6 changed files with 53 additions and 40 deletions
+25
View File
@@ -0,0 +1,25 @@
/*
* Copyright (C) 2014 Pavel Kirienko <pavel.kirienko@gmail.com>
*/
#include <cassert>
#include <cstdlib>
#include <stdexcept>
#include <uavcan/internal/fatal_error.hpp>
#include <uavcan/internal/impl_constants.hpp>
namespace uavcan
{
void handleFatalError(const char* msg)
{
#if UAVCAN_EXCEPTIONS
throw std::runtime_error(msg);
#else
(void)msg;
assert(0);
std::abort();
#endif
}
}