Skip to content

Wrap DistributedCommunication::RemoteIndices in unique_ptr to fix move issue in c++14

Müller, Felix requested to merge issue/petsc_comm_move into master

Due to missing copy elision in c++14 the PETSc Comm object DistributedCommunication is required to have a copy or move constructor in the statement (ParallelGlobalBasis.hpp:89)

    , comm_(CommunicationCreator<Comm>::create(static_cast<Super const&>(*this), name + "->solver"))

Since the member Dune::RemoteIndices declares a private copy and no move constructor we need to wrap it into a unique_ptr to provide move semantics.

Merge request reports