// PR c++/55220 // { dg-do compile { target c++11 } } template struct something_like_tuple { }; template struct is_last { static const bool value = false; }; // Head is non-deducible, so this can't work as the user intended template class Tuple, typename ... Head> struct is_last> { static const bool value = true; }; #define SA(X) static_assert (X, #X) typedef something_like_tuple something_like_tuple_t; SA ((is_last::value == false)); SA ((is_last::value == false));