https://llvm.org/bugs/show_bug.cgi?id=31263
Bug ID: 31263 Summary: specialization of template template parameter considered ill-formed if parameter is an alias template Product: clang Version: trunk Hardware: PC OS: Linux Status: NEW Severity: normal Priority: P Component: C++ Assignee: unassignedclangb...@nondot.org Reporter: kr...@kde.org CC: dgre...@apple.com, llvm-bugs@lists.llvm.org Classification: Unclassified Testcase: ``` template <template <typename...> class T> struct Template { template <typename... Us> using type = T<Us...>; }; template <class T> struct X { static constexpr T value = T(); }; template <class T> using alias = X<T>; int main() { return Template<alias>::type<int>::value; } ``` GCC and EDG accept the code. Clang accepts the code if `X` is used directly or if `alias` is declared as `template <class... Ts> using alias = X<Ts...>`. -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs