This is the mail archive of the
gcc-prs@gcc.gnu.org
mailing list for the GCC project.
Re: c/10339: strncmp generates imPure code
- From: Michael Ubell <ubell at mindspring dot com>
- To: nobody at gcc dot gnu dot org
- Cc: gcc-prs at gcc dot gnu dot org,
- Date: 7 Apr 2003 21:36:00 -0000
- Subject: Re: c/10339: strncmp generates imPure code
- Reply-to: Michael Ubell <ubell at mindspring dot com>
The following reply was made to PR optimization/10339; it has been noted by GNATS.
From: Michael Ubell <ubell at mindspring dot com>
To: Andreas Schwab <schwab at suse dot de>
Cc: Timothy C Prince <tprince at myrealbox dot com>,
falk dot hueffner at student dot uni-tuebingen dot de, bangerth at ices dot utexas dot edu,
gcc-bugs at gcc dot gnu dot org, gcc-gnats at gcc dot gnu dot org
Subject: Re: c/10339: strncmp generates imPure code
Date: Mon, 07 Apr 2003 14:28:29 -0700
Andreas Schwab wrote:
> Michael Ubell <ubell at mindspring dot com> writes:
>
> |> Attached is a program that reads 831 unaligned unallocated
> |> bytes. I can't actually get it to segv on Solaris because
> |> I don't know enough about their memory management, but
> |> I cannot believe this is correct code.
>
> Yes, you are right, I can reproduce that also on ia64-linux. The
> conversion to memcmp is really invalid here.
>
> Andreas.
>
Now I get to argue the other side :-) Was your string properly null
terminated? If not, then its not the compiler's fault. I think
memcmp is valid so long as the strings are well formed. This will
be true because C strings may not contain embedded nulls.