From: Simon Sticko Date: Thu, 7 Apr 2022 07:11:58 +0000 (+0200) Subject: Define Quadrature<0>::SubQuadrature as Quadrature<0> X-Git-Tag: v9.4.0-rc1~329^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fcba0da97375e99a24b4d301d47f2f4ed5c919d7;p=dealii.git Define Quadrature<0>::SubQuadrature as Quadrature<0> Before this, the SubQuadrature of Quadrature<0> was defined as Quadrature<-1>. This can lead to problems with some compilers because Quadrature<-1> should never be instantiated. Avoid this by redefining SubQuadrature of Quadrature<0>. --- diff --git a/include/deal.II/base/quadrature.h b/include/deal.II/base/quadrature.h index 475229341d..effb96ad2f 100644 --- a/include/deal.II/base/quadrature.h +++ b/include/deal.II/base/quadrature.h @@ -88,9 +88,10 @@ class Quadrature : public Subscriptor public: /** * Define an alias for a quadrature that acts on an object of one dimension - * less. For cells, this would then be a face quadrature. + * less. For cells, this would then be a face quadrature. A sub quadrature of + * a 0-dimensional quadrature is defined as still being 0-dimensional. */ - using SubQuadrature = Quadrature; + using SubQuadrature = Quadrature; /** * Constructor. @@ -483,7 +484,8 @@ Quadrature::serialize(Archive &ar, const unsigned int) template <> Quadrature<0>::Quadrature(const unsigned int); template <> -Quadrature<0>::Quadrature(const Quadrature<-1> &, const Quadrature<1> &); +Quadrature<0>::Quadrature(const Quadrature<0>::SubQuadrature &, + const Quadrature<1> &); template <> Quadrature<0>::Quadrature(const Quadrature<1> &); template <>