blob: 4d317966ceaf270745a16331129e53e803b20060 [file] [log] [blame]
// PR c++/71875
// { dg-do link { target c++14 } }
template <typename T>
constexpr bool IsMatrix = false;
template<typename TElem>
class Matrix {};
template <typename TElem>
constexpr bool IsMatrix<Matrix<TElem>> = true;
template<typename TNestVec>
class RowVecExpMatrix;
template <typename TNestVec>
constexpr bool IsMatrix<RowVecExpMatrix<TNestVec>> = true;
int
main ()
{
static_assert (IsMatrix<RowVecExpMatrix<Matrix<int>>>, "Matrix check error");
static_assert (IsMatrix<Matrix<int>>, "Input type is not a matrix");
}