RF: Use the size of D to determine whether it's eigvals/eigvecs.

Instead of type