If I've understood the discussion then:
auto const& acquired_buffer = buffer_for(current_compositor_buffer, buffers);
should be:
auto const acquired_buffer = buffer_for(current_compositor_buffer, buffers);
(And the RVO should elide any wasted copies.)
If I've understood the discussion then:
auto const& acquired_buffer = buffer_ for(current_ compositor_ buffer, buffers);
should be:
auto const acquired_buffer = buffer_ for(current_ compositor_ buffer, buffers);
(And the RVO should elide any wasted copies.)