https://gcc.gnu.org/g:f176028371c5b5339ca6d8d975d47b2347234af9

commit r15-7361-gf176028371c5b5339ca6d8d975d47b2347234af9
Author: Marek Polacek <pola...@redhat.com>
Date:   Tue Feb 4 17:32:50 2025 -0500

    c++: add fixed test [PR94100]
    
    The recent r15-7339-g26d3424ca5d9f4 fixed this test too.
    
            PR c++/94100
    
    gcc/testsuite/ChangeLog:
    
            * g++.dg/cpp0x/variadic188.C: New test.

Diff:
---
 gcc/testsuite/g++.dg/cpp0x/variadic188.C | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic188.C 
b/gcc/testsuite/g++.dg/cpp0x/variadic188.C
new file mode 100644
index 000000000000..04732a5e68fb
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic188.C
@@ -0,0 +1,23 @@
+// PR c++/94100
+// { dg-do compile { target c++11 } }
+
+template <typename... T> struct ValListWithTypes {
+  template <T... Members> struct WithVals {
+    using TypeList = ValListWithTypes;
+  };
+};
+
+template <typename ValList, typename ValTypeList = typename ValList::TypeList>
+struct Widget;
+
+template <typename ValList, typename... ValTypes>
+struct Widget<ValList, ValListWithTypes<ValTypes...>> {
+  template <typename = ValList> struct Impl {};
+};
+
+template <typename ValList, typename... ValTypes>
+template <ValTypes... Vals>
+struct Widget<ValList, ValListWithTypes<ValTypes...>>::Impl<
+    typename ValListWithTypes<ValTypes...>::template WithVals<Vals...>> {};
+
+int main(void) { Widget<ValListWithTypes<int>::WithVals<0>>::Impl<> impl; }

Reply via email to