Quentin Deldycke <quentindeldycke at gmail.com> writes: > c.cache_query(pq, p); cache_query() assumes ownership of the second argument (parameters) and with unique_ptr you need an explicit move to signal that you are relinquishing ownership: c.cache_query(pq, std::move (p));