https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110349

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #55757|0                           |1
        is obsolete|                            |

--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 55759
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55759&action=edit
gcc14-pr110349-wip.patch

Some further progress, with lambda capture handling fixed so that it doesn't
emit the bogus errors and very basic start of non-static data member support.
In that area not really sure what to do, because presumably we want to fail
_ member lookups if it is ambiguous but there is tons of internal lookups
that will likely have to work somehow.  And there is the binary search on
member_vec vs. linear search on member_vec vs. field search, and anonymous
aggregates etc.

(In reply to Jason Merrill from comment #6)
> No, it inhabits block/function scope.

Ok, so should block/function scope static structured binding act allow
(multiple) placeholders or should the standard wording be changed even for that
case?

If I disable the last hunk in parser.cc in this patch, then #c6 works, but
void freddy ()
{
  static int a[2];
  static auto [_, _] = a;
  static auto [_, _] = a;
}
fails to assemble as there is _ZNDC1_1_EE emitted twice.

Reply via email to