http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53862

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2012-07-05
     Ever Confirmed|0                           |1

--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-07-05 
09:48:33 UTC ---
It compiles OK if you just change f(Args...) to f(Args&&...)


Reduced to remove header (and C++11) dependencies:

typedef unsigned long size_t;

template<typename> struct is_scalar { static const bool value = true; };
template<bool, typename T> struct enable_if { typedef T type; };

template <size_t N, typename... Args>
void f(Args...) {}

template <size_t N, typename T, typename... Args>
typename enable_if<is_scalar<T>::value, void>::type f(T, Args...) {}

int main() {
    f<1>(1);
}

Reply via email to