------- Comment #8 from redi at gcc dot gnu dot org 2010-04-28 11:46 ------- (In reply to comment #6) > In this diagnostic: > > invalid initialization of reference of type 'boost::thread&&' from expression > of type 'boost::thread' > > it might be clearer if the latter type was given as 'boost::thread&' so that > it's clear it is an lvalue, otherwise it looks like it is failing to bind an > rvalue-reference to a temporary, which should work.
Even better, the diagnostic could say "... from lvalue expression of type ..." Any change should probably wait until the dust settles on the lvalue/xvalue/prvalue taxonomy -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43915