https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123281
--- Comment #2 from Sam James <sjames at gcc dot gnu.org> ---
Tiny tweak to make Clang accept it too:
```
template <typename> void make_scope_guard();
template <typename Callback> struct final {
friend void make_scope_guard<Callback>() noexcept(Callback ::value);
};
```
