#include "../Eigen/Core" // Reproduces the "storage-order footgun" on !2336: get() uses coeffRef(Index), // which is linear in storage order, so a RowMajor matrix would silently flip // decomposition order vs. the column-major default. We static_assert against // RowMajor until the semantics are agreed upon — this failtest guards that. #ifdef EIGEN_SHOULD_FAIL_TO_BUILD #define STORAGE_ORDER Eigen::RowMajor #else #define STORAGE_ORDER Eigen::ColMajor #endif int main() { Eigen::Matrix m; m << 1, 2, 3, 4; (void)Eigen::get<0>(m); return 0; // Test should pass. }