From f1cf4efcc87207e57ff7516748522dd74ae09c31 Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Tue, 17 Jan 2023 17:49:55 -0700 Subject: [PATCH] Declare the existence of explicit instantiations. --- include/deal.II/hp/mapping_collection.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/include/deal.II/hp/mapping_collection.h b/include/deal.II/hp/mapping_collection.h index 650a54d296..c1c22feef7 100644 --- a/include/deal.II/hp/mapping_collection.h +++ b/include/deal.II/hp/mapping_collection.h @@ -152,6 +152,7 @@ namespace hp }; + /* --------------- inline functions ------------------- */ template @@ -180,6 +181,19 @@ namespace hp StaticMappingQ1::mapping_collection = MappingCollection(MappingQ1{}); + +#ifndef DOXYGEN + // Declare the existence of explicit instantiations of the class + // above to avoid certain warnings issues by clang and + // newer (LLVM-based) Intel compilers: + extern template struct StaticMappingQ1<1, 1>; + extern template struct StaticMappingQ1<1, 2>; + extern template struct StaticMappingQ1<1, 3>; + extern template struct StaticMappingQ1<2, 2>; + extern template struct StaticMappingQ1<2, 3>; + extern template struct StaticMappingQ1<3, 3>; +#endif + } // namespace hp -- 2.39.5