Xpetra: Clang warnings about explicit instantiations having no effect
Created by: mhoemmen
@trilinos/xpetra @trilinos/muelu
Clang emits interesting warnings about certain Xpetra explicit instantiations having no effect. I'm curious whether this means that code doesn't behave like one things it might. Here are the warnings:
[ 77%] Building CXX object packages/xpetra/src/CMakeFiles/xpetra.dir/Vector/Xpetra_EpetraVector.cpp.o
.../Trilinos/packages/xpetra/src/Vector/Xpetra_EpetraVector.cpp:77:16: warning: explicit instantiation of 'EpetraVectorT<int,
Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >' that occurs after an explicit specialization has no effect
[-Winstantiation-after-specialization]
template class EpetraVectorT<int, Kokkos::Compat::KokkosSerialWrapperNode >;
^
.../Trilinos/packages/xpetra/src/Vector/Xpetra_EpetraVector.hpp:245:7: note: previous template specialization is here
class EpetraVectorT<int, EpetraNode>
^
.../Trilinos/packages/xpetra/src/Vector/Xpetra_EpetraVector.cpp:117:16: warning: explicit instantiation of 'EpetraVectorT<long long,
Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >' that occurs after an explicit specialization has no effect
[-Winstantiation-after-specialization]
template class EpetraVectorT<long long, Kokkos::Compat::KokkosSerialWrapperNode >;
^
.../Trilinos/packages/xpetra/src/Vector/Xpetra_EpetraVector.hpp:432:7: note: previous template specialization is here
class EpetraVectorT<long long, EpetraNode>
^
2 warnings generated.
[ 77%] Building CXX object packages/xpetra/src/CMakeFiles/xpetra.dir/Vector/Xpetra_EpetraIntVector.cpp.o
.../Trilinos/packages/xpetra/src/Vector/Xpetra_EpetraIntVector.cpp:77:16: warning: explicit instantiation of 'EpetraIntVectorT<int,
Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >' that occurs after an explicit specialization has no effect
[-Winstantiation-after-specialization]
template class EpetraIntVectorT<int, Kokkos::Compat::KokkosSerialWrapperNode >;
^
.../Trilinos/packages/xpetra/src/Vector/Xpetra_EpetraIntVector.hpp:371:9: note: previous template specialization is here
class EpetraIntVectorT<int, EpetraNode>
^
.../Trilinos/packages/xpetra/src/Vector/Xpetra_EpetraIntVector.cpp:116:16: warning: explicit instantiation of 'EpetraIntVectorT<long long,
Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >' that occurs after an explicit specialization has no effect
[-Winstantiation-after-specialization]
template class EpetraIntVectorT<long long, Kokkos::Compat::KokkosSerialWrapperNode >;
^
.../Trilinos/packages/xpetra/src/Vector/Xpetra_EpetraIntVector.hpp:810:9: note: previous template specialization is here
class EpetraIntVectorT<long long, EpetraNode>
^
2 warnings generated.