This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/61382] parameter pack expansion unexpected order
- From: "redi at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 04 Jun 2014 01:06:14 +0000
- Subject: [Bug c++/61382] parameter pack expansion unexpected order
- Auto-submitted: auto-generated
- References: <bug-61382-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61382
--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Thibaut LUTZ from comment #2)
> @Jonathan: you might be referring to 56774. 59716 was a similar issue.
They don't look related. I meant PR 51253
> However I think this case is definitely NOT a bug. Here is why:
>
> - let's decompose the line:
> std::tuple<ARGS...> r { get_single<ARGS>(posfoo++)... };
>
> * std::tuple<ARGS...> r{ ... }: this is a constructor call:
> std::tuple(args...)
No, this is not a valid transformation, the semantics of T r{args...} are not
the same as T r(args...), see [dcl.init.list] p4.