From: Daniel Arndt Date: Thu, 14 Sep 2017 21:58:05 +0000 (+0200) Subject: Move default definitions to declarations X-Git-Tag: v9.0.0-rc1~1068^2~2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d7cc039a467aa1f74ecbef20add590bbfec4b6ac;p=dealii.git Move default definitions to declarations --- diff --git a/include/deal.II/algorithms/operator.h b/include/deal.II/algorithms/operator.h index b2279bb6f2..93d0d2aac2 100644 --- a/include/deal.II/algorithms/operator.h +++ b/include/deal.II/algorithms/operator.h @@ -73,7 +73,7 @@ namespace Algorithms /** * The virtual destructor. */ - ~OperatorBase(); + virtual ~OperatorBase() = default; /** * The actual operation, which is implemented in a derived class. @@ -106,13 +106,22 @@ namespace Algorithms template class OutputOperator : public Subscriptor { - OutputOperator(const OutputOperator &) = delete; public: + /** + * Constructor initializing member variables with invalid data. + */ OutputOperator (); + + /** + * The copy constructor is deleted since objects of this class + * should not be copied. + */ + OutputOperator(const OutputOperator &) = delete; + /** * Empty virtual destructor. */ - virtual ~OutputOperator(); + virtual ~OutputOperator() = default; /** * Set the stream @p os to which data is written. If no stream is selected diff --git a/include/deal.II/algorithms/operator.templates.h b/include/deal.II/algorithms/operator.templates.h index 328d455e58..3aac1185f8 100644 --- a/include/deal.II/algorithms/operator.templates.h +++ b/include/deal.II/algorithms/operator.templates.h @@ -25,9 +25,6 @@ DEAL_II_NAMESPACE_OPEN namespace Algorithms { - template - OutputOperator::~OutputOperator() = default; - template OutputOperator::OutputOperator() : diff --git a/include/deal.II/base/auto_derivative_function.h b/include/deal.II/base/auto_derivative_function.h index 64551794a7..fba1bf23c5 100644 --- a/include/deal.II/base/auto_derivative_function.h +++ b/include/deal.II/base/auto_derivative_function.h @@ -132,7 +132,7 @@ public: /** * Virtual destructor; absolutely necessary in this case. */ - virtual ~AutoDerivativeFunction (); + virtual ~AutoDerivativeFunction () = default; /** * Choose the difference formula. See the enum #DifferenceFormula for diff --git a/include/deal.II/base/convergence_table.h b/include/deal.II/base/convergence_table.h index 09b11adf88..58b396adb4 100644 --- a/include/deal.II/base/convergence_table.h +++ b/include/deal.II/base/convergence_table.h @@ -65,7 +65,7 @@ public: /** * Constructor. */ - ConvergenceTable(); + ConvergenceTable() = default; /** * Rate in relation to the rows. diff --git a/include/deal.II/base/data_out_base.h b/include/deal.II/base/data_out_base.h index be9c8e584e..baf0570577 100644 --- a/include/deal.II/base/data_out_base.h +++ b/include/deal.II/base/data_out_base.h @@ -2374,7 +2374,7 @@ public: * Destructor. Does nothing, but is declared virtual since this class has * virtual functions. */ - virtual ~DataOutInterface (); + virtual ~DataOutInterface () = default; /** * Obtain data through get_patches() and write it to out in OpenDX diff --git a/include/deal.II/base/flow_function.h b/include/deal.II/base/flow_function.h index c16fcbd630..0b9c8f53d2 100644 --- a/include/deal.II/base/flow_function.h +++ b/include/deal.II/base/flow_function.h @@ -56,7 +56,7 @@ namespace Functions /** * Virtual destructor. */ - virtual ~FlowFunction(); + virtual ~FlowFunction() = default; /** * Store an adjustment for the pressure function, such that its mean value @@ -145,7 +145,8 @@ namespace Functions */ PoisseuilleFlow (const double r, const double Re); - virtual ~PoisseuilleFlow(); + + virtual ~PoisseuilleFlow() = default; virtual void vector_values (const std::vector > &points, std::vector > &values) const; @@ -187,7 +188,8 @@ namespace Functions * Change the viscosity and the reaction parameter. */ void set_parameters (const double viscosity, const double reaction); - virtual ~StokesCosine(); + + virtual ~StokesCosine() = default; virtual void vector_values (const std::vector > &points, std::vector > &values) const; @@ -276,7 +278,8 @@ namespace Functions * Stokes problem. */ Kovasznay (const double Re, bool Stokes = false); - virtual ~Kovasznay(); + + virtual ~Kovasznay() = default; virtual void vector_values (const std::vector > &points, std::vector > &values) const; diff --git a/include/deal.II/base/function.h b/include/deal.II/base/function.h index 0d4db6aaec..e440f82fdb 100644 --- a/include/deal.II/base/function.h +++ b/include/deal.II/base/function.h @@ -807,7 +807,7 @@ public: * This destructor is defined as virtual so as to coincide with all other * aspects of class. */ - virtual ~VectorFunctionFromTensorFunction(); + virtual ~VectorFunctionFromTensorFunction() = default; /** * Return a single component of a vector-valued function at a given point. diff --git a/include/deal.II/base/function.templates.h b/include/deal.II/base/function.templates.h index e27051877e..3621675179 100644 --- a/include/deal.II/base/function.templates.h +++ b/include/deal.II/base/function.templates.h @@ -45,6 +45,9 @@ Function::Function (const unsigned int n_components, } + +// The destructor is pure virtual so we can't default it +// in the declaration. template Function::~Function () = default; @@ -679,9 +682,6 @@ VectorFunctionFromTensorFunction::VectorFunctionFromTensorFunction } -template -VectorFunctionFromTensorFunction::~VectorFunctionFromTensorFunction () = default; - template inline diff --git a/include/deal.II/base/function_time.h b/include/deal.II/base/function_time.h index 3753e728ec..5c4589c8f1 100644 --- a/include/deal.II/base/function_time.h +++ b/include/deal.II/base/function_time.h @@ -81,7 +81,7 @@ public: /** * Virtual destructor. */ - virtual ~FunctionTime(); + virtual ~FunctionTime() = default; /** * Return the value of the time variable. diff --git a/include/deal.II/base/function_time.templates.h b/include/deal.II/base/function_time.templates.h index 85955b0653..b0e849bad2 100644 --- a/include/deal.II/base/function_time.templates.h +++ b/include/deal.II/base/function_time.templates.h @@ -29,11 +29,6 @@ FunctionTime::FunctionTime(const Number initial_time) -template -FunctionTime::~FunctionTime() = default; - - - template void FunctionTime::set_time (const Number new_time) diff --git a/include/deal.II/base/parameter_handler.h b/include/deal.II/base/parameter_handler.h index 35fb351083..e89dd053d6 100644 --- a/include/deal.II/base/parameter_handler.h +++ b/include/deal.II/base/parameter_handler.h @@ -863,7 +863,7 @@ public: * safer as we have virtual functions. It actually does nothing * spectacular. */ - virtual ~ParameterHandler (); + virtual ~ParameterHandler () = default; /** * Parse each line from a stream until the stream returns the eof @@ -1765,7 +1765,7 @@ public: * Destructor. It doesn't actually do anything, but is declared to force * derived classes to have a virtual destructor. */ - virtual ~UserClass (); + virtual ~UserClass () = default; /** * create_new must provide a clean object, either by creating a @@ -1788,7 +1788,7 @@ public: * Destructor. Declare this only to have a virtual destructor, which is * safer as we have virtual functions. It actually does nothing spectacular. */ - virtual ~MultipleParameterLoop (); + virtual ~MultipleParameterLoop () = default; /** * Read input from a stream until the stream returns the eof diff --git a/include/deal.II/base/patterns.h b/include/deal.II/base/patterns.h index 9840586877..cfeda361e6 100644 --- a/include/deal.II/base/patterns.h +++ b/include/deal.II/base/patterns.h @@ -74,7 +74,7 @@ namespace Patterns /** * Make destructor of this and all derived classes virtual. */ - virtual ~PatternBase (); + virtual ~PatternBase () = default; /** * Return true if the given string matches the pattern. @@ -787,7 +787,7 @@ namespace Patterns * Constructor. (Allow for at least one non-virtual function in this * class, as otherwise sometimes no virtual table is emitted.) */ - Anything (); + Anything () = default; /** * Return true if the string matches its constraints, i.e. @@ -919,7 +919,7 @@ namespace Patterns /** * Constructor. */ - DirectoryName (); + DirectoryName () = default; /** * Return true if the string matches its constraints, i.e. diff --git a/include/deal.II/base/table_handler.h b/include/deal.II/base/table_handler.h index cdc38542bb..025f675ea9 100644 --- a/include/deal.II/base/table_handler.h +++ b/include/deal.II/base/table_handler.h @@ -54,7 +54,7 @@ namespace internal /** * Default constructor. */ - TableEntry (); + TableEntry () = default; /** * Constructor. Initialize this table element with the value diff --git a/include/deal.II/base/tensor_function.h b/include/deal.II/base/tensor_function.h index 3e34f5c007..c67c7160b7 100644 --- a/include/deal.II/base/tensor_function.h +++ b/include/deal.II/base/tensor_function.h @@ -75,7 +75,7 @@ public: * usually not used by their true type, but rather through pointers to this * base class. */ - virtual ~TensorFunction (); + virtual ~TensorFunction () = default; /** * Return the value of the function at the given point. @@ -127,7 +127,7 @@ public: ConstantTensorFunction (const dealii::Tensor &value, const Number initial_time = 0.0); - virtual ~ConstantTensorFunction (); + virtual ~ConstantTensorFunction () = default; virtual typename dealii::TensorFunction::value_type value (const Point &p) const; diff --git a/include/deal.II/base/tensor_function.templates.h b/include/deal.II/base/tensor_function.templates.h index 6e98ee34df..157e3c4152 100644 --- a/include/deal.II/base/tensor_function.templates.h +++ b/include/deal.II/base/tensor_function.templates.h @@ -33,9 +33,6 @@ TensorFunction::TensorFunction (const Number initial_time) {} -template -TensorFunction::~TensorFunction () = default; - template typename TensorFunction::value_type @@ -94,9 +91,6 @@ ConstantTensorFunction::ConstantTensorFunction ( {} -template -ConstantTensorFunction::~ConstantTensorFunction () = default; - template typename TensorFunction::value_type diff --git a/include/deal.II/base/thread_local_storage.h b/include/deal.II/base/thread_local_storage.h index 5553034da4..dbb20cd9db 100644 --- a/include/deal.II/base/thread_local_storage.h +++ b/include/deal.II/base/thread_local_storage.h @@ -74,7 +74,7 @@ namespace Threads * Default constructor. Initialize each thread local object using its * default constructor. */ - ThreadLocalStorage (); + ThreadLocalStorage () = default; /** * A kind of copy constructor. Initialize each thread local object by @@ -179,11 +179,6 @@ namespace Threads // ----------------- inline and template functions ---------------------------- - template - inline - ThreadLocalStorage::ThreadLocalStorage() = default; - - template inline ThreadLocalStorage::ThreadLocalStorage(const T &t) diff --git a/include/deal.II/distributed/shared_tria.h b/include/deal.II/distributed/shared_tria.h index 4a2840ab89..20d865ea79 100644 --- a/include/deal.II/distributed/shared_tria.h +++ b/include/deal.II/distributed/shared_tria.h @@ -207,7 +207,7 @@ namespace parallel /** * Destructor. */ - virtual ~Triangulation (); + virtual ~Triangulation () = default; /** * Coarsen and refine the mesh according to refinement and coarsening diff --git a/include/deal.II/distributed/solution_transfer.h b/include/deal.II/distributed/solution_transfer.h index 37e047ac72..21763a78be 100644 --- a/include/deal.II/distributed/solution_transfer.h +++ b/include/deal.II/distributed/solution_transfer.h @@ -131,7 +131,7 @@ namespace parallel /** * Destructor. */ - ~SolutionTransfer(); + ~SolutionTransfer() = default; /** * Prepares the @p SolutionTransfer for coarsening and refinement. It diff --git a/include/deal.II/fe/fe.h b/include/deal.II/fe/fe.h index f59bba7aa9..62f0ae0085 100644 --- a/include/deal.II/fe/fe.h +++ b/include/deal.II/fe/fe.h @@ -683,7 +683,7 @@ public: /** * Destructor. Made virtual to allow polymorphism. */ - virtual ~InternalDataBase (); + virtual ~InternalDataBase () = default; /** * A set of update flags specifying the kind of information that an diff --git a/include/deal.II/fe/fe_p1nc.h b/include/deal.II/fe/fe_p1nc.h index c2ec8e7bc4..555201c82e 100644 --- a/include/deal.II/fe/fe_p1nc.h +++ b/include/deal.II/fe/fe_p1nc.h @@ -272,7 +272,7 @@ public: /** * Destructor. */ - virtual ~FE_P1NC (); + virtual ~FE_P1NC () = default; diff --git a/include/deal.II/fe/fe_tools.h b/include/deal.II/fe/fe_tools.h index e755dfee02..202fec1088 100644 --- a/include/deal.II/fe/fe_tools.h +++ b/include/deal.II/fe/fe_tools.h @@ -96,7 +96,7 @@ namespace FETools /** * Virtual destructor doing nothing but making the compiler happy. */ - virtual ~FEFactoryBase(); + virtual ~FEFactoryBase() = default; }; /** diff --git a/include/deal.II/fe/fe_tools.templates.h b/include/deal.II/fe/fe_tools.templates.h index e247033ddb..b10f0efd72 100644 --- a/include/deal.II/fe/fe_tools.templates.h +++ b/include/deal.II/fe/fe_tools.templates.h @@ -1318,11 +1318,6 @@ namespace namespace FETools { - template - FEFactoryBase::~FEFactoryBase() = default; - - - template void compute_component_wise( const FiniteElement &element, diff --git a/include/deal.II/fe/mapping.h b/include/deal.II/fe/mapping.h index 3ea53c36e5..c23c772dfc 100644 --- a/include/deal.II/fe/mapping.h +++ b/include/deal.II/fe/mapping.h @@ -291,7 +291,7 @@ public: /** * Virtual destructor. */ - virtual ~Mapping (); + virtual ~Mapping () = default; /** * Return a pointer to a copy of the present object. The caller of this copy @@ -525,12 +525,6 @@ public: */ class InternalDataBase { - private: - /** - * Copy construction is forbidden. - */ - InternalDataBase (const InternalDataBase &) = delete; - public: /** * Constructor. Sets update_flags to @p update_default and @p first_cell @@ -538,10 +532,15 @@ public: */ InternalDataBase (); + /** + * Copy construction is forbidden. + */ + InternalDataBase (const InternalDataBase &) = delete; + /** * Virtual destructor for derived classes */ - virtual ~InternalDataBase (); + virtual ~InternalDataBase () = default; /** * A set of update flags specifying the kind of information that an diff --git a/include/deal.II/fe/mapping_manifold.h b/include/deal.II/fe/mapping_manifold.h index f30bb268bb..c86a5b22dd 100644 --- a/include/deal.II/fe/mapping_manifold.h +++ b/include/deal.II/fe/mapping_manifold.h @@ -63,7 +63,7 @@ public: /** * Constructor. */ - MappingManifold (); + MappingManifold () = default; /** * Copy constructor. @@ -174,7 +174,7 @@ public: /** * Constructor. */ - InternalData(); + InternalData() = default; /** * Initialize the object's member variables related to cell data based on diff --git a/include/deal.II/grid/manifold.h b/include/deal.II/grid/manifold.h index 64e12e0f43..f4bb2ac072 100644 --- a/include/deal.II/grid/manifold.h +++ b/include/deal.II/grid/manifold.h @@ -345,7 +345,7 @@ public: * Destructor. Does nothing here, but needs to be declared virtual to make * class hierarchies derived from this class possible. */ - virtual ~Manifold (); + virtual ~Manifold () = default; /** * @name Computing the location of points. @@ -930,7 +930,7 @@ public: * Destructor. Does nothing here, but needs to be declared to make it * virtual. */ - virtual ~ChartManifold (); + virtual ~ChartManifold () = default; /** * Refer to the general documentation of this class and the documentation of diff --git a/include/deal.II/grid/persistent_tria.h b/include/deal.II/grid/persistent_tria.h index aa4446b0cb..b61281fc67 100644 --- a/include/deal.II/grid/persistent_tria.h +++ b/include/deal.II/grid/persistent_tria.h @@ -133,7 +133,7 @@ public: /** * Destructor. */ - virtual ~PersistentTriangulation (); + virtual ~PersistentTriangulation () = default; /** * Overloaded version of the same function in the base class which stores diff --git a/include/deal.II/grid/tria_boundary.h b/include/deal.II/grid/tria_boundary.h index f3195cf556..84d20d893c 100644 --- a/include/deal.II/grid/tria_boundary.h +++ b/include/deal.II/grid/tria_boundary.h @@ -86,7 +86,7 @@ public: * Destructor. Does nothing here, but needs to be declared to make it * virtual. */ - virtual ~Boundary (); + virtual ~Boundary () = default; /** @@ -241,7 +241,7 @@ public: /** * Default constructor. Some compilers require this for some reasons. */ - StraightBoundary (); + StraightBoundary () = default; /** * Let the new point be the arithmetic mean of the two vertices of the line. diff --git a/include/deal.II/hp/fe_collection.h b/include/deal.II/hp/fe_collection.h index 044d6cd71f..e37e14afc7 100644 --- a/include/deal.II/hp/fe_collection.h +++ b/include/deal.II/hp/fe_collection.h @@ -58,7 +58,7 @@ namespace hp * Default constructor. Leads to an empty collection that can later be * filled using push_back(). */ - FECollection (); + FECollection () = default; /** * Conversion constructor. This constructor creates a FECollection from a diff --git a/include/deal.II/hp/mapping_collection.h b/include/deal.II/hp/mapping_collection.h index d6e0bbb821..b43bb00d75 100644 --- a/include/deal.II/hp/mapping_collection.h +++ b/include/deal.II/hp/mapping_collection.h @@ -58,7 +58,7 @@ namespace hp * Default constructor. Leads to an empty collection that can later be * filled using push_back(). */ - MappingCollection (); + MappingCollection () = default; /** * Conversion constructor. This constructor creates a MappingCollection diff --git a/include/deal.II/lac/block_sparsity_pattern.h b/include/deal.II/lac/block_sparsity_pattern.h index 34e7cbba6e..43b33615f3 100644 --- a/include/deal.II/lac/block_sparsity_pattern.h +++ b/include/deal.II/lac/block_sparsity_pattern.h @@ -382,7 +382,7 @@ public: * useful if you want such objects as member variables in other classes. You * can make the structure usable by calling the reinit() function. */ - BlockSparsityPattern (); + BlockSparsityPattern () = default; /** * Initialize the matrix with the given number of block rows and columns. @@ -488,7 +488,7 @@ public: * useful if you want such objects as member variables in other classes. You * can make the structure usable by calling the reinit() function. */ - BlockDynamicSparsityPattern (); + BlockDynamicSparsityPattern () = default; /** * Initialize the matrix with the given number of block rows and columns. @@ -604,7 +604,7 @@ namespace TrilinosWrappers * useful if you want such objects as member variables in other classes. * You can make the structure usable by calling the reinit() function. */ - BlockSparsityPattern (); + BlockSparsityPattern () = default; /** * Initialize the matrix with the given number of block rows and columns. diff --git a/include/deal.II/lac/block_vector.h b/include/deal.II/lac/block_vector.h index 13fd7d02a6..64a7f3f32c 100644 --- a/include/deal.II/lac/block_vector.h +++ b/include/deal.II/lac/block_vector.h @@ -167,7 +167,7 @@ public: /** * Destructor. Clears memory */ - ~BlockVector (); + ~BlockVector () = default; /** * Call the compress() function on all the subblocks. diff --git a/include/deal.II/lac/block_vector.templates.h b/include/deal.II/lac/block_vector.templates.h index 3d7d25e6b3..73dc5db2f8 100644 --- a/include/deal.II/lac/block_vector.templates.h +++ b/include/deal.II/lac/block_vector.templates.h @@ -141,11 +141,6 @@ void BlockVector::reinit (const BlockVector &v, -template -BlockVector::~BlockVector () = default; - - - #ifdef DEAL_II_WITH_TRILINOS template inline diff --git a/include/deal.II/lac/chunk_sparsity_pattern.h b/include/deal.II/lac/chunk_sparsity_pattern.h index 48aa237c87..31392ac36e 100644 --- a/include/deal.II/lac/chunk_sparsity_pattern.h +++ b/include/deal.II/lac/chunk_sparsity_pattern.h @@ -334,7 +334,7 @@ public: /** * Destructor. */ - ~ChunkSparsityPattern (); + ~ChunkSparsityPattern () = default; /** * Copy operator. For this the same holds as for the copy constructor: it is diff --git a/include/deal.II/lac/householder.h b/include/deal.II/lac/householder.h index 960dc9ddc6..484ba02a87 100644 --- a/include/deal.II/lac/householder.h +++ b/include/deal.II/lac/householder.h @@ -64,7 +64,7 @@ public: /** * Create an empty object. */ - Householder (); + Householder () = default; /** * Create an object holding the QR-decomposition of a matrix. @@ -125,11 +125,6 @@ private: // QR-transformation cf. Stoer 1 4.8.2 (p. 191) -template -Householder::Householder() = default; - - - template template void diff --git a/include/deal.II/lac/matrix_out.h b/include/deal.II/lac/matrix_out.h index cf401940c3..ddb5ad279d 100644 --- a/include/deal.II/lac/matrix_out.h +++ b/include/deal.II/lac/matrix_out.h @@ -114,7 +114,7 @@ public: /** * Destructor. Declared in order to make it virtual. */ - virtual ~MatrixOut (); + virtual ~MatrixOut () = default; /** * Generate a list of patches from the given matrix and use the given string diff --git a/include/deal.II/lac/petsc_parallel_block_sparse_matrix.h b/include/deal.II/lac/petsc_parallel_block_sparse_matrix.h index 57f218efa1..eb5e277014 100644 --- a/include/deal.II/lac/petsc_parallel_block_sparse_matrix.h +++ b/include/deal.II/lac/petsc_parallel_block_sparse_matrix.h @@ -101,12 +101,12 @@ namespace PETScWrappers * reinit(BlockSparsityPattern). The number of blocks per row and column * are then determined by that function. */ - BlockSparseMatrix (); + BlockSparseMatrix () = default; /** * Destructor. */ - ~BlockSparseMatrix (); + ~BlockSparseMatrix () = default; /** * Pseudo copy operator only copying empty objects. The sizes of the diff --git a/include/deal.II/lac/petsc_precondition.h b/include/deal.II/lac/petsc_precondition.h index e050bbac6f..bf93ab3dfe 100644 --- a/include/deal.II/lac/petsc_precondition.h +++ b/include/deal.II/lac/petsc_precondition.h @@ -141,7 +141,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionJacobi (); + PreconditionJacobi () = default; /** @@ -215,7 +215,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionBlockJacobi (); + PreconditionBlockJacobi () = default; /** * Constructor. Take the matrix which is used to form the preconditioner, @@ -291,7 +291,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionSOR (); + PreconditionSOR () = default; /** * Constructor. Take the matrix which is used to form the preconditioner, @@ -351,7 +351,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionSSOR (); + PreconditionSSOR () = default; /** * Constructor. Take the matrix which is used to form the preconditioner, @@ -414,7 +414,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionEisenstat (); + PreconditionEisenstat () = default; /** * Constructor. Take the matrix which is used to form the preconditioner, @@ -474,7 +474,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionICC (); + PreconditionICC () = default; /** * Constructor. Take the matrix which is used to form the preconditioner, @@ -534,7 +534,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionILU (); + PreconditionILU () = default; /** * Constructor. Take the matrix which is used to form the preconditioner, @@ -612,7 +612,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionLU (); + PreconditionLU () = default; /** * Constructor. Take the matrix which is used to form the preconditioner, @@ -718,7 +718,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionBoomerAMG (); + PreconditionBoomerAMG () = default; /** * Constructor. Take the matrix which is used to form the preconditioner, @@ -859,7 +859,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionParaSails (); + PreconditionParaSails () = default; /** * Constructor. Take the matrix which is used to form the preconditioner, @@ -906,7 +906,7 @@ namespace PETScWrappers * Empty Constructor. You need to call initialize() before using this * object. */ - PreconditionNone (); + PreconditionNone () = default; /** * Constructor. Take the matrix which is used to form the preconditioner, diff --git a/include/deal.II/lac/petsc_solver.h b/include/deal.II/lac/petsc_solver.h index 73ba09e564..33e9db2f61 100644 --- a/include/deal.II/lac/petsc_solver.h +++ b/include/deal.II/lac/petsc_solver.h @@ -122,7 +122,7 @@ namespace PETScWrappers /** * Destructor. */ - virtual ~SolverBase (); + virtual ~SolverBase () = default; /** * Solve the linear system Ax=b. Depending on the information diff --git a/include/deal.II/lac/precondition_block.templates.h b/include/deal.II/lac/precondition_block.templates.h index eb81a04d05..d2c8f8c897 100644 --- a/include/deal.II/lac/precondition_block.templates.h +++ b/include/deal.II/lac/precondition_block.templates.h @@ -45,9 +45,6 @@ AdditionalData (const size_type block_size, {} -template -PreconditionBlockBase::~PreconditionBlockBase () = default; - template PreconditionBlock::PreconditionBlock (bool store) diff --git a/include/deal.II/lac/precondition_block_base.h b/include/deal.II/lac/precondition_block_base.h index dd44793033..9953ddf528 100644 --- a/include/deal.II/lac/precondition_block_base.h +++ b/include/deal.II/lac/precondition_block_base.h @@ -89,7 +89,7 @@ public: /** * The virtual destructor */ - ~PreconditionBlockBase(); + ~PreconditionBlockBase() = default; /** * Deletes the inverse diagonal block matrices if existent hence leaves the diff --git a/include/deal.II/lac/solver_control.h b/include/deal.II/lac/solver_control.h index c8e4613522..e6c57a8c7a 100644 --- a/include/deal.II/lac/solver_control.h +++ b/include/deal.II/lac/solver_control.h @@ -155,7 +155,7 @@ public: * Virtual destructor is needed as there are virtual functions in this * class. */ - virtual ~SolverControl(); + virtual ~SolverControl() = default; /** * Interface to parameter file. @@ -429,7 +429,7 @@ public: * Virtual destructor is needed as there are virtual functions in this * class. */ - virtual ~ReductionControl(); + virtual ~ReductionControl() = default; /** * Interface to parameter file. @@ -513,7 +513,7 @@ public: * Virtual destructor is needed as there are virtual functions in this * class. */ - virtual ~IterationNumberControl(); + virtual ~IterationNumberControl() = default; /** * Decide about success or failure of an iteration. This function bases @@ -569,7 +569,7 @@ public: * Virtual destructor is needed as there are virtual functions in this * class. */ - virtual ~ConsecutiveControl(); + virtual ~ConsecutiveControl() = default; /** * Decide about success or failure of an iteration, see the class description diff --git a/include/deal.II/lac/solver_richardson.h b/include/deal.II/lac/solver_richardson.h index 91e02102c1..487f8e5590 100644 --- a/include/deal.II/lac/solver_richardson.h +++ b/include/deal.II/lac/solver_richardson.h @@ -102,7 +102,7 @@ public: /** * Virtual destructor. */ - virtual ~SolverRichardson (); + virtual ~SolverRichardson () = default; /** * Solve the linear system $Ax=b$ for x. @@ -192,10 +192,6 @@ SolverRichardson::SolverRichardson(SolverControl &cn, -template -SolverRichardson::~SolverRichardson() = default; - - template template void diff --git a/include/deal.II/lac/sparse_ilu.h b/include/deal.II/lac/sparse_ilu.h index a03374ee66..ebff352e2f 100644 --- a/include/deal.II/lac/sparse_ilu.h +++ b/include/deal.II/lac/sparse_ilu.h @@ -71,7 +71,7 @@ public: * Call the @p initialize function before using this object as * preconditioner. */ - SparseILU (); + SparseILU () = default; /** * Make SparseLUDecomposition::AdditionalData accessible to this class as diff --git a/include/deal.II/lac/sparse_ilu.templates.h b/include/deal.II/lac/sparse_ilu.templates.h index 909950e857..b685b8860c 100644 --- a/include/deal.II/lac/sparse_ilu.templates.h +++ b/include/deal.II/lac/sparse_ilu.templates.h @@ -28,10 +28,6 @@ DEAL_II_NAMESPACE_OPEN -template -SparseILU::SparseILU () = default; - - template template diff --git a/include/deal.II/lac/sparse_matrix_ez.h b/include/deal.II/lac/sparse_matrix_ez.h index c796548706..5f5228b77d 100644 --- a/include/deal.II/lac/sparse_matrix_ez.h +++ b/include/deal.II/lac/sparse_matrix_ez.h @@ -327,7 +327,7 @@ public: * Destructor. Free all memory, but do not release the memory of the * sparsity structure. */ - ~SparseMatrixEZ (); + ~SparseMatrixEZ () = default; /** * Pseudo operator only copying empty objects. diff --git a/include/deal.II/lac/sparse_matrix_ez.templates.h b/include/deal.II/lac/sparse_matrix_ez.templates.h index 7589d89171..6a6f3623bb 100644 --- a/include/deal.II/lac/sparse_matrix_ez.templates.h +++ b/include/deal.II/lac/sparse_matrix_ez.templates.h @@ -63,9 +63,6 @@ SparseMatrixEZ::SparseMatrixEZ(const size_type n_rows, } -template -SparseMatrixEZ::~SparseMatrixEZ() = default; - template SparseMatrixEZ & diff --git a/include/deal.II/lac/tensor_product_matrix.h b/include/deal.II/lac/tensor_product_matrix.h index e3a69861d5..b4804e1054 100644 --- a/include/deal.II/lac/tensor_product_matrix.h +++ b/include/deal.II/lac/tensor_product_matrix.h @@ -103,7 +103,7 @@ public: /** * Constructor. */ - TensorProductMatrixSymmetricSum(); + TensorProductMatrixSymmetricSum() = default; /** * Constructor that is equivalent to the previous constructor and @@ -203,13 +203,6 @@ private: #ifndef DOXYGEN -template -inline -TensorProductMatrixSymmetricSum -::TensorProductMatrixSymmetricSum() = default; - - - template inline TensorProductMatrixSymmetricSum diff --git a/include/deal.II/lac/trilinos_block_sparse_matrix.h b/include/deal.II/lac/trilinos_block_sparse_matrix.h index 3595b2571a..bd0ca5062b 100644 --- a/include/deal.II/lac/trilinos_block_sparse_matrix.h +++ b/include/deal.II/lac/trilinos_block_sparse_matrix.h @@ -104,7 +104,7 @@ namespace TrilinosWrappers * reinit(BlockSparsityPattern). The number of blocks per row and column * are then determined by that function. */ - BlockSparseMatrix (); + BlockSparseMatrix () = default; /** * Destructor. @@ -116,7 +116,7 @@ namespace TrilinosWrappers * matrices need to be the same. */ BlockSparseMatrix & - operator = (const BlockSparseMatrix &); + operator = (const BlockSparseMatrix &) = default; /** * This operator assigns a scalar to a matrix. Since this does usually not diff --git a/include/deal.II/lac/trilinos_parallel_block_vector.h b/include/deal.II/lac/trilinos_parallel_block_vector.h index 16884c0133..2065284fe3 100644 --- a/include/deal.II/lac/trilinos_parallel_block_vector.h +++ b/include/deal.II/lac/trilinos_parallel_block_vector.h @@ -138,7 +138,7 @@ namespace TrilinosWrappers /** * Destructor. Clears memory */ - ~BlockVector (); + ~BlockVector () = default; /** * Copy operator: fill all components of the vector that are locally diff --git a/include/deal.II/lac/trilinos_precondition.h b/include/deal.II/lac/trilinos_precondition.h index ae348b4a46..a12605897a 100644 --- a/include/deal.II/lac/trilinos_precondition.h +++ b/include/deal.II/lac/trilinos_precondition.h @@ -106,7 +106,7 @@ namespace TrilinosWrappers /** * Destructor. */ - ~PreconditionBase (); + ~PreconditionBase () = default; /** * Destroys the preconditioner, leaving an object like just after having diff --git a/include/deal.II/lac/trilinos_solver.h b/include/deal.II/lac/trilinos_solver.h index db88a344c7..17e672d342 100644 --- a/include/deal.II/lac/trilinos_solver.h +++ b/include/deal.II/lac/trilinos_solver.h @@ -146,7 +146,7 @@ namespace TrilinosWrappers /** * Destructor. */ - virtual ~SolverBase (); + virtual ~SolverBase () = default; /** * Solve the linear system Ax=b. Depending on the information @@ -628,7 +628,7 @@ namespace TrilinosWrappers /** * Destructor. */ - virtual ~SolverDirect (); + virtual ~SolverDirect () = default; /** * Initializes the direct solver for the matrix A and creates a diff --git a/include/deal.II/lac/trilinos_sparse_matrix.h b/include/deal.II/lac/trilinos_sparse_matrix.h index 03a14892b1..263d3feab2 100644 --- a/include/deal.II/lac/trilinos_sparse_matrix.h +++ b/include/deal.II/lac/trilinos_sparse_matrix.h @@ -570,7 +570,7 @@ namespace TrilinosWrappers /** * Destructor. Made virtual so that one can use pointers to this class. */ - virtual ~SparseMatrix (); + virtual ~SparseMatrix () = default; /** * This function initializes the Trilinos matrix with a deal.II sparsity @@ -2187,7 +2187,7 @@ namespace TrilinosWrappers /** * Destructor */ - virtual ~TrilinosPayload(); + virtual ~TrilinosPayload() = default; /** * Returns a payload configured for identity operations diff --git a/include/deal.II/lac/trilinos_sparsity_pattern.h b/include/deal.II/lac/trilinos_sparsity_pattern.h index f3a26c9800..9604c53229 100644 --- a/include/deal.II/lac/trilinos_sparsity_pattern.h +++ b/include/deal.II/lac/trilinos_sparsity_pattern.h @@ -325,7 +325,7 @@ namespace TrilinosWrappers /** * Destructor. Made virtual so that one can use pointers to this class. */ - virtual ~SparsityPattern (); + virtual ~SparsityPattern () = default; /** * Initialize a sparsity pattern that is completely stored locally, having diff --git a/include/deal.II/lac/trilinos_vector.h b/include/deal.II/lac/trilinos_vector.h index 718a8e0a16..521b2a469b 100644 --- a/include/deal.II/lac/trilinos_vector.h +++ b/include/deal.II/lac/trilinos_vector.h @@ -507,7 +507,7 @@ namespace TrilinosWrappers /** * Destructor. */ - ~Vector (); + ~Vector () = default; /** * Release all memory and return to a state just like after having called diff --git a/include/deal.II/matrix_free/dof_info.h b/include/deal.II/matrix_free/dof_info.h index 4ab9b378a0..98ad91d413 100644 --- a/include/deal.II/matrix_free/dof_info.h +++ b/include/deal.II/matrix_free/dof_info.h @@ -66,7 +66,7 @@ namespace internal /** * Copy constructor. */ - DoFInfo (const DoFInfo &dof_info); + DoFInfo (const DoFInfo &dof_info) = default; /** * Clear all data fields in this class. diff --git a/include/deal.II/matrix_free/dof_info.templates.h b/include/deal.II/matrix_free/dof_info.templates.h index 06ebdc5431..f51570268f 100644 --- a/include/deal.II/matrix_free/dof_info.templates.h +++ b/include/deal.II/matrix_free/dof_info.templates.h @@ -131,10 +131,6 @@ namespace internal - DoFInfo::DoFInfo (const DoFInfo &dof_info_in) = default; - - - void DoFInfo::clear () { diff --git a/include/deal.II/matrix_free/matrix_free.h b/include/deal.II/matrix_free/matrix_free.h index 96771c554a..84e28635f8 100644 --- a/include/deal.II/matrix_free/matrix_free.h +++ b/include/deal.II/matrix_free/matrix_free.h @@ -295,7 +295,7 @@ public: /** * Destructor. */ - ~MatrixFree(); + ~MatrixFree() = default; /** * Extracts the information needed to perform loops over cells. The diff --git a/include/deal.II/matrix_free/matrix_free.templates.h b/include/deal.II/matrix_free/matrix_free.templates.h index 5e3c94b560..22b8eade93 100644 --- a/include/deal.II/matrix_free/matrix_free.templates.h +++ b/include/deal.II/matrix_free/matrix_free.templates.h @@ -58,11 +58,6 @@ MatrixFree::MatrixFree(const MatrixFree &other) -template -MatrixFree::~MatrixFree() = default; - - - template void MatrixFree:: copy_from (const MatrixFree &v) diff --git a/include/deal.II/meshworker/local_integrator.h b/include/deal.II/meshworker/local_integrator.h index 78e87dc49c..4d7dbabefa 100644 --- a/include/deal.II/meshworker/local_integrator.h +++ b/include/deal.II/meshworker/local_integrator.h @@ -66,7 +66,7 @@ namespace MeshWorker /** * The empty virtual destructor. */ - ~LocalIntegrator(); + virtual ~LocalIntegrator() = default; /** * Virtual function for integrating on cells. Throws exception diff --git a/include/deal.II/meshworker/vector_selector.h b/include/deal.II/meshworker/vector_selector.h index 0724e3c06d..14078ad2e2 100644 --- a/include/deal.II/meshworker/vector_selector.h +++ b/include/deal.II/meshworker/vector_selector.h @@ -180,7 +180,7 @@ namespace MeshWorker /** * Constructor */ - VectorDataBase(); + VectorDataBase() = default; /** * Constructor from a base class object @@ -199,7 +199,7 @@ namespace MeshWorker /** * Virtual, but empty destructor. */ - virtual ~VectorDataBase(); + virtual ~VectorDataBase() = default; /** * The only function added to VectorSelector is an abstract virtual diff --git a/include/deal.II/meshworker/vector_selector.templates.h b/include/deal.II/meshworker/vector_selector.templates.h index 4e90925b7b..bc4cf4cfe3 100644 --- a/include/deal.II/meshworker/vector_selector.templates.h +++ b/include/deal.II/meshworker/vector_selector.templates.h @@ -25,11 +25,6 @@ DEAL_II_NAMESPACE_OPEN namespace MeshWorker { - template - VectorDataBase::~VectorDataBase() = default; - - - template VectorDataBase::VectorDataBase(const VectorSelector &v) : @@ -38,11 +33,6 @@ namespace MeshWorker - template - VectorDataBase::VectorDataBase() = default; - - - template void VectorDataBase::initialize(const AnyData &d) diff --git a/include/deal.II/multigrid/mg_base.h b/include/deal.II/multigrid/mg_base.h index 6e8dc57f61..6cee199ace 100644 --- a/include/deal.II/multigrid/mg_base.h +++ b/include/deal.II/multigrid/mg_base.h @@ -50,7 +50,7 @@ public: /* * Virtual destructor. */ - virtual ~MGMatrixBase(); + virtual ~MGMatrixBase() = default; /** * Matrix-vector-multiplication on a certain level. @@ -106,7 +106,7 @@ public: /** * Virtual destructor. */ - virtual ~MGCoarseGridBase (); + virtual ~MGCoarseGridBase () = default; /** * Solution operator. @@ -171,7 +171,7 @@ public: /** * Destructor. Does nothing here, but needs to be declared virtual anyway. */ - virtual ~MGTransferBase(); + virtual ~MGTransferBase() = default; /** * Prolongate a vector from level to_level-1 to level @@ -237,7 +237,7 @@ public: /** * Virtual destructor. */ - virtual ~MGSmootherBase(); + virtual ~MGSmootherBase() = default; /** * Release matrices. diff --git a/include/deal.II/multigrid/mg_transfer.h b/include/deal.II/multigrid/mg_transfer.h index ba8828c9dc..075c86c47d 100644 --- a/include/deal.II/multigrid/mg_transfer.h +++ b/include/deal.II/multigrid/mg_transfer.h @@ -461,7 +461,7 @@ public: * Constructor without constraint matrices. Use this constructor only with * discontinuous finite elements or with no local refinement. */ - MGTransferPrebuilt (); + MGTransferPrebuilt () = default; /** * Constructor with constraints. Equivalent to the default constructor @@ -481,7 +481,7 @@ public: /** * Destructor. */ - virtual ~MGTransferPrebuilt (); + virtual ~MGTransferPrebuilt () = default; /** * Initialize the constraints to be used in build_matrices(). diff --git a/include/deal.II/multigrid/mg_transfer_block.h b/include/deal.II/multigrid/mg_transfer_block.h index d66a8c98d9..2fc420bf34 100644 --- a/include/deal.II/multigrid/mg_transfer_block.h +++ b/include/deal.II/multigrid/mg_transfer_block.h @@ -322,7 +322,7 @@ public: /** * Destructor. */ - virtual ~MGTransferBlockSelect (); + virtual ~MGTransferBlockSelect () = default; /** * Actually build the prolongation matrices for grouped blocks. diff --git a/include/deal.II/multigrid/mg_transfer_component.h b/include/deal.II/multigrid/mg_transfer_component.h index 9694cd112f..16506f7cca 100644 --- a/include/deal.II/multigrid/mg_transfer_component.h +++ b/include/deal.II/multigrid/mg_transfer_component.h @@ -186,7 +186,7 @@ public: /** * Destructor. */ - virtual ~MGTransferSelect (); + virtual ~MGTransferSelect () = default; //TODO: rewrite docs; make sure defaulted args are actually allowed /** diff --git a/include/deal.II/multigrid/mg_transfer_matrix_free.h b/include/deal.II/multigrid/mg_transfer_matrix_free.h index 8af396967d..4cf4345b80 100644 --- a/include/deal.II/multigrid/mg_transfer_matrix_free.h +++ b/include/deal.II/multigrid/mg_transfer_matrix_free.h @@ -68,7 +68,7 @@ public: /** * Destructor. */ - virtual ~MGTransferMatrixFree (); + virtual ~MGTransferMatrixFree () = default; /** * Initialize the constraints to be used in build(). @@ -258,7 +258,7 @@ public: * Constructor without constraint matrices. Use this constructor only with * discontinuous finite elements or with no local refinement. */ - MGTransferBlockMatrixFree (); + MGTransferBlockMatrixFree () = default; /** * Constructor with constraints. Equivalent to the default constructor @@ -269,7 +269,7 @@ public: /** * Destructor. */ - virtual ~MGTransferBlockMatrixFree (); + virtual ~MGTransferBlockMatrixFree () = default; /** * Initialize the constraints to be used in build(). diff --git a/include/deal.II/numerics/data_out_dof_data.h b/include/deal.II/numerics/data_out_dof_data.h index f4c92e326a..646293443c 100644 --- a/include/deal.II/numerics/data_out_dof_data.h +++ b/include/deal.II/numerics/data_out_dof_data.h @@ -182,7 +182,7 @@ namespace internal /** * Destructor made virtual. */ - virtual ~DataEntryBase (); + virtual ~DataEntryBase () = default; /** * Assuming that the stored vector is a cell vector, extract the given diff --git a/include/deal.II/numerics/data_out_dof_data.templates.h b/include/deal.II/numerics/data_out_dof_data.templates.h index 33c36c616e..83d0c7f391 100644 --- a/include/deal.II/numerics/data_out_dof_data.templates.h +++ b/include/deal.II/numerics/data_out_dof_data.templates.h @@ -370,11 +370,6 @@ namespace internal - template - DataEntryBase::~DataEntryBase () = default; - - - /** * Class that stores a pointer to a vector of type equal to the template * argument, and provides the functions to extract data from it. diff --git a/include/deal.II/numerics/data_out_stack.h b/include/deal.II/numerics/data_out_stack.h index a76596dbfb..5563f3d4f9 100644 --- a/include/deal.II/numerics/data_out_stack.h +++ b/include/deal.II/numerics/data_out_stack.h @@ -128,7 +128,7 @@ public: /** * Destructor. Only declared to make it @p virtual. */ - virtual ~DataOutStack (); + virtual ~DataOutStack () = default; /** * Start the next set of data for a specific parameter value. The argument diff --git a/include/deal.II/numerics/data_postprocessor.h b/include/deal.II/numerics/data_postprocessor.h index 9a3745ff8f..6b22a7683a 100644 --- a/include/deal.II/numerics/data_postprocessor.h +++ b/include/deal.II/numerics/data_postprocessor.h @@ -430,7 +430,7 @@ public: * virtual to ensure that data postprocessors can be destroyed through * pointers to the base class. */ - virtual ~DataPostprocessor (); + virtual ~DataPostprocessor () = default; /** * This is the main function which actually performs the postprocessing. The diff --git a/include/deal.II/numerics/time_dependent.h b/include/deal.II/numerics/time_dependent.h index 99d6b928ae..a5ceb689fa 100644 --- a/include/deal.II/numerics/time_dependent.h +++ b/include/deal.II/numerics/time_dependent.h @@ -672,7 +672,7 @@ public: /** * Destructor. At present, this does nothing. */ - virtual ~TimeStepBase (); + virtual ~TimeStepBase () = default; /** * Reconstruct all the data that is needed for this time level to work. This diff --git a/source/algorithms/operator.cc b/source/algorithms/operator.cc index 67d159441e..c3b058b20a 100644 --- a/source/algorithms/operator.cc +++ b/source/algorithms/operator.cc @@ -37,10 +37,6 @@ DEAL_II_NAMESPACE_OPEN namespace Algorithms { - OperatorBase::~OperatorBase() = default; - - - void OperatorBase::notify(const Event &e) { notifications += e; diff --git a/source/base/auto_derivative_function.cc b/source/base/auto_derivative_function.cc index 579bf18a1d..ef7f6a0e2a 100644 --- a/source/base/auto_derivative_function.cc +++ b/source/base/auto_derivative_function.cc @@ -38,11 +38,6 @@ AutoDerivativeFunction (const double hh, -template -AutoDerivativeFunction::~AutoDerivativeFunction () = default; - - - template void AutoDerivativeFunction::set_formula (const DifferenceFormula form) diff --git a/source/base/convergence_table.cc b/source/base/convergence_table.cc index 2aa193206c..e705dbfb8d 100644 --- a/source/base/convergence_table.cc +++ b/source/base/convergence_table.cc @@ -18,10 +18,6 @@ DEAL_II_NAMESPACE_OPEN -ConvergenceTable::ConvergenceTable() = default; - - - void ConvergenceTable::evaluate_convergence_rates(const std::string &data_column_key, const std::string &reference_column_key, const RateMode rate_mode, diff --git a/source/base/data_out_base.cc b/source/base/data_out_base.cc index 26326ceca9..5e808e2171 100644 --- a/source/base/data_out_base.cc +++ b/source/base/data_out_base.cc @@ -6383,11 +6383,6 @@ DataOutInterface::DataOutInterface () -template -DataOutInterface::~DataOutInterface () = default; - - - template void DataOutInterface::write_dx (std::ostream &out) const { diff --git a/source/base/flow_function.cc b/source/base/flow_function.cc index 893a79bfb8..2d5e211892 100644 --- a/source/base/flow_function.cc +++ b/source/base/flow_function.cc @@ -37,9 +37,6 @@ namespace Functions {} - template - FlowFunction::~FlowFunction() = default; - template void @@ -192,11 +189,6 @@ namespace Functions - template - PoisseuilleFlow::~PoisseuilleFlow() = default; - - - template void PoisseuilleFlow::vector_values ( const std::vector > &points, @@ -289,11 +281,6 @@ namespace Functions - template - StokesCosine::~StokesCosine() = default; - - - template void StokesCosine::set_parameters(const double nu, const double r) @@ -661,10 +648,6 @@ namespace Functions - Kovasznay::~Kovasznay() = default; - - - void Kovasznay::vector_values ( const std::vector > &points, std::vector > &values) const diff --git a/source/base/function_parser.cc b/source/base/function_parser.cc index 05cd0b9658..6345390c34 100644 --- a/source/base/function_parser.cc +++ b/source/base/function_parser.cc @@ -57,6 +57,9 @@ FunctionParser::FunctionParser(const unsigned int n_components, +// We deliberately delay the definition of the default constructor +// so that we don't need to include the definition of mu::Parser +// in the header file. template FunctionParser::~FunctionParser() = default; diff --git a/source/base/parameter_handler.cc b/source/base/parameter_handler.cc index e2a2f2a7b0..f4949a0f68 100644 --- a/source/base/parameter_handler.cc +++ b/source/base/parameter_handler.cc @@ -49,10 +49,6 @@ ParameterHandler::ParameterHandler () -ParameterHandler::~ParameterHandler () = default; - - - std::string ParameterHandler::mangle (const std::string &s) { @@ -2110,10 +2106,6 @@ ParameterHandler::operator == (const ParameterHandler &prm2) const -MultipleParameterLoop::UserClass::~UserClass () = default; - - - MultipleParameterLoop::MultipleParameterLoop() : n_branches(0) @@ -2121,10 +2113,6 @@ MultipleParameterLoop::MultipleParameterLoop() -MultipleParameterLoop::~MultipleParameterLoop () = default; - - - void MultipleParameterLoop::parse_input (std::istream &input, const std::string &filename, diff --git a/source/base/patterns.cc b/source/base/patterns.cc index 3d927962b4..7e297d74dd 100644 --- a/source/base/patterns.cc +++ b/source/base/patterns.cc @@ -127,10 +127,6 @@ namespace Patterns - PatternBase::~PatternBase () = default; - - - std::size_t PatternBase::memory_consumption () const { @@ -1156,10 +1152,6 @@ namespace Patterns - Anything::Anything () = default; - - - bool Anything::match (const std::string &) const { return true; @@ -1299,10 +1291,6 @@ namespace Patterns - DirectoryName::DirectoryName () = default; - - - bool DirectoryName::match (const std::string &) const { return true; diff --git a/source/base/table_handler.cc b/source/base/table_handler.cc index 486d30a4c0..a9391015a7 100644 --- a/source/base/table_handler.cc +++ b/source/base/table_handler.cc @@ -31,9 +31,6 @@ DEAL_II_NAMESPACE_OPEN // inline and template functions namespace internal { - TableEntry::TableEntry () = default; - - double TableEntry::get_numeric_value () const { // we don't quite know the data type in 'value', but diff --git a/source/distributed/shared_tria.cc b/source/distributed/shared_tria.cc index 01e85ddc9b..91f77b48d4 100644 --- a/source/distributed/shared_tria.cc +++ b/source/distributed/shared_tria.cc @@ -227,11 +227,6 @@ namespace parallel - template - Triangulation::~Triangulation () = default; - - - template void Triangulation::execute_coarsening_and_refinement () diff --git a/source/distributed/solution_transfer.cc b/source/distributed/solution_transfer.cc index 4cf08c0b16..5e7c3ddeab 100644 --- a/source/distributed/solution_transfer.cc +++ b/source/distributed/solution_transfer.cc @@ -56,11 +56,6 @@ namespace parallel - template - SolutionTransfer::~SolutionTransfer () = default; - - - template void SolutionTransfer:: diff --git a/source/fe/fe.cc b/source/fe/fe.cc index ea80d956eb..0d66d767db 100644 --- a/source/fe/fe.cc +++ b/source/fe/fe.cc @@ -41,11 +41,6 @@ FiniteElement::InternalDataBase::InternalDataBase (): -template -FiniteElement::InternalDataBase::~InternalDataBase () = default; - - - template std::size_t FiniteElement::InternalDataBase::memory_consumption () const @@ -160,10 +155,6 @@ FiniteElement::operator^ (unsigned int multiplicity) const -FiniteElement::~FiniteElement () = default; - - - template double FiniteElement::shape_value (const unsigned int, diff --git a/source/fe/fe_p1nc.cc b/source/fe/fe_p1nc.cc index 102ede8580..5dafb591d0 100644 --- a/source/fe/fe_p1nc.cc +++ b/source/fe/fe_p1nc.cc @@ -73,10 +73,6 @@ std::unique_ptr> -FE_P1NC::~FE_P1NC () = default; - - - std::vector FE_P1NC::get_dpo_vector () { diff --git a/source/fe/fe_values.cc b/source/fe/fe_values.cc index 7d3abc04af..e85fe0adc0 100644 --- a/source/fe/fe_values.cc +++ b/source/fe/fe_values.cc @@ -2130,7 +2130,7 @@ public: * pointers to the base * class. */ - virtual ~CellIteratorBase (); + virtual ~CellIteratorBase () = default; /** * Conversion operator to an @@ -2171,10 +2171,6 @@ public: Vector &out) const = 0; }; - -template -FEValuesBase::CellIteratorBase::~CellIteratorBase () = default; - /* ---------------- classes derived from FEValuesBase::CellIteratorBase --------- */ diff --git a/source/fe/mapping.cc b/source/fe/mapping.cc index e429951747..ced1102701 100644 --- a/source/fe/mapping.cc +++ b/source/fe/mapping.cc @@ -20,10 +20,6 @@ DEAL_II_NAMESPACE_OPEN -template -Mapping::~Mapping () = default; - - template std::array, GeometryInfo::vertices_per_cell> Mapping::get_vertices ( @@ -85,11 +81,6 @@ Mapping::InternalDataBase::InternalDataBase (): -template -Mapping::InternalDataBase::~InternalDataBase () = default; - - - template std::size_t Mapping::InternalDataBase::memory_consumption () const diff --git a/source/fe/mapping_manifold.cc b/source/fe/mapping_manifold.cc index 4a67770d78..c0af351c5d 100644 --- a/source/fe/mapping_manifold.cc +++ b/source/fe/mapping_manifold.cc @@ -42,10 +42,6 @@ DEAL_II_NAMESPACE_OPEN -template -MappingManifold::InternalData::InternalData () = default; - - template std::size_t MappingManifold::InternalData::memory_consumption () const @@ -173,11 +169,6 @@ initialize_face (const UpdateFlags update_flags, -template -MappingManifold::MappingManifold () = default; - - - template MappingManifold::MappingManifold (const MappingManifold &) {} diff --git a/source/grid/manifold.cc b/source/grid/manifold.cc index 6a23eea84a..5b9c0abe33 100644 --- a/source/grid/manifold.cc +++ b/source/grid/manifold.cc @@ -30,11 +30,6 @@ DEAL_II_NAMESPACE_OPEN using namespace Manifolds; /* -------------------------- Manifold --------------------- */ -template -Manifold::~Manifold () = default; - - - template Point Manifold:: @@ -690,12 +685,6 @@ FlatManifold::get_tangent_vector (const Point &x1, /* -------------------------- ChartManifold --------------------- */ - -template -ChartManifold::~ChartManifold () = default; - - - template ChartManifold::ChartManifold (const Tensor<1,chartdim> &periodicity) : diff --git a/source/grid/persistent_tria.cc b/source/grid/persistent_tria.cc index 0980347645..69364fdd6d 100644 --- a/source/grid/persistent_tria.cc +++ b/source/grid/persistent_tria.cc @@ -56,11 +56,6 @@ PersistentTriangulation (const PersistentTriangulation &old_tria) -template -PersistentTriangulation::~PersistentTriangulation () = default; - - - template void PersistentTriangulation::execute_coarsening_and_refinement () diff --git a/source/grid/tria_boundary.cc b/source/grid/tria_boundary.cc index ead4d83681..aa13cfb072 100644 --- a/source/grid/tria_boundary.cc +++ b/source/grid/tria_boundary.cc @@ -28,10 +28,6 @@ DEAL_II_NAMESPACE_OPEN /* -------------------------- Boundary --------------------- */ -template -Boundary::~Boundary () = default; - - template void Boundary:: @@ -185,10 +181,6 @@ get_line_support_points (const unsigned int n_intermediate_points) const /* -------------------------- StraightBoundary --------------------- */ -template -StraightBoundary::StraightBoundary () = default; - - template Point StraightBoundary:: diff --git a/source/hp/fe_collection.cc b/source/hp/fe_collection.cc index 0892432c83..2dbf17f50c 100644 --- a/source/hp/fe_collection.cc +++ b/source/hp/fe_collection.cc @@ -86,9 +86,6 @@ namespace hp return numbers::invalid_unsigned_int; } - template - FECollection::FECollection () = default; - template diff --git a/source/hp/mapping_collection.cc b/source/hp/mapping_collection.cc index 3b3e1705eb..16bc81ec3d 100644 --- a/source/hp/mapping_collection.cc +++ b/source/hp/mapping_collection.cc @@ -22,12 +22,6 @@ DEAL_II_NAMESPACE_OPEN namespace hp { - - template - MappingCollection::MappingCollection () = default; - - - template MappingCollection:: MappingCollection (const Mapping &mapping) diff --git a/source/lac/block_sparsity_pattern.cc b/source/lac/block_sparsity_pattern.cc index 248e578261..d90f2fadc6 100644 --- a/source/lac/block_sparsity_pattern.cc +++ b/source/lac/block_sparsity_pattern.cc @@ -327,10 +327,6 @@ BlockSparsityPatternBase::print_gnuplot(std::ostream &out) -BlockSparsityPattern::BlockSparsityPattern () = default; - - - BlockSparsityPattern::BlockSparsityPattern (const size_type n_rows, const size_type n_columns) : @@ -420,11 +416,6 @@ BlockSparsityPattern::copy_from (const BlockDynamicSparsityPattern &dsp) - -BlockDynamicSparsityPattern::BlockDynamicSparsityPattern () = default; - - - BlockDynamicSparsityPattern:: BlockDynamicSparsityPattern (const size_type n_rows, const size_type n_columns) @@ -518,10 +509,6 @@ BlockDynamicSparsityPattern::reinit ( namespace TrilinosWrappers { - BlockSparsityPattern::BlockSparsityPattern () = default; - - - BlockSparsityPattern:: BlockSparsityPattern (const size_type n_rows, const size_type n_columns) diff --git a/source/lac/chunk_sparsity_pattern.cc b/source/lac/chunk_sparsity_pattern.cc index 1b77f41b34..4efe4b6e05 100644 --- a/source/lac/chunk_sparsity_pattern.cc +++ b/source/lac/chunk_sparsity_pattern.cc @@ -91,10 +91,6 @@ ChunkSparsityPattern::ChunkSparsityPattern ( -ChunkSparsityPattern::~ChunkSparsityPattern () = default; - - - ChunkSparsityPattern & ChunkSparsityPattern::operator = (const ChunkSparsityPattern &s) { diff --git a/source/lac/matrix_out.cc b/source/lac/matrix_out.cc index 12d39c1b87..6a06a82a5d 100644 --- a/source/lac/matrix_out.cc +++ b/source/lac/matrix_out.cc @@ -29,10 +29,6 @@ MatrixOut::Options::Options (const bool show_absolute_values, -MatrixOut::~MatrixOut () = default; - - - const std::vector & MatrixOut::get_patches () const { diff --git a/source/lac/petsc_parallel_block_sparse_matrix.cc b/source/lac/petsc_parallel_block_sparse_matrix.cc index b07a42d4a4..b957ee6d55 100644 --- a/source/lac/petsc_parallel_block_sparse_matrix.cc +++ b/source/lac/petsc_parallel_block_sparse_matrix.cc @@ -24,12 +24,6 @@ namespace PETScWrappers namespace MPI { - BlockSparseMatrix::BlockSparseMatrix () = default; - - - BlockSparseMatrix::~BlockSparseMatrix () = default; - - BlockSparseMatrix & BlockSparseMatrix::operator = (const BlockSparseMatrix &m) { diff --git a/source/lac/petsc_precondition.cc b/source/lac/petsc_precondition.cc index 93e72acc42..e14cc07c0f 100644 --- a/source/lac/petsc_precondition.cc +++ b/source/lac/petsc_precondition.cc @@ -123,8 +123,6 @@ namespace PETScWrappers } - PreconditionJacobi::PreconditionJacobi () = default; - PreconditionJacobi::PreconditionJacobi (const MatrixBase &matrix, const AdditionalData &additional_data) @@ -174,8 +172,6 @@ namespace PETScWrappers } - PreconditionBlockJacobi::PreconditionBlockJacobi () = default; - PreconditionBlockJacobi:: PreconditionBlockJacobi (const MatrixBase &matrix, @@ -221,8 +217,6 @@ namespace PETScWrappers {} - PreconditionSOR::PreconditionSOR () = default; - PreconditionSOR::PreconditionSOR (const MatrixBase &matrix, const AdditionalData &additional_data) @@ -266,8 +260,6 @@ namespace PETScWrappers {} - PreconditionSSOR::PreconditionSSOR () = default; - PreconditionSSOR::PreconditionSSOR (const MatrixBase &matrix, const AdditionalData &additional_data) @@ -315,8 +307,6 @@ namespace PETScWrappers {} - PreconditionEisenstat::PreconditionEisenstat () = default; - PreconditionEisenstat::PreconditionEisenstat (const MatrixBase &matrix, const AdditionalData &additional_data) @@ -361,8 +351,6 @@ namespace PETScWrappers {} - PreconditionICC::PreconditionICC () = default; - PreconditionICC::PreconditionICC (const MatrixBase &matrix, const AdditionalData &additional_data) @@ -406,8 +394,6 @@ namespace PETScWrappers {} - PreconditionILU::PreconditionILU () = default; - PreconditionILU::PreconditionILU (const MatrixBase &matrix, const AdditionalData &additional_data) @@ -460,7 +446,6 @@ namespace PETScWrappers {} - PreconditionBoomerAMG::PreconditionBoomerAMG () = default; PreconditionBoomerAMG::PreconditionBoomerAMG (const MPI_Comm comm, const AdditionalData &additional_data_) @@ -578,8 +563,6 @@ namespace PETScWrappers {} - PreconditionParaSails::PreconditionParaSails () = default; - PreconditionParaSails::PreconditionParaSails (const MatrixBase &matrix, const AdditionalData &additional_data) @@ -673,9 +656,6 @@ namespace PETScWrappers /* ----------------- PreconditionNone ------------------------- */ - PreconditionNone::PreconditionNone () = default; - - PreconditionNone::PreconditionNone (const MatrixBase &matrix, const AdditionalData &additional_data) { @@ -718,8 +698,6 @@ namespace PETScWrappers {} - PreconditionLU::PreconditionLU () = default; - PreconditionLU::PreconditionLU (const MatrixBase &matrix, const AdditionalData &additional_data) diff --git a/source/lac/petsc_solver.cc b/source/lac/petsc_solver.cc index 15f0d87523..a29052b6e0 100644 --- a/source/lac/petsc_solver.cc +++ b/source/lac/petsc_solver.cc @@ -49,10 +49,6 @@ namespace PETScWrappers - SolverBase::~SolverBase () = default; - - - void SolverBase::solve (const MatrixBase &A, VectorBase &x, diff --git a/source/lac/solver_control.cc b/source/lac/solver_control.cc index 4533df2a72..7ced6c6bdf 100644 --- a/source/lac/solver_control.cc +++ b/source/lac/solver_control.cc @@ -48,10 +48,6 @@ SolverControl::SolverControl (const unsigned int maxiter, -SolverControl::~SolverControl() = default; - - - SolverControl::State SolverControl::check (const unsigned int step, const double check_value) @@ -258,8 +254,6 @@ ReductionControl::operator= (const SolverControl &c) } -ReductionControl::~ReductionControl() = default; - SolverControl::State ReductionControl::check (const unsigned int step, @@ -322,7 +316,6 @@ IterationNumberControl::IterationNumberControl(const unsigned int n, SolverControl (n, tolerance, m_log_history, m_log_result) {} -IterationNumberControl::~IterationNumberControl() = default; SolverControl::State @@ -385,9 +378,6 @@ ConsecutiveControl::operator= (const SolverControl &c) -ConsecutiveControl::~ConsecutiveControl() = default; - - SolverControl::State ConsecutiveControl::check (const unsigned int step, const double check_value) diff --git a/source/lac/trilinos_block_sparse_matrix.cc b/source/lac/trilinos_block_sparse_matrix.cc index 26ba1d38ba..e552f927de 100644 --- a/source/lac/trilinos_block_sparse_matrix.cc +++ b/source/lac/trilinos_block_sparse_matrix.cc @@ -24,10 +24,6 @@ DEAL_II_NAMESPACE_OPEN namespace TrilinosWrappers { - BlockSparseMatrix::BlockSparseMatrix () = default; - - - BlockSparseMatrix::~BlockSparseMatrix () { // delete previous content of @@ -42,11 +38,6 @@ namespace TrilinosWrappers - BlockSparseMatrix & - BlockSparseMatrix::operator = (const BlockSparseMatrix &m) = default; - - - void BlockSparseMatrix:: reinit (const size_type n_block_rows, diff --git a/source/lac/trilinos_block_vector.cc b/source/lac/trilinos_block_vector.cc index 5d6f636c7e..7bbec17d3e 100644 --- a/source/lac/trilinos_block_vector.cc +++ b/source/lac/trilinos_block_vector.cc @@ -67,11 +67,6 @@ namespace TrilinosWrappers - - BlockVector::~BlockVector () = default; - - - void BlockVector::reinit (const std::vector ¶llel_partitioning, const MPI_Comm &communicator, diff --git a/source/lac/trilinos_precondition.cc b/source/lac/trilinos_precondition.cc index 7756993065..d8cc956f8d 100644 --- a/source/lac/trilinos_precondition.cc +++ b/source/lac/trilinos_precondition.cc @@ -55,10 +55,6 @@ namespace TrilinosWrappers - PreconditionBase::~PreconditionBase() = default; - - - void PreconditionBase::clear () { preconditioner.reset(); diff --git a/source/lac/trilinos_solver.cc b/source/lac/trilinos_solver.cc index 7cd95fca82..2839e10dc2 100644 --- a/source/lac/trilinos_solver.cc +++ b/source/lac/trilinos_solver.cc @@ -68,10 +68,6 @@ namespace TrilinosWrappers - SolverBase::~SolverBase () = default; - - - SolverControl & SolverBase::control() const { @@ -721,10 +717,6 @@ namespace TrilinosWrappers - SolverDirect::~SolverDirect () = default; - - - SolverControl & SolverDirect::control() const { diff --git a/source/lac/trilinos_sparse_matrix.cc b/source/lac/trilinos_sparse_matrix.cc index 2aa484d076..af8c0d3aae 100644 --- a/source/lac/trilinos_sparse_matrix.cc +++ b/source/lac/trilinos_sparse_matrix.cc @@ -356,10 +356,6 @@ namespace TrilinosWrappers - SparseMatrix::~SparseMatrix () = default; - - - void SparseMatrix::copy_from (const SparseMatrix &rhs) { @@ -2699,11 +2695,6 @@ namespace TrilinosWrappers - // Destructor - TrilinosPayload::~TrilinosPayload () = default; - - - TrilinosPayload TrilinosPayload::identity_payload () const { diff --git a/source/lac/trilinos_sparsity_pattern.cc b/source/lac/trilinos_sparsity_pattern.cc index 5e09df631a..75284615bb 100644 --- a/source/lac/trilinos_sparsity_pattern.cc +++ b/source/lac/trilinos_sparsity_pattern.cc @@ -221,10 +221,6 @@ namespace TrilinosWrappers - SparsityPattern::~SparsityPattern () = default; - - - void SparsityPattern::reinit (const size_type m, const size_type n, diff --git a/source/lac/trilinos_vector.cc b/source/lac/trilinos_vector.cc index bcdcbbf52c..5e1d7041fb 100644 --- a/source/lac/trilinos_vector.cc +++ b/source/lac/trilinos_vector.cc @@ -130,10 +130,6 @@ namespace TrilinosWrappers - Vector::~Vector () = default; - - - void Vector::clear () { diff --git a/source/meshworker/mesh_worker.cc b/source/meshworker/mesh_worker.cc index 46251ade07..bdf6da9180 100644 --- a/source/meshworker/mesh_worker.cc +++ b/source/meshworker/mesh_worker.cc @@ -71,8 +71,6 @@ namespace MeshWorker {} - template - LocalIntegrator::~LocalIntegrator () = default; template void diff --git a/source/multigrid/mg_base.cc b/source/multigrid/mg_base.cc index b4e6bab9d4..9ee558cb82 100644 --- a/source/multigrid/mg_base.cc +++ b/source/multigrid/mg_base.cc @@ -27,18 +27,6 @@ DEAL_II_NAMESPACE_OPEN -template -MGTransferBase::~MGTransferBase() = default; - - -template -MGMatrixBase::~MGMatrixBase() = default; - - -template -MGSmootherBase::~MGSmootherBase() = default; - - template void MGSmootherBase::apply (const unsigned int level, @@ -50,10 +38,6 @@ MGSmootherBase::apply (const unsigned int level, } -template -MGCoarseGridBase::~MGCoarseGridBase() = default; - - // Explicit instantiations #include "mg_base.inst" diff --git a/source/multigrid/mg_transfer_matrix_free.cc b/source/multigrid/mg_transfer_matrix_free.cc index 0e9c7583fc..6ec3952ea5 100644 --- a/source/multigrid/mg_transfer_matrix_free.cc +++ b/source/multigrid/mg_transfer_matrix_free.cc @@ -58,11 +58,6 @@ MGTransferMatrixFree::MGTransferMatrixFree (const MGConstrainedDoFs -template -MGTransferMatrixFree::~MGTransferMatrixFree () = default; - - - template void MGTransferMatrixFree::initialize_constraints (const MGConstrainedDoFs &mg_c) @@ -552,10 +547,6 @@ MGTransferMatrixFree::memory_consumption() const } -template -MGTransferBlockMatrixFree::MGTransferBlockMatrixFree () = default; - - template MGTransferBlockMatrixFree::MGTransferBlockMatrixFree (const MGConstrainedDoFs &mg_c) @@ -566,11 +557,6 @@ MGTransferBlockMatrixFree::MGTransferBlockMatrixFree (const MGConstr -template -MGTransferBlockMatrixFree::~MGTransferBlockMatrixFree () = default; - - - template void MGTransferBlockMatrixFree::initialize_constraints (const MGConstrainedDoFs &mg_c) diff --git a/source/multigrid/mg_transfer_prebuilt.cc b/source/multigrid/mg_transfer_prebuilt.cc index 1e2a68b185..e9b3e25b0a 100644 --- a/source/multigrid/mg_transfer_prebuilt.cc +++ b/source/multigrid/mg_transfer_prebuilt.cc @@ -40,11 +40,6 @@ DEAL_II_NAMESPACE_OPEN -template -MGTransferPrebuilt::MGTransferPrebuilt () = default; - - - template MGTransferPrebuilt::MGTransferPrebuilt (const MGConstrainedDoFs &mg_c) { @@ -61,11 +56,6 @@ MGTransferPrebuilt::MGTransferPrebuilt (const ConstraintMatrix &/*c* -template -MGTransferPrebuilt::~MGTransferPrebuilt () = default; - - - template void MGTransferPrebuilt::initialize_constraints (const MGConstrainedDoFs &mg_c) diff --git a/source/multigrid/multigrid.cc b/source/multigrid/multigrid.cc index 65c56843c0..86c8c5fd4a 100644 --- a/source/multigrid/multigrid.cc +++ b/source/multigrid/multigrid.cc @@ -214,8 +214,6 @@ MGTransferSelect::MGTransferSelect (const ConstraintMatrix &c) constraints(&c) {} -template -MGTransferSelect::~MGTransferSelect () = default; template @@ -278,11 +276,6 @@ MGTransferBlockSelect::MGTransferBlockSelect (const ConstraintMatrix &/* -template -MGTransferBlockSelect::~MGTransferBlockSelect () = default; - - - template void MGTransferBlockSelect::prolongate (const unsigned int to_level, diff --git a/source/numerics/data_out_stack.cc b/source/numerics/data_out_stack.cc index eab0961801..1e748e51d3 100644 --- a/source/numerics/data_out_stack.cc +++ b/source/numerics/data_out_stack.cc @@ -41,10 +41,6 @@ DataOutStack::DataVector::memory_consumption () con -template -DataOutStack::~DataOutStack () = default; - - template void DataOutStack::new_parameter_value (const double p, const double dp) diff --git a/source/numerics/data_postprocessor.cc b/source/numerics/data_postprocessor.cc index 1ded8ae434..1175bb5e12 100644 --- a/source/numerics/data_postprocessor.cc +++ b/source/numerics/data_postprocessor.cc @@ -21,11 +21,6 @@ DEAL_II_NAMESPACE_OPEN // -------------------------- DataPostprocessor --------------------------- -template -DataPostprocessor::~DataPostprocessor() = default; - - - template void DataPostprocessor:: diff --git a/source/numerics/time_dependent.cc b/source/numerics/time_dependent.cc index bb979f04c7..517c8b3059 100644 --- a/source/numerics/time_dependent.cc +++ b/source/numerics/time_dependent.cc @@ -264,10 +264,6 @@ TimeStepBase::TimeStepBase (const double time) : -TimeStepBase::~TimeStepBase () = default; - - - void TimeStepBase::wake_up (const unsigned int ) {}