I believe this is a gcc bug.
- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79094

Tom.

On 8/23/19 7:01 AM, Vladimir Grigoriev via Std-Discussion wrote:
This program

#include <iostream>

template <typename ...Bases>
struct S : Bases...
{
    using Bases::Bases...;
};

int main()
{
}

does not compile using gcc HEAD 10.0.0 20190.

The error message is

rog.cc:6:23: error: parameter packs not expanded with '...':
    6 |     using Bases::Bases...;
      |                       ^~~
prog.cc:6:23: note:         'Bases'

 However it compiles using Clang HEAD 9.0.0.

So the question is Is it a valid using declaration or is there a gcc bug?

 

With best regards,
Vlad from Moscow

You can meet me at http://cpp.forum24.ru/ or www.stackoverflow.com or http://ru.stackoverflow.com