glibc-19980524: invalid use of GCC's `transparent union'
Mark Kettenis
kettenis@phys.uva.nl
Tue May 26 02:00:00 GMT 1998
Date: Mon, 25 May 1998 21:10:44 +0100
From: Philip Blundell <Philip.Blundell@pobox.com>
>The problem is that glibc uses the `transparent union' mechanism in an
>undocumented way, which is not recognized by gcc-2.8.1. *Note:
Last time I looked at this (around the 2.8.0 release) it seemed that
transparent_union did work, but you needed to give ANSI-style prototypes to
get gcc to do the right thing. It seems unlikely that the gcc people have
managed to break it since, though anything's possible I guess.
Can you do a bit of experimenting and see if you can persuade it to work?
Using ANSI-style declarations works with gcc-2.8.1, at least for one
(hurd-specific) case Gord reported. Browsing through the code I
noticed that in the past there have been various "fixes" for this
problem, but that these fixes all do it in a different way. I think
someone needs to go over all the cases and fix the problems in a
uniform way. I'd say we use ANSI-style declarations of the wait?
functions all over, and I am willing to make the fixes, but it might
take a few days...
Mark
More information about the Libc-alpha
mailing list