0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-09-27 11:18:51 +02:00

ircd::mods: Attempt to unconfuse backtraces.

This commit is contained in:
Jason Volk 2019-07-17 14:31:52 -07:00
parent 2b4c7a3646
commit 82ed7ad69b
2 changed files with 9 additions and 5 deletions

View file

@ -149,7 +149,7 @@ ircd::mods::import<T>::operator->()
template<class T>
template<class... args>
decltype(auto)
inline decltype(auto)
ircd::mods::import<T>::operator()(args&&... a)
{
if(unlikely(!*this))
@ -184,7 +184,8 @@ const
template<class T>
template<class... args>
decltype(auto)
__attribute__((artificial))
inline decltype(auto)
ircd::mods::import<T>::operator()(args&&... a)
const
{

View file

@ -90,7 +90,8 @@ ircd::mods::sym_ptr::get()
template<class T,
class... args>
decltype(auto)
__attribute__((always_inline, artificial))
inline decltype(auto)
ircd::mods::sym_ptr::operator()(args&&... a)
const
{
@ -146,7 +147,8 @@ template<class F,
class O,
class... args,
typename std::enable_if<std::is_member_pointer<F>::value>::type *>
decltype(auto)
__attribute__((always_inline, gnu_inline, artificial))
inline extern decltype(auto)
ircd::mods::invoke(F *const &f,
O *const &o,
args&&... a)
@ -160,7 +162,8 @@ ircd::mods::invoke(F *const &f,
template<class F,
class... args,
typename std::enable_if<!std::is_member_pointer<F>::value>::type *>
decltype(auto)
__attribute__((always_inline, gnu_inline, artificial))
inline extern decltype(auto)
ircd::mods::invoke(F *const &f,
args&&... a)
{