lumiera_/doc/technical/code
Ichthyostega 1df77cc4ff Library: investigate and fix an insidious problem with move-forwarding (util::join / transformIter)
As it turned out, we had two bugs luring in the code base,
with the happy result of one cancelling out the adverse effects of the other

:-D

 - a mistake in the invocation of the Itertools (transform, filter,...)
   caused them to move and consume any input passed by forwarding, instead
   of consuming only the RValue references.
 - but util::join did an extraneous copy on its data source, meaning that
   in all relevant cases where a *copy* got passed into the Itertools,
   only that spurious temporary was consumed by Bug #1.

(Note that most usages of Itertools rely on RValues anyway, since the whole
point of Itertools is to write concise in-line transformation pipelines...)

*** Added additional testcode to prove util::stringify() behaves correct
    now in all cases.
2017-12-04 04:23:30 +01:00
..
c++11.txt Library: investigate and fix an insidious problem with move-forwarding (util::join / transformIter) 2017-12-04 04:23:30 +01:00
codingGuidelines.txt LANDING: transition to GTK-3 2015-05-30 17:11:41 +02:00
darkCorners.txt refactoring(#988): switch function-closure to std::tuple 2016-01-19 03:56:53 +01:00
index.txt New documentation section for code base layout and conventions 2011-10-14 03:35:39 +02:00
linkingStructure.txt DOC: summarise suitable mechanisms for dependency decoupling 2015-05-28 03:05:49 +02:00