https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115223
--- Comment #1 from Sam James <sjames at gcc dot gnu.org> --- Reduced: ``` using type = void; template <typename T> void checkSwap(T &t) noexcept(noexcept(t)); void qSwap(int value1) noexcept(noexcept(checkSwap(value1))); type callDestructorIfNecessary(int &) noexcept {} ``` As usual, my C++ is lacking, so it might be possible to tidy this up.