This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: c++/10619


The following reply was made to PR c++/10619; it has been noted by GNATS.

From: "Giovanni Bajo" <giovannibajo@libero.it>
To: "Wolfgang Bangerth" <bangerth@ices.utexas.edu>,
	<gcc-gnats@gcc.gnu.org>
Cc: <gccbugs@contacts.eelis.net>
Subject: Re: c++/10619
Date: Sun, 4 May 2003 19:17:15 +0200

 Wolfgang Bangerth <bangerth@ices.utexas.edu> wrote:
 
 > Regarding the other example you have: you can't have a name being
 > templatized on a type and a value, so the error message should read
 > something like
 >   can't instantiate type-template foo<T> with a template _value_
 
 I think that would break SFINAE again:
 
 template <typename T> void foo(int );    // #1
 template <int N> void foo(int );   // #2
 
 foo<0>(4);   // calls #2
 
 Thus, the problem is that "foo<0>(4)" must silently fail specilization of
 #1. If #2 is not present, the correct error is "no function matching call to
 foo<0>(int)". To be picky, it'd be "foo<(integer-literal)>(int)".
 
 Giovanni Bajo
 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]