From 648147e83a2ed0bcd8b1181d64f347a3181e7c0f Mon Sep 17 00:00:00 2001 From: jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Sun, 4 Jan 2004 20:37:52 +0000 Subject: [PATCH] PR c/3414 * doc/extend.texi: Clarify definition of malloc attribute. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@75395 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/doc/extend.texi | 11 ++++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a1b09c01db3f..f37704cbb821 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-01-04 Joseph S. Myers <jsm@polyomino.org.uk> + + PR c/3414 + * doc/extend.texi: Clarify definition of malloc attribute. + 2004-01-04 Jan Hubicka <jh@suse.cz> * Makefile.in (cgraph.o, cgraphunit.o): Add intl.h dependency. diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index ac038554b9ab..abd841501bf2 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -1,4 +1,4 @@ -@c Copyright (C) 1988,1989,1992,1993,1994,1996,1998,1999,2000,2001,2002, 2003 +@c Copyright (C) 1988,1989,1992,1993,1994,1996,1998,1999,2000,2001,2002,2003,2004 @c Free Software Foundation, Inc. @c This is part of the GCC manual. @c For copying conditions, see the file gcc.texi. @@ -2355,9 +2355,14 @@ and linker. @item malloc @cindex @code{malloc} attribute The @code{malloc} attribute is used to tell the compiler that a function -may be treated as if it were the malloc function. The compiler assumes -that calls to malloc result in pointers that cannot alias anything. +may be treated as if any non-@code{NULL} pointer it returns cannot +alias any other pointer valid when the function returns. 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. @item alias ("@var{target}") @cindex @code{alias} attribute -- GitLab