Hi Gert, thanks for your hint.
On Mon, Dec 04, 2017 at 07:32:42PM +0100, Gert Wollny wrote: > > make_pair doesn't require the explicite type specification, i.e. the > following should work: > > - return make_pair<DoubleVec1d, DoubleVec2d>(eigvals, eigvecs); > + return make_pair(eigvals, eigvecs); This worked at that very place, but later I get: src/tree/arrangervec.cpp: In member function ‘void ArrangerVec::CopyAllMembers(const ArrangerVec&)’: src/tree/arrangervec.cpp:125:83: error: no matching function for call to ‘make_pair<std::__cxx11::string, Arranger*>(std::__cxx11::string, Arranger*&)’ arrangers.insert(std::make_pair<string, Arranger*>(arr->GetName(), arr)); ^ In file included from /usr/include/c++/7/bits/stl_algobase.h:64:0, from /usr/include/c++/7/bits/char_traits.h:39, from /usr/include/c++/7/ios:40, from /usr/include/c++/7/ostream:38, from /usr/include/c++/7/iostream:39, from src/tree/arrangervec.cpp:12: /usr/include/c++/7/bits/stl_pair.h:519:5: note: candidate: template<class _T1, class _T2> constexpr std::pair<typename std::__decay_and_strip<_Tp>::__type, typename std::__decay_and_strip<_T2>::__type> std::make_pair(_T1&&, _T2&&) make_pair(_T1&& __x, _T2&& __y) ^~~~~~~~~ /usr/include/c++/7/bits/stl_pair.h:519:5: note: template argument deduction/substitution failed: src/tree/arrangervec.cpp:125:83: note: cannot convert ‘arr’ (type ‘Arranger*’) to type ‘Arranger*&&’ arrangers.insert(std::make_pair<string, Arranger*>(arr->GetName(), arr)); ^ Makefile:6859: recipe for target 'lamarc-arrangervec.o' failed Kind regards Andreas. -- http://fam-tille.de