On Mon, 9 Jan 2012, Xinliang David Li wrote: > It looks non-ambiguous to me.
The new proposed version or the old? Richard. > David > > On Mon, Jan 9, 2012 at 1:05 AM, Richard Guenther <rguent...@suse.de> wrote: > > > > Since GCC 4.4 applying the malloc attribute to realloc-like > > functions does not work under the documented constraints because > > the contents of the memory pointed to are not properly transfered > > from the realloc argument (or treated as pointing to anything, > > like 4.3 behaved). > > > > The following adjusts documentation to reflect implementation > > reality (we do have an implementation detail that treats the > > memory blob returned for non-builtins as pointing to any global > > variable, but that is neither documented nor do I plan to do > > so - I presume it is to allow allocation + initialization > > routines to be marked with malloc, but even that area looks > > susceptible to misinterpretation to me). > > > > Any comments? > > > > Thanks, > > Richard. > > > > 2012-01-09 Richard Guenther <rguent...@suse.de> > > > > * doc/extend.texi (malloc attribute): Adjust according to > > implementation. > > > > Index: gcc/doc/extend.texi > > =================================================================== > > --- gcc/doc/extend.texi (revision 183001) > > +++ gcc/doc/extend.texi (working copy) > > @@ -2771,13 +2771,12 @@ efficient @code{jal} instruction. > > @cindex @code{malloc} attribute > > The @code{malloc} attribute is used to tell the compiler that a function > > may be treated as if any non-@code{NULL} pointer it returns cannot > > -alias any other pointer valid when the function returns. > > +alias any other pointer valid when the function returns and that the memory > > +has undefined content. > > This will often improve optimization. > > Standard functions with this property include @code{malloc} and > > -@code{calloc}. @code{realloc}-like functions have this property as > > -long as the old pointer is never referred to (including comparing it > > -to the new pointer) after the function returns a non-@code{NULL} > > -value. > > +@code{calloc}. @code{realloc}-like functions do not have this > > +property as the memory pointed to does not have undefined content. > > > > @item mips16/nomips16 > > @cindex @code{mips16} attribute > > -- Richard Guenther <rguent...@suse.de> SUSE / SUSE Labs SUSE LINUX Products GmbH - Nuernberg - AG Nuernberg - HRB 16746 GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer