geodynamics / aspect

A parallel, extensible finite element code to simulate convection in both 2D and 3D models.
https://aspect.geodynamics.org/
Other
224 stars 235 forks source link

deal.ii deprection warnings in ASPECT #2111

Closed MFraters closed 6 years ago

MFraters commented 6 years ago

I came across quite a few deprecation warnings while compiling ASPECT with deal.ii 9.0.0 pre on a linux system (10594 lines to be precise). I can post the whole file with all the warnings, but it might be a bit much. So I post here two examples, which as far I could see these represent all the warnings:

In file included from /home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/grid/tria_boundary_lib.h:21:0,
                 from /home/fraters/aspect/aspect_2017-09-26/aspect/include/aspect/geometry_model/spherical_shell.h:28,
                 from /home/fraters/aspect/aspect_2017-09-26/aspect/source/boundary_velocity/gplates.cc:34:
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/grid/tria_boundary.h:244:52: warning: ‘template<int dim, int spacedim> class dealii::Boundary’ is deprecated [-Wdeprecated-declarations]
 class DEAL_II_DEPRECATED StraightBoundary : public Boundary<dim,spacedim>
                                                    ^
In file included from /home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/fe/mapping.h:22:0,
                 from /home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/fe/fe.h:25,
                 from /home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/hp/fe_collection.h:20,
                 from /home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/dofs/dof_handler.h:32,
                 from /home/fraters/aspect/aspect_2017-09-26/aspect/include/aspect/material_model/interface.h:30,
                 from /home/fraters/aspect/aspect_2017-09-26/aspect/include/aspect/parameters.h:28,
                 from /home/fraters/aspect/aspect_2017-09-26/aspect/include/aspect/simulator_access.h:26,
                 from /home/fraters/aspect/aspect_2017-09-26/aspect/include/aspect/boundary_velocity/interface.h:26,
                 from /home/fraters/aspect/aspect_2017-09-26/aspect/include/aspect/boundary_velocity/gplates.h:25,
                 from /home/fraters/aspect/aspect_2017-09-26/aspect/source/boundary_velocity/gplates.cc:23:
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/grid/tria.h:48:40: note: declared here
 template <int dim, int spacedim> class Boundary;
In file included from /home/fraters/aspect/aspect_2017-09-26/aspect/include/aspect/geometry_model/spherical_shell.h:28:0,
                 from /home/fraters/aspect/aspect_2017-09-26/aspect/source/boundary_velocity/gplates.cc:34:
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/grid/tria_boundary_lib.h:486:57: warning: ‘template<int dim, int spacedim> class dealii::HyperBallBoundary’ is deprecated [-Wdeprecated-declarations]
 class DEAL_II_DEPRECATED HalfHyperBallBoundary : public HyperBallBoundary<dim>
                                                         ^
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/grid/tria_boundary_lib.h:344:26: note: declared here
 class DEAL_II_DEPRECATED HyperBallBoundary : public StraightBoundary<dim,spacedim>
In file included from /home/fraters/aspect/aspect_2017-09-26/aspect/source/simulator/solver.cc:36:0:
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/lac/pointer_matrix.h:117:49: warning: ‘template<class VectorType> class dealii::PointerMatrixBase’ is deprecated [-Wdeprecated-declarations]
 class DEAL_II_DEPRECATED PointerMatrix : public PointerMatrixBase<VectorType>
                                                 ^
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/lac/pointer_matrix.h:53:26: note: declared here
 class DEAL_II_DEPRECATED PointerMatrixBase : public Subscriptor
                          ^
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/lac/pointer_matrix.h:168:54: warning: ‘PointerMatrix’ is deprecated [-Wdeprecated-declarations]
   const PointerMatrix &operator= (const MatrixType *M);
                                                      ^
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/lac/pointer_matrix.h:117:26: note: declared here
 class DEAL_II_DEPRECATED PointerMatrix : public PointerMatrixBase<VectorType>
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/lac/pointer_matrix.h:198:33: warning: ‘template<class MatrixType, class VectorType> class dealii::PointerMatrix’ is deprecated [-Wdeprecated-declarations]
   SmartPointer<const MatrixType,PointerMatrix<MatrixType,VectorType> > m;
                                 ^
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/lac/pointer_matrix.h:117:26: note: declared here
 class DEAL_II_DEPRECATED PointerMatrix : public PointerMatrixBase<VectorType>
                          ^
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/lac/pointer_matrix.h:198:33: warning: ‘PointerMatrix’ is deprecated [-Wdeprecated-declarations]
   SmartPointer<const MatrixType,PointerMatrix<MatrixType,VectorType> > m;
                                 ^
/home/fraters/deal.ii/deal.ii_2017-09-26/dealii/include/deal.II/lac/pointer_matrix.h:117:26: note: declared here
 class DEAL_II_DEPRECATED PointerMatrix : public PointerMatrixBase<VectorType>
gassmoeller commented 6 years ago

Hi Menno, I just tried to compile the newest deal.II dev with ASPECT master and did not get these warnings (gcc 4.8). Which compiler did you use for this?

naliboff commented 6 years ago

For reference, I'm also getting these warnings with gcc 5.4.

gassmoeller commented 6 years ago

I tried to reproduce the deprecation warnings with a current deal.II master and gcc 7.2, but was unsuccessful. The only thing I found was #2134. Could one of you try again with a current deal.II master? Maybe it is fixed there already. If not it is likely something in gcc 5.4 that no longer happens in gcc 7.2 (or some difference in our deal.II configurations).

MFraters commented 6 years ago

I tested with the newest master on three different machines, and the warnings have disappeared for me, except on one machine when I try to compile the Spiegelman benchmark. Not sure what is causing the difference. @naliboff, do you still see the warnings with the newest master?

gassmoeller commented 6 years ago

It seems this is fixed.