Core: Make structured-bindings tuple_size SFINAE-friendly for dynamic sizes

libeigen/eigen!2828

Closes #3103

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
This commit is contained in:
Rasmus Munk Larsen
2026-08-17 10:12:24 -07:00
co-authored by Rasmus Munk Larsen
parent 14d33f2f2e
commit 76a7c53018
4 changed files with 74 additions and 37 deletions
@@ -1,8 +1,8 @@
#include "../Eigen/Core"
// Reproduces the "Dynamic-sized Array breaks tuple_size" bug: the Array
// specialization had the same enable_if_t base-clause issue as Matrix. Compile
// must fail for ArrayXd.
// specialization behaves like the Matrix one — a SFINAE-friendly empty
// tuple_size (issue #3103), so naming ::value must still fail to compile.
#ifdef EIGEN_SHOULD_FAIL_TO_BUILD
#define ROWS Eigen::Dynamic
#define COLS Eigen::Dynamic