Amesos2 does not compile with UMFPACK, SuperLU, complex double, and eti=off
Created by: prwolfe
Basically the compiler cannot chose from 2 convert functions, but does fine the ETI is on as the instantiation gets only one at a time.
@trilinos/amesos2
Expectations
Amesos2 should build either with or without ETI on
Current Behavior
A build matching https://testing-vm.sandia.gov/cdash/index.php?project=Trilinos&parentid=4650329 but with ETI=off will fail to compile Amesos2_Details_registerLinearSolverFactory.cpp.o because it cannot pick between
packages/amesos2/src/Amesos2_Umfpack_TypeMap.hpp:98:7: error: candidates are: class Teuchos::ValueTypeConversionTraits<TypeTo, std::complex > class ValueTypeConversionTraits<TypeTo, std::complex>
and
Trilinos/packages/amesos2/src/Amesos2_Superlu_TypeMap.hpp:192:7: error: class Teuchos::ValueTypeConversionTraits<SLU::Z::doublecomplex, TypeFrom> class ValueTypeConversionTraits<SLU::Z::doublecomplex, TypeFrom>
These take opposite approaches, but can both fulfill the request.
Motivation and Context
This was found when checking a trilinos build against Sierra. Customers should be able to build either with or without ETI or one options should be disabled.
I am tagging framework as we need to make sure we have a t least one build that covers this at some level (we currently do all builds with ETI=on as far as I can tell.)
Definition of Done
Amesos2 compiles both with and without ETI and the requested packages available.