[Trilinos-Users] Compilation error when specializing Thyra::initializePrec<Scalar> with [Scalar=double]
Bartlett, Roscoe A.
bartlettra at ornl.gov
Wed Nov 2 13:45:43 MDT 2011
Alberto,
> I am quite sure that this compilation error is due to the fact that
> the member function
> Thyra::PreconditionerFactoryBase<double>::uninitializePrec
> is not properly called on line 0085 of
> Thyra_PreconditionerFactoryHelpers.hpp.
> In particular, this line currently is:
>
> precFactory.uninitializePrec(prec, Teuchos::outArg(fwdOpSrc),
> supportSolveUse);
[Bartlett, Roscoe A.]
I think you want:
using Teuchos::outArg; Teuchos::inOutArg;
...
Thyra::uninitializePrec<double>(precFactory, inoutArg(prec), outArg(fwdOpSrc), outArg(supportSolveUse));
I would have to see more context to see your types for 'precFactory', 'prec', 'fwdOpSrc' and 'supportSolveUse' to know for sure.
The above helper function Thyra::uninitializePrec<>(...) is defined in the header Thyra_PreconditionerFactoryHelpers.hpp
Let me know if this does not work for you,
-Ross
P.S. We are not quite fully finished refactoring Thyra to remove raw C++ pointers using the convention defined in http://www.cs.sandia.gov/~rabartl/TeuchosMemoryManagementSAND.pdf . That is part of the confusion. In general, the non-member helpers are updated before the virtual member functions due to backward comparability challenges.
More information about the Trilinos-Users
mailing list