Make EIGEN2_SUPPORT fully compatible with Eigen2 and tested

Submitted by Benoit Jacob

Assigned to Nobody

Link to original bugzilla bug (#153)
Version: 3.0

Description

As discussed on the thread: Eigen2 to Eigen3 Migration Path

To do:

  • when EIGEN2_SUPPORT is defined, relax const correctness at least in Map constructors

  • add back all Eigen2 features when EIGEN2_SUPPORT is defined

  • if some Eigen2 feature has an unsolvable conflict with Eigen3, consider options. Could ignore if it's a very minor feature, or add a separate EIGEN2_FULL_SUPPORT_BREAK_EIGEN3 option.

  • import the eigen2 test suite into the eigen3 test suite, though we could drop some variants of tests for lighter compilation.

  • do not aim at ABI compatibility with Eigen2, that's a lost cause (different template parameter default values, different index types). Instead aim at API compatibility so people can just flip a flag and recompile.

Blocking

#25 (closed)