diff --git a/ircd/json.cc b/ircd/json.cc index d458ca17e..3a8180b28 100644 --- a/ircd/json.cc +++ b/ircd/json.cc @@ -482,8 +482,8 @@ noexcept template -[[using gnu: always_inline, gnu_inline, artificial]] -extern inline void +[[gnu::always_inline]] +inline void ircd::json::printer::operator()(mutable_buffer &out, gen&& g, attr&&... a) @@ -499,8 +499,8 @@ const template -[[using gnu: always_inline, gnu_inline, artificial]] -extern inline void +[[gnu::always_inline]] +inline void ircd::json::printer::list_protocol(mutable_buffer &out, it_a it, const it_b &end, @@ -520,8 +520,8 @@ ircd::json::printer::list_protocol(mutable_buffer &out, template -[[using gnu: always_inline, gnu_inline, artificial]] -extern inline bool +[[gnu::always_inline]] +inline bool ircd::json::parser::operator()(const char *const &start_, const char *const &stop, gen&& g, @@ -534,8 +534,8 @@ const template -[[using gnu: always_inline, gnu_inline, artificial]] -extern inline bool +[[gnu::always_inline]] +inline bool ircd::json::parser::operator()(const char *&start, const char *const &stop, gen&& g, @@ -545,6 +545,7 @@ const return ircd::parse(start, stop, std::forward(g), std::forward(a)...); } +[[gnu::noinline]] void ircd::json::parser::throws_exceeded() {