This is the mail archive of the
mailing list for the GCC project.
Re: [C++ RFC / Patch] PR 54080, PR 52875 and more (aka SFINAE vs template recursion depth)
- From: Gabriel Dos Reis <gdr at integrable-solutions dot net>
- To: Florian Weimer <fweimer at redhat dot com>
- Cc: Paolo Carlini <paolo dot carlini at oracle dot com>, Jason Merrill <jason at redhat dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 9 Aug 2013 03:45:06 -0500
- Subject: Re: [C++ RFC / Patch] PR 54080, PR 52875 and more (aka SFINAE vs template recursion depth)
- References: <5203F75A dot 9080206 at oracle dot com> <52042C5C dot 7060702 at redhat dot com> <6414e1ec-56b5-42f7-821d-69f4e9325a15 at email dot android dot com> <520496A8 dot 1040607 at redhat dot com> <969f3eb0-2e4d-4a36-9ec9-ea6307e45f46 at email dot android dot com> <52049B55 dot 9090709 at redhat dot com>
On Fri, Aug 9, 2013 at 2:33 AM, Florian Weimer <firstname.lastname@example.org> wrote:
> On 08/09/2013 09:28 AM, Paolo Carlini wrote:
>> I see. You know, I was trying to figure out the logic other compilers -
>> two of them, actually - are following, because the really appear to sfinae
>> away infinite recursions. Was trying to imagine cases in which it would be
> Could their behavior just be bugs? Depending on their error recovery
> implementation, not flagging infinite recursion as a hard error in SFINAE
> context could be an easy mistake to make.
Indeed. The fact we try to recreate template instantiations,
as opposed to using what is already known at the point where
we get the diagnostics is a worrisome aspect of our current
infrastructure. That obviously manifests itself with the "error re-entered…"