Fix SVD for MSVC+CUDA.
CUDA gets confused about the definition of Index
, and can't match the
out-of-line definitions of a few functions with their declarations.
If we just import the SVDBase::Index
definition, then gcc/clang get confused
about the out-of-line definition. To fix all, we import
SVDBase::Index
, and modify all definitions to use the internal Index
type.
Also addressed annoying warnings about not returning anything at the end of a non-void function.
Edited by Antonio Sánchez