]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Use previous style for checking reference type dynamic_casts 7486/head
authorDaniel Arndt <daniel.arndt@iwr.uni-heidelberg.de>
Thu, 29 Nov 2018 18:10:01 +0000 (19:10 +0100)
committerDaniel Arndt <daniel.arndt@iwr.uni-heidelberg.de>
Thu, 29 Nov 2018 18:10:01 +0000 (19:10 +0100)
source/fe/fe_poly.cc

index e87658aacc89e4bf94730bc630ae51f1c2cb2bac..fc419f181bb769f9789301373c5b23744d06bc7c 100644 (file)
@@ -45,7 +45,9 @@ FE_Poly<TensorProductPolynomials<1>, 1, 2>::fill_fe_values(
 {
   // convert data object to internal data for this class. fails with an
   // exception if that is not possible
-  const InternalData &fe_data = dynamic_cast<const InternalData &>(fe_internal);
+  Assert(dynamic_cast<const InternalData *>(&fe_internal) != nullptr,
+         ExcInternalError());
+  const InternalData &fe_data = static_cast<const InternalData &>(fe_internal);
 
   // transform gradients and higher derivatives. there is nothing to do
   // for values since we already emplaced them into output_data when
@@ -111,7 +113,9 @@ FE_Poly<TensorProductPolynomials<2>, 2, 3>::fill_fe_values(
 {
   // convert data object to internal data for this class. fails with an
   // exception if that is not possible
-  const InternalData &fe_data = dynamic_cast<const InternalData &>(fe_internal);
+  Assert(dynamic_cast<const InternalData *>(&fe_internal) != nullptr,
+         ExcInternalError());
+  const InternalData &fe_data = static_cast<const InternalData &>(fe_internal);
 
   // transform gradients and higher derivatives. there is nothing to do
   // for values since we already emplaced them into output_data when
@@ -176,7 +180,9 @@ FE_Poly<PolynomialSpace<1>, 1, 2>::fill_fe_values(
 {
   // convert data object to internal data for this class. fails with an
   // exception if that is not possible
-  const InternalData &fe_data = dynamic_cast<const InternalData &>(fe_internal);
+  Assert(dynamic_cast<const InternalData *>(&fe_internal) != nullptr,
+         ExcInternalError());
+  const InternalData &fe_data = static_cast<const InternalData &>(fe_internal);
 
   // transform gradients and higher derivatives. there is nothing to do
   // for values since we already emplaced them into output_data when
@@ -241,7 +247,9 @@ FE_Poly<PolynomialSpace<2>, 2, 3>::fill_fe_values(
 {
   // convert data object to internal data for this class. fails with an
   // exception if that is not possible
-  const InternalData &fe_data = dynamic_cast<const InternalData &>(fe_internal);
+  Assert(dynamic_cast<const InternalData *>(&fe_internal) != nullptr,
+         ExcInternalError());
+  const InternalData &fe_data = static_cast<const InternalData &>(fe_internal);
 
   // transform gradients and higher derivatives. there is nothing to do
   // for values since we already emplaced them into output_data when

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.