public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* 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
* 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 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
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 17:26 c++/10619 Giovanni Bajo
-- strict thread matches above, loose matches on Subject: below --
2003-05-04 17:26 c++/10619 Wolfgang Bangerth
2003-05-04 16:36 c++/10619 Wolfgang Bangerth
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).