0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-06-16 08:58:20 +02:00

Revert "ircd: ISO C++ requires template on destructor names out-of-line." (gcc-11/12)

This reverts commit e3e3bd7b09.

Add -Wno-dtor-name to clang warning discovery section.
This commit is contained in:
Jason Volk 2022-06-19 23:09:00 -07:00
parent e6ace21eda
commit 5a11c31d97
14 changed files with 26 additions and 24 deletions

View file

@ -943,6 +943,7 @@ RB_HELP_STRING([--enable-every-warning], [Enable warning discovery (-Weverything
RB_MAYBE_CXXFLAG([-Wno-extra-semi-stmt], charybdis_cv_c_gcc_w_no_extra_semi_stmt)
RB_MAYBE_CXXFLAG([-Wno-weak-vtables], charybdis_cv_c_gcc_w_no_weak_vtables)
RB_MAYBE_CXXFLAG([-Wno-global-constructors], charybdis_cv_c_gcc_w_no_global_constructors)
RB_MAYBE_CXXFLAG([-Wno-dtor-name], charybdis_cv_c_gcc_w_no_dtor_name)
dnl Ignored with issue low priority
RB_MAYBE_CXXFLAG([-Wno-old-style-cast], charybdis_cv_c_gcc_w_no_old_style_cast)

View file

@ -98,7 +98,7 @@ ircd::buffer::unique_buffer<buffer_type>::operator=(unique_buffer &&other)
template<class buffer_type>
inline
ircd::buffer::unique_buffer<buffer_type>::~unique_buffer<buffer_type>()
ircd::buffer::unique_buffer<buffer_type>::~unique_buffer()
noexcept
{
const auto ptr(std::get<0>(*this));

View file

@ -45,7 +45,7 @@ ircd::ctx::concurrent<value>::concurrent(pool &p,
{}
template<class value>
ircd::ctx::concurrent<value>::~concurrent<value>()
ircd::ctx::concurrent<value>::~concurrent()
noexcept
{
const uninterruptible::nothrow ui;

View file

@ -98,7 +98,7 @@ struct ircd::ctx::scoped_future
template<class... T>
inline
ircd::ctx::scoped_future<T...>::~scoped_future<T...>()
ircd::ctx::scoped_future<T...>::~scoped_future()
noexcept
{
if(std::uncaught_exceptions() || !this->valid())

View file

@ -62,7 +62,7 @@ ircd::ctx::queue<T, A>::queue(A&& alloc)
template<class T,
class A>
ircd::ctx::queue<T, A>::~queue<T, A>()
ircd::ctx::queue<T, A>::~queue()
noexcept
{
assert(q.empty());

View file

@ -41,7 +41,7 @@ ircd::ctx::unlock_guard<lockable>::unlock_guard(lockable &l)
}
template<class lockable>
ircd::ctx::unlock_guard<lockable>::~unlock_guard<lockable>()
ircd::ctx::unlock_guard<lockable>::~unlock_guard()
noexcept
{
l.lock();

View file

@ -120,7 +120,7 @@ noexcept
template<class mutex>
inline
ircd::ctx::upgrade_lock<mutex>::~upgrade_lock<mutex>()
ircd::ctx::upgrade_lock<mutex>::~upgrade_lock()
noexcept
{
if(owns_lock())

View file

@ -13,12 +13,8 @@
namespace ircd::ctx
{
template<class T,
class mutex = ircd::ctx::mutex>
class view;
template<class T>
using shared_view = view<T, ircd::ctx::shared_mutex>;
template<class T, class mutex = mutex> class view;
template<class T> using shared_view = view<T, shared_mutex>;
}
/// Device for a context to share data on its stack with others while yielding
@ -57,13 +53,18 @@ class ircd::ctx::view
void operator()(T &);
view() = default;
~view() noexcept
{
assert(!waiting);
assert(!wanting);
}
~view() noexcept;
};
template<class T,
class mutex>
ircd::ctx::view<T, mutex>::~view()
noexcept
{
assert(!waiting);
assert(!wanting);
}
template<class T,
class mutex>
void
@ -163,7 +164,7 @@ ircd::ctx::view<T, mutex>::wait_until(lock &l,
template<class T,
class mutex>
inline bool
bool
ircd::ctx::view<T, mutex>::ready()
const
{

View file

@ -74,7 +74,7 @@ inline //TODO: ???
extern inline
__attribute__((always_inline, gnu_inline, artificial))
#endif
ircd::prof::scope_cycles<fenced>::~scope_cycles<fenced>()
ircd::prof::scope_cycles<fenced>::~scope_cycles()
noexcept
{
if constexpr(fenced)

View file

@ -266,7 +266,7 @@ boost::spirit::karma::detail::enable_buffering<ircd::spirit::sink_type>::enable_
}
inline
boost::spirit::karma::detail::enable_buffering<ircd::spirit::sink_type>::~enable_buffering<ircd::spirit::sink_type>()
boost::spirit::karma::detail::enable_buffering<ircd::spirit::sink_type>::~enable_buffering()
noexcept
{
assert(ircd::spirit::generator_state == &state);

View file

@ -121,7 +121,7 @@ ircd::util::instance_list<T>::operator=(const instance_list &other)
}
template<class T>
ircd::util::instance_list<T>::~instance_list<T>()
ircd::util::instance_list<T>::~instance_list()
noexcept
{
assert(it != end(list));

View file

@ -120,7 +120,7 @@ ircd::util::instance_multimap<K, T, C>::operator=(const instance_multimap &other
template<class K,
class T,
class C>
ircd::util::instance_multimap<K, T, C>::~instance_multimap<K, T, C>()
ircd::util::instance_multimap<K, T, C>::~instance_multimap()
noexcept
{
if(it != end(map))

View file

@ -43,7 +43,7 @@ ircd::util::scope_count<T>::scope_count(T &count,
}
template<class T>
ircd::util::scope_count<T>::~scope_count<T>()
ircd::util::scope_count<T>::~scope_count()
noexcept
{
assert(count);

View file

@ -62,7 +62,7 @@ ircd::util::scope_restore<T>::scope_restore(T &restore,
}
template<class T>
ircd::util::scope_restore<T>::~scope_restore<T>()
ircd::util::scope_restore<T>::~scope_restore()
noexcept
{
assert(restore);