Skip to content
Snippets Groups Projects
Commit feabc0f5 authored by Sam Yates's avatar Sam Yates Committed by GitHub
Browse files

Merge pull request #29 from vkarak/bugfix/clang-failure

Fixes Clang 3.7 failure to compile.
parents e27a06ba bc566ecb
No related branches found
No related tags found
No related merge requests found
......@@ -90,8 +90,11 @@ public:
spike_detectors_(other.spike_detectors_),
probes_(other.probes_)
{
util::assign_by(segments_, other.segments_,
[](const segment_ptr& p) { return p->clone(); });
// unique_ptr's cannot be copy constructed, do a manual assignment
auto siter = segments_.begin();
for (const auto& s : other.segments_) {
*siter = std::move(s->clone());
}
}
/// add a soma to the cell
......@@ -242,4 +245,3 @@ cable_segment* cell::add_cable(cell::index_type parent, Args ...args)
} // namespace mc
} // namespace nest
......@@ -12,6 +12,7 @@
#include <util/meta.hpp>
#include <util/range.hpp>
#include <util/transform.hpp>
#include <util/meta.hpp>
namespace nest {
namespace mc {
......@@ -67,12 +68,12 @@ AssignableContainer& assign(AssignableContainer& c, const Seq& seq) {
return c;
}
// Assign sequence to a container with transform `proj`
template <typename AssignableContainer, typename Seq, typename Proj>
AssignableContainer& assign_by(AssignableContainer& c, const Seq& seq, const Proj& proj) {
auto canon = canonical_view(transform_view(seq, proj));
c.assign(std::begin(canon), std::end(canon));
assign(c, transform_view(seq, proj));
return c;
}
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment