------- Comment #3 from paolo dot carlini at oracle dot com 2009-10-26 12:11 ------- (In reply to comment #2) > James Kanze (comp.lang.c++) pointed out that it's just a requirement for > CopyConstructible. It's in Table 30.
Thanks for the pointer, I discussed this issue a few times without actually ever reading those lines, I admit. > 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. Yes, C++0x is different, much better, with the new scoped allocator model, which is still slightly in flux. Just in case you didn't notice already, C++0x will also include answers to "580. unused allocator members", and "635. domain of allocator::address", which Howard filed at the same time of that change to our std::list. And also "431. Swapping containers with unequal allocators", by the way, which, if I'm not mistaken we already implement withing the "old" C++03 allocator model, per some other exchanges with Howard. -- paolo dot carlini at oracle dot com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2009-10-26 12:11:06 date| | Summary|overloading the address |[C++0x] overloading the |operator confuses the |address operator confuses |standard containers |the standard containers http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41792