clang++ not accepting use of template template parameter when using CRTP
I'm getting compilation errors when trying to call the base class constructor in derived initialization list when using a template template parameter with CRTP. Problem can be replicated with this snippet of code: template <template<class> class Derived, class T> struct base { }; template <class T> struct derived : public base<derived, T> { derived() : base<derived, T>() { } }; The offending error messsage: bug.cpp:10:16: error: template argument for template template parameter must be a class template or type alias template : base<derived, T>() ^ bug.cpp:10:11: error: expected class member or