BCS wrote: > OK well maybe it should have been written as this: > > if(!ret.test) *this = err; > // ^- add this That's completely different <g>. > Either way, I think the original argument still holds. The constructor > form still looks more like what is acutely happening, and as a result > has less of a "phantom" cost.