Gabriel Dos Reis wrote: >| Humpf! Can people please cite exact paragraphs of the relevant >| Standards? Otherwise, I think we are just adding to the confusion. For >| example, in my reading of C99 6.5.9 and C++03 5.10 pointers *can* be >| compared for equality and discussing separately and correctly relational >| operators and equality operators is not a language-lawyer-ism, is *very* >| important for its real world implications. But this is only an example... > >I don't understand your query. >I understood Chris' comment as having to do with the implementation of >std::less<T*> (and friends) as required by C++. Our implementation is just >a forwarding function to operator< (and friends) on the assumption >that the compiler uses the "obvious" model. > > Nobody disagree with that, of course (in fact, we discussed a bit that specific point with Chris time ago, when probably he wanted to avail himself of ordering to improve some bits of debug mode). Only, I become nervous when I read sentences like "pointers to different objects cannot be compared", without qualifications. Agreed, given sufficient context you can disambiguate, but I would appreciate a more precise way of casting the various points of views, supported by citations of the standard (e.g., like *you* are doing ;)
Paolo.