Martin Michlmayr <[EMAIL PROTECTED]> writes:

> It's not as bizarre as it looks.  See #386267 for a description of the
> problem.  If you can come up with a better fix (i.e one for the glibc
> header), I'd appreciate it.

Aha.

Probably the reason why it was producing warnings (and one of the reasons
why I was confused) is that you don't mean:

    WCOREDUMP((struct testset *)ts->status)

which passes a pointer to a struct testset into WCOREDUMP.  You mean:

    WCOREDUMP(((struct testset *) ts)->status)

since -> has a higher precedence than () casts in C.

My guess is that a compiler change uncovered this.  I bet that before,
even if ts was a const struct testset *, an element "status" defined as an
int and referenced as ts->status was still an int, not a const int.

Whatever the problem is, though, it appears to be specific to AMD64.  I
can't replicate it on x86 at all, even with the latest unstable compiler.
I'll look at this more from home this evening where I have an AMD64
system.

-- 
Russ Allbery ([EMAIL PROTECTED])               <http://www.eyrie.org/~eagle/>


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to