This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: malloc attributes and realloc
Robert Dewar <dewar@gnat.com> writes:
| Gabriel Dos Reis wrote:
|
| > The reason is obvious.
| > If p is a non-NULL pointer you get from a realloc, then it is
| > guaranteed that the content of object previously pointed-to is still
| > present at the start of new object. Therefore, the compiler cannot,
| > in general, replace the test *p != 'a' by true.
|
| Why not? the fact of the matter is that the
| semantics of the code fragment are identical whether or not the test is
| true or false, so there is no need to do the test.
Daniel Jacobowitz pointed out what I misread in the original example.
-- Gaby