public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug c++/112926] New: issues with nested lambdas and decltype of uncaptured local variable @ 2023-12-08 20:38 ppalka at gcc dot gnu.org 2023-12-08 20:42 ` [Bug c++/112926] " ppalka at gcc dot gnu.org 2024-04-13 20:31 ` pinskia at gcc dot gnu.org 0 siblings, 2 replies; 3+ messages in thread From: ppalka at gcc dot gnu.org @ 2023-12-08 20:38 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112926 Bug ID: 112926 Summary: issues with nested lambdas and decltype of uncaptured local variable Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ppalka at gcc dot gnu.org Target Milestone: --- Here since the outer lambda has no capture-default, using x outside of an unevaluated operand wouldn't capture it (despite the by-copy capture-default of the inner lambda), so the special case in https://eel.is/c++draft/expr.prim.id.unqual#3 doesn't apply and decltype((x) should be int& not const int&. int main() { int x; [] { [=] { using type = decltype((x)); // should be int& not const int& using type = int&; }; }; } ^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug c++/112926] issues with nested lambdas and decltype of uncaptured local variable 2023-12-08 20:38 [Bug c++/112926] New: issues with nested lambdas and decltype of uncaptured local variable ppalka at gcc dot gnu.org @ 2023-12-08 20:42 ` ppalka at gcc dot gnu.org 2024-04-13 20:31 ` pinskia at gcc dot gnu.org 1 sibling, 0 replies; 3+ messages in thread From: ppalka at gcc dot gnu.org @ 2023-12-08 20:42 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112926 Patrick Palka <ppalka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://gcc.gnu.org/bugzill | |a/show_bug.cgi?id=83167, | |https://gcc.gnu.org/bugzill | |a/show_bug.cgi?id=86697 Keywords| |accepts-invalid, | |rejects-valid --- Comment #1 from Patrick Palka <ppalka at gcc dot gnu.org> --- Complete rejects-valid testcase: int main() { int x; [] { [=] { using ty1 = decltype((x)); // refers to local variable despite // innermost by-copy capture-default using ty1 = int&; }; }; [=] { [] { using ty1 = decltype((x)); // same using ty1 = int&; }; }; [=] { [&] { using ty1 = decltype((x)); // refers to hypothetical capture proxy using ty1 = const int&; }; }; [&] { [=] { using ty1 = decltype((x)); // same using ty1 = const int&; }; }; [x] { [x] { using ty1 = decltype((x)); // refers to actual capture proxy, // found by HIDDEN_LAMBDA name lookup using ty1 = const int&; }; }; [x] { [] { using ty1 = decltype((x)); // refers to local variable, // HIDDEN_LAMBDA name lookup not performed using ty1 = int&; }; }; } Discussion: https://gcc.gnu.org/pipermail/gcc-patches/2023-December/638976.html ^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug c++/112926] issues with nested lambdas and decltype of uncaptured local variable 2023-12-08 20:38 [Bug c++/112926] New: issues with nested lambdas and decltype of uncaptured local variable ppalka at gcc dot gnu.org 2023-12-08 20:42 ` [Bug c++/112926] " ppalka at gcc dot gnu.org @ 2024-04-13 20:31 ` pinskia at gcc dot gnu.org 1 sibling, 0 replies; 3+ messages in thread From: pinskia at gcc dot gnu.org @ 2024-04-13 20:31 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112926 Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2024-04-13 Ever confirmed|0 |1 --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Confirmed. ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-04-13 20:31 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2023-12-08 20:38 [Bug c++/112926] New: issues with nested lambdas and decltype of uncaptured local variable ppalka at gcc dot gnu.org 2023-12-08 20:42 ` [Bug c++/112926] " ppalka at gcc dot gnu.org 2024-04-13 20:31 ` pinskia at gcc dot gnu.org
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).