Samuel Thibault, le Tue 10 Oct 2006 11:35:12 +0200, a écrit :
> Roland McGrath, le Tue 10 Oct 2006 02:29:12 -0700, a écrit :
> > Thanks for the clarification.  I committed a libc change that should work.
> 
> Thanks.  Unions make the "may alias" link, indeed.

Oops, union fields indeed alias between each other (that's a gcc
extension of the C standard), but the remaining cast is still doubtful:

  const union tv *u = (const union tv *) tvp;

gcc won't consider that u and tvp may alias.  Now, it happens that this
works, since glibc is currently not compiled with optimization across
modules, hence tvp is always correctly filled by the caller.

Samuel


_______________________________________________
Bug-hurd mailing list
Bug-hurd@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-hurd

Reply via email to