On Thu, Jul 13, 2006 at 03:41:29PM +0200, Gabriel Dos Reis wrote: > > > I'm not clear about "you can't compare them". > > > > > > Surely, I can take the address of typeid(S) and pass it around to > > > a function in another translation unit. I can do > > > typeinfo1->before(*typeinfo2), where typeinfo1 and typeinfo2 comes > > > from two such different translation units. > > > > > > How the current visibility framework prevent that from happening?
Joe Buck <[EMAIL PROTECTED]> writes: > > By a note in the documentation telling the user "don't do that". On Fri, Jul 14, 2006 at 11:34:18AM -0700, Geoffrey Keating wrote: > No, there's no such note. The answer is that the two typeids have > different addresses, so one will be before the other, depending on > where the shared libraries got loaded, just as if the classes had > different names. We're in complete agreement. What I meant was to say that if Gaby is worried over user confusion on this point, we'd add a warning that the result isn't defined, but I expressed it in a sloppy way. I know that the documentation currently says nothing on the matter.