http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44436
--- Comment #22 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-06-09 12:25:15 UTC --- (In reply to comment #21) > Now with a unique_ptr I'd like to do the same: > > > instancesByIds_[id] = user; > instancesByIds_[id] = std::move(user); > > Both doesnt work. Nonsense. The second one works fine. This works too: instancesByIds_.insert(make_pair(id, std::move(user)));