chore(Core/Misc): Clean up workarounds (#17870)

* Clean advstd to use std c++20 features
* Use ABORT instead of std::abort

Co-authored-by: Shauren <shauren.trinity@gmail.com>
This commit is contained in:
Kitzunu
2023-11-27 00:07:39 +01:00
committed by GitHub
parent abf85fb44f
commit ef1b3c2ea0
6 changed files with 8 additions and 29 deletions

View File

@@ -581,7 +581,7 @@ bool MySQLConnection::_HandleMySQLErrno(uint32 errNo, uint8 attempts /*= 5*/)
{
LOG_FATAL("sql.sql", "Could not re-prepare statements!");
std::this_thread::sleep_for(10s);
std::abort();
ABORT();
}
LOG_INFO("sql.sql", "Successfully reconnected to {} @{}:{} ({}).",
@@ -600,7 +600,7 @@ bool MySQLConnection::_HandleMySQLErrno(uint32 errNo, uint8 attempts /*= 5*/)
// We could also initiate a shutdown through using std::raise(SIGTERM)
std::this_thread::sleep_for(10s);
std::abort();
ABORT();
}
else
{
@@ -624,12 +624,12 @@ bool MySQLConnection::_HandleMySQLErrno(uint32 errNo, uint8 attempts /*= 5*/)
case ER_NO_SUCH_TABLE:
LOG_ERROR("sql.sql", "Your database structure is not up to date. Please make sure you've executed all queries in the sql/updates folders.");
std::this_thread::sleep_for(10s);
std::abort();
ABORT();
return false;
case ER_PARSE_ERROR:
LOG_ERROR("sql.sql", "Error while parsing SQL. Core fix required.");
std::this_thread::sleep_for(10s);
std::abort();
ABORT();
return false;
default:
LOG_ERROR("sql.sql", "Unhandled MySQL errno {}. Unexpected behaviour possible.", errNo);

View File

@@ -27,7 +27,6 @@
#include "Optional.h"
#include "StringFormat.h"
#include "Util.h"
#include "advstd.h"
#include <cstddef>
#include <map>
#include <tuple>
@@ -115,7 +114,7 @@ namespace Acore::Impl::ChatCommands
}
template <typename T> struct HandlerToTuple { static_assert(Acore::dependant_false_v<T>, "Invalid command handler signature"); };
template <typename... Ts> struct HandlerToTuple<bool(ChatHandler*, Ts...)> { using type = std::tuple<ChatHandler*, advstd::remove_cvref_t<Ts>...>; };
template <typename... Ts> struct HandlerToTuple<bool(ChatHandler*, Ts...)> { using type = std::tuple<ChatHandler*, std::remove_cvref_t<Ts>...>; };
template <typename T> using TupleType = typename HandlerToTuple<T>::type;
struct CommandInvoker

View File

@@ -23,7 +23,6 @@
#include "ObjectGuid.h"
#include "Optional.h"
#include "Util.h"
#include "advstd.h"
#include <boost/preprocessor/punctuation/comma_if.hpp>
#include <boost/preprocessor/repetition/repeat.hpp>
#include <cmath>
@@ -204,7 +203,7 @@ namespace Acore::ChatCommands
struct Hyperlink : Acore::Impl::ChatCommands::ContainerTag
{
using value_type = typename linktag::value_type;
using storage_type = advstd::remove_cvref_t<value_type>;
using storage_type = std::remove_cvref_t<value_type>;
operator value_type() const { return val; }
value_type operator*() const { return val; }