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

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Hannes Hauswedell from comment #0)
> I would assume that invoking
> the structed bindings just calls get() twice on the f,

No, that's not how structured bindings are specified to work. There are not
variables 'a' and 'b' defined. Instead a variable 'e' is created from the
initializer expression, and then the identifiers 'a' and 'b' refer to members
of 'e'. The type of 'e' in your example is 'foobar'.

http://en.cppreference.com/w/cpp/language/structured_binding is a good
explanation.

Reply via email to