There is one potential issue which came up when I looked at the code.
The code introduces an Eigen wide "typedef Array<DenseIndex, 1, Dynamic> IndexType".
This is similar to the typedefs provided by Array.h though only typedefs for int exist and none for DenseIndex.
I see the following potential solutions:
a) add a Spline namespace and move the typedef and other Spline related code there
b) add EIGEN_MAKE_ARRAY_TYPEDEFS_ALL_SIZES(DenseIndex, Idx) (or something similar)
c) be explicit and write it all out in the few places where it is used
I am not sure whether to use b) or c). At the moment I am slightly in favor of c) though that might change at any time.
Jeff already mentioned on the pull request that unfortunately the IndexType did not properly fit to the SplineTraits since it is independent of the Spline type.