The code below gives the error error C2039: 'value_type': is not a member of 'Child_Container'
on line 7. This happens in MSVC and Clang, but not with GCC. Thereby when using std::deque
, but not std::set
, std::vector
. Does anyone know why? Thank you!
#include <deque>
template<typename T_Container>
struct _View
{
using NOPE = typename T_Container::value_type;
};
template<typename T_type, typename T_Self>
struct Base_Container
{
using value_type = T_type;
std::deque<_View<T_Self>> _views;
};
struct Child_Container : public Base_Container<double, Child_Container>
{
// using value_type = double; // Even with this line.
using base = Base_Container<value_type, Child_Container>;
};
int main()
{
return 0;
}