// PR c++/84698 | |
// { dg-do compile { target c++11 } } | |
template<typename A, typename B> | |
struct X { | |
void swap(X& o) noexcept { } | |
template<typename... Args> | |
friend void swap(X<Args...>& a, X<Args...>& b) noexcept(noexcept(a.swap(b))); | |
}; | |
template<typename... Args> | |
inline void swap(X<Args...>& a, X<Args...>& b) noexcept(noexcept(a.swap(b))) | |
{ | |
} | |
int | |
main () | |
{ | |
X<int, int> x; | |
} |