------- Comment #2 from jkherciueh at gmx dot net 2009-10-26 09:44 ------- (In reply to comment #1) > Didn't I reply to this issue already on the mailing list, recently? Anyway, > within C++03 the & is supposed to not be overloaded, you can take it for > example from the lines in the standard about allocator::address.
James Kanze (comp.lang.c++) pointed out that it's just a requirement for CopyConstructible. It's in Table 30. > Also, about > list specifically, when we recently we did a change involving & in a member > function, provided by LWG chair Howard Hinnant, we carefully reconsidered this > issue, and verified that within of C++03 we are fine. As an extenssion, I > agree it would make sense to have something like boost::address_of in such > cases (whose implementation, as far I remember, it's just *ugly*) Yup, as an extension, it could make sense: The only reason to take the address is in iterator::operator*(), so the source would not be littered with address_of(). Also, in C++0X, one has to provide addressof() anyhow. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41792