public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: c++/10619
@ 2003-05-04 16:36 Wolfgang Bangerth
  0 siblings, 0 replies; 3+ messages in thread
From: Wolfgang Bangerth @ 2003-05-04 16:36 UTC (permalink / raw)
  To: nobody; +Cc: gcc-prs

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

From: Wolfgang Bangerth <bangerth@ices.utexas.edu>
To: gcc-gnats@gcc.gnu.org, Giovanni Bajo <giovannibajo@libero.it>
Cc: gccbugs@contacts.eelis.net
Subject: Re: c++/10619
Date: Sun, 4 May 2003 11:34:10 -0500 (CDT)

 Thanks, Giovanni, for sparing me from explaining the SFINAE feature of C++ 
 :-)
 
 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_
 
 W.
 
 -------------------------------------------------------------------------
 Wolfgang Bangerth              email:            bangerth@ices.utexas.edu
                                www: http://www.ices.utexas.edu/~bangerth/
 
 


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: c++/10619
@ 2003-05-04 17:26 Wolfgang Bangerth
  0 siblings, 0 replies; 3+ messages in thread
From: Wolfgang Bangerth @ 2003-05-04 17:26 UTC (permalink / raw)
  To: nobody; +Cc: gcc-prs

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

From: Wolfgang Bangerth <bangerth@ices.utexas.edu>
To: Giovanni Bajo <giovannibajo@libero.it>
Cc: gcc-gnats@gcc.gnu.org, <gccbugs@contacts.eelis.net>
Subject: Re: c++/10619
Date: Sun, 4 May 2003 12:21:40 -0500 (CDT)

 > template <typename T> void foo(int );    // #1
 > template <int N> void foo(int );   // #2
 
 Yes, sorry, I was confused. I thought these two lines are illegal, but of 
 course they're not. I was thinking about template _classes_, not 
 functions. The former can't be overloaded that way, the latter can.
 
 W.
 
 -------------------------------------------------------------------------
 Wolfgang Bangerth              email:            bangerth@ices.utexas.edu
                                www: http://www.ices.utexas.edu/~bangerth/
 
 


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: c++/10619
@ 2003-05-04 17:26 Giovanni Bajo
  0 siblings, 0 replies; 3+ messages in thread
From: Giovanni Bajo @ 2003-05-04 17:26 UTC (permalink / raw)
  To: nobody; +Cc: gcc-prs

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
 


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2003-05-04 17:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-05-04 16:36 c++/10619 Wolfgang Bangerth
2003-05-04 17:26 c++/10619 Wolfgang Bangerth
2003-05-04 17:26 c++/10619 Giovanni Bajo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).