(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
cpp1z/
constexpr-array2.C
// PR c++/102307
// { dg-do compile { target c++11 } }

#include <array>
template <unsigned N, unsigned M> struct Matrix {
  constexpr Matrix(double const (&arr)[N][M]); // { dg-warning "never defined" }
  constexpr Matrix(std::array<std::array<double, M>, N> const &arr);
};
int main() {
  constexpr Matrix<2, 3>
    mat {{ {1.0, 2.0, 3.0}, {4.0, 5.0, 6.0} }}; // { dg-error "before its definition" }
}