https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113563
--- Comment #10 from Patrick Palka <ppalka at gcc dot gnu.org> --- (In reply to Patrick Palka from comment #9) > *** Bug 116897 has been marked as a duplicate of this bug. *** struct A { int i = 42; int foo() { return [this](this auto &&self) { auto p = &i; return *p; }(); } }; ] clang++ -std=gnu++23 zc9.cc -o zc9 ] g++ -std=gnu++23 zc9.cc -o zc9 zc9.cc: In lambda function: zc9.cc:4:49: error: invalid use of non-static data member ‘A::i’ 4 | return [this](this auto &&self) { auto p = &i; return *p; }(); | ^ zc9.cc:2:9: note: declared here 2 | int i = 42; | ^ zc9.cc: In member function ‘int A::foo()’: zc9.cc:4:64: error: void value not ignored as it ought to be 4 | return [this](this auto &&self) { auto p = &i; return *p; }(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~