From: Arnaud Giersch Date: Sat, 22 May 2021 11:33:17 +0000 (+0200) Subject: Prefer using emplace() to insert() for smpi keyvals/attributes. X-Git-Tag: v3.28~248 X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/7f671da878195261904d4bbc180a697902799dad Prefer using emplace() to insert() for smpi keyvals/attributes. --- diff --git a/src/smpi/include/smpi_keyvals.hpp b/src/smpi/include/smpi_keyvals.hpp index 6835f52ef2..d1c647d582 100644 --- a/src/smpi/include/smpi_keyvals.hpp +++ b/src/smpi/include/smpi_keyvals.hpp @@ -73,7 +73,7 @@ int Keyval::keyval_create(const smpi_copy_fn& copy_fn, const smpi_delete_fn& del value->refcount=1; *keyval = T::keyval_id_; - T::keyvals_.insert({*keyval, value}); + T::keyvals_.emplace(*keyval, value); T::keyval_id_++; return MPI_SUCCESS; } @@ -135,7 +135,7 @@ template int Keyval::attr_put(int keyval, void* attr_value){ return MPI_ERR_ARG; elem->refcount++; int flag=0; - auto p = attributes().insert({keyval, attr_value}); + auto p = attributes().emplace(keyval, attr_value); if (not p.second) { int ret = call_deleter((T*)this, elem, keyval,p.first->second,&flag); // overwrite previous value diff --git a/src/smpi/mpi/smpi_comm.cpp b/src/smpi/mpi/smpi_comm.cpp index db2fb04ece..829cf51b1f 100644 --- a/src/smpi/mpi/smpi_comm.cpp +++ b/src/smpi/mpi/smpi_comm.cpp @@ -98,10 +98,10 @@ int Comm::dup(MPI_Comm* newcomm){ if (elem->copy_fn.comm_copy_fn == MPI_COMM_DUP_FN || ((elem->copy_fn.comm_copy_fn_fort != MPI_NULL_COPY_FN) && *(int*)*elem->copy_fn.comm_copy_fn_fort == 1)) { elem->refcount++; - (*newcomm)->attributes().insert({it.first, it.second}); + (*newcomm)->attributes().emplace(it.first, it.second); } else if (flag) { elem->refcount++; - (*newcomm)->attributes().insert({it.first, value_out}); + (*newcomm)->attributes().emplace(it.first, value_out); } } } diff --git a/src/smpi/mpi/smpi_datatype.cpp b/src/smpi/mpi/smpi_datatype.cpp index 4d940c444f..21696e1fae 100644 --- a/src/smpi/mpi/smpi_datatype.cpp +++ b/src/smpi/mpi/smpi_datatype.cpp @@ -180,10 +180,10 @@ int Datatype::copy_attrs(Datatype* datatype){ if (elem->copy_fn.type_copy_fn == MPI_TYPE_DUP_FN || ((elem->copy_fn.type_copy_fn_fort != MPI_NULL_COPY_FN) && (*(int*)*elem->copy_fn.type_copy_fn_fort == 1))) { elem->refcount++; - attributes().insert({it.first, it.second}); + attributes().emplace(it.first, it.second); } else if (flag) { elem->refcount++; - attributes().insert({it.first, value_out}); + attributes().emplace(it.first, value_out); } } }