https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108090
Bug ID: 108090 Summary: pack expansion of using declarations doesn't properly handle dependent conversion function names Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: richard-gccbugzilla at metafoo dot co.uk Target Milestone: --- Testcase, which I believe is valid, and other compilers accept: template<typename T> struct As { operator T(); }; template<typename ...T> struct AsAll : As<T>... { using As<T>::operator T...; }; AsAll<int, float, char> x; But GCC rejects: <source>:3:26: error: parameter packs not expanded with '...': 3 | using As<T>::operator T...; | ^~~ <source>:3:26: note: 'T'