Re: [PATCHES] fix for strict-alias warnings

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: PostgreSQL Hackers Mailing List <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [PATCHES] fix for strict-alias warnings
Date: 2003-10-13 15:10:42
Message-ID: 3F8AC072.2070907@dunslane.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

Tom Lane wrote:

>"Andrew Dunstan" <andrew(at)dunslane(dot)net> writes:
>
>
>>I was inder the impression, perhaps incorrectly, the casting the pointers to
>>(void *) would inhibit the compiler from making any assumptions about what
>>it pointed to, and hence inhibit bad effects from those assumptions. The
>>only way to know would be to examine the assembler output, I suppose. The
>>alternative is that it would merely inhibit the compiler from issuing a
>>warning and mask a bad effect. That would be nasty
>>
>>
>
>IIUC the issue is whether the compiler might incorrectly rearrange the
>order of operations based on the assumption that two pointers point
>to different storage (when in fact they point to the same storage).
>

*nod*

>I don't see what about introducing "(void *)" would be likely to keep
>the compiler from making such assumptions --- you'll still have the same
>two pointers and the exact same sequence of operations. Accordingly,
>I think it's very likely that the so-far-proposed patches are indeed
>masking the symptom and not solving the real problem.
>
>
>
My thinking was that it makes those assumptions based on the type of the
pointer, and it doesn't know the type in the case of (void *).
Otherwise it really ought to omit a warning even when you cast to (void
*), IMNSHO.

You could well be right (as I implied above :-) ), and there are at
least some clues that gcc isn't very smart about this.

So I still think adding -fno-strict-aliasing is the way to go for now.

(back to my day job)

cheers

andrew

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Hannu Krosing 2003-10-13 17:00:15 Re: http://www.pgsql.com/register/submit.php
Previous Message Tom Lane 2003-10-13 14:52:17 Re: [PATCHES] fix for strict-alias warnings

Browse pgsql-patches by date

  From Date Subject
Next Message Peter Eisentraut 2003-10-13 21:38:54 Re: Russian NLS Update: psql
Previous Message Tom Lane 2003-10-13 14:52:17 Re: [PATCHES] fix for strict-alias warnings