This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/80767] Eager instantiation of generic lambda body when not required
- From: "jason at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 28 Aug 2017 21:32:45 +0000
- Subject: [Bug c++/80767] Eager instantiation of generic lambda body when not required
- Auto-submitted: auto-generated
- References: <bug-80767-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80767
Jason Merrill <jason at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2017-08-28
CC| |jason at gcc dot gnu.org
Ever confirmed|0 |1
--- Comment #2 from Jason Merrill <jason at gcc dot gnu.org> ---
(In reply to TC from comment #1)
> This is another manifestation of bug 71117.
It looks similar, but is actually a different bug. In this case, we are
building a surrogate call function for the conversion operator of the
non-generic lambda (which CallFoo doesn't have).
The bug is that in generating the candidate for the surrogate call function, we
consider how overloader would convert to that target type, which means we
consider the conversion template of the generic lambda.
The standard seems to say that we shouldn't try to figure out that conversion
unless the surrogate call function is actually chosen by overload resolution.