stratosphere: fix missing require clauses in definitions

GCC not requiring the require clauses to be repeated for member
definitions is actually a compiler bug:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96830

Clang rejects declarations with missing require clauses.
This commit is contained in:
Léo Lam 2021-11-05 19:27:39 +01:00
commit 2b7acebb75
No known key found for this signature in database
GPG key ID: 0DF30F9081000741

View file

@ -167,12 +167,12 @@ namespace ams::tipc {
return AMS_OFFSETOF(DeferralManagerBase, m_objects_base);
}
template<size_t N>
template<size_t N> requires (N > 0)
consteval size_t DeferralManager<N>::GetObjectPointersOffset() {
return AMS_OFFSETOF(DeferralManager<N>, m_objects);
}
template<size_t N>
template<size_t N> requires (N > 0)
inline DeferralManager<N>::DeferralManager() : DeferralManagerBase() {
static_assert(GetObjectPointersOffset() == GetObjectPointersOffsetBase());
static_assert(sizeof(DeferralManager<N>) == sizeof(DeferralManagerBase) + N * sizeof(DeferrableBase *));