mirror of https://github.com/mkerrisk/man-pages
alloca.3: Correct information on getting non-inlined version with gcc+glibc
- remove the incorrect information that -fno-builtin would help - add -std=c11 to the list of strict options - emphasize more that both the gcc option and not including alloca.h are needed - add the #ifdef from the glibc alloca.h to make the situation clearer Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
This commit is contained in:
parent
1aff58045d
commit
4906c99219
|
@ -40,7 +40,7 @@
|
|||
.\" Various rewrites and additions (notes on longjmp() and SIGSEGV).
|
||||
.\" Weaken warning against use of alloca() (as per Debian bug 461100).
|
||||
.\"
|
||||
.TH ALLOCA 3 2008-01-24 "GNU" "Linux Programmer's Manual"
|
||||
.TH ALLOCA 3 2013-05-12 "GNU" "Linux Programmer's Manual"
|
||||
.SH NAME
|
||||
alloca \- allocate memory that is automatically freed
|
||||
.SH SYNOPSIS
|
||||
|
@ -110,20 +110,22 @@ This is not done when either the
|
|||
.IR "\-std=c89" ,
|
||||
.IR "\-std=c99" ,
|
||||
or the
|
||||
.IR "\-fno\-builtin"
|
||||
.IR "\-std=c11"
|
||||
option is given
|
||||
(and the header
|
||||
.BR and
|
||||
the header
|
||||
.I <alloca.h>
|
||||
is not included).
|
||||
But beware!
|
||||
By default the glibc version of
|
||||
is not included.
|
||||
Otherwise (without an \-ansi or \-std=c* option) the glibc version of
|
||||
.I <stdlib.h>
|
||||
includes
|
||||
.I <alloca.h>
|
||||
and that contains the line:
|
||||
and that contains the lines:
|
||||
.nf
|
||||
|
||||
#ifdef __GNUC__
|
||||
#define alloca(size) __builtin_alloca (size)
|
||||
#endif
|
||||
|
||||
.fi
|
||||
with messy consequences if one has a private version of this function.
|
||||
|
|
Loading…
Reference in New Issue