[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: alloca bug
From: |
Jon Wilson |
Subject: |
Re: alloca bug |
Date: |
Tue, 12 Dec 2006 15:55:35 -0600 |
User-agent: |
Thunderbird 1.5.0.8 (X11/20061115) |
Hi Neil,
Neil Jerram wrote:
One thing to be aware of is that the so-called "portable"
implementation of alloca() in alloca.c just doesn't work with Guile,
because it doesn't really allocate memory on the stack.
alloca.c from where? From libc? If so, which libc? Or do you mean
some file alloca.c within the guile source?
In fact, alloca.c was removed for this reason in 2004:
2004-09-08 Marius Vollmer <address@hidden>
* Makefile.am (EXTRA_libguile_la_SOURCES): Removed "alloca.c".
Does anyone know what caused it to reappear? ChangeLog doesn't reveal
anything.
I don't see any file called alloca.c in the 1.8.1 source tree.
Guile fundamentally requires a real alloca, which means it has to be a
compiler builtin.
I'm puzzled now. Could you please clarify exactly what you are talking
about?
What I was referring to was the fact that when you #include stdlib.h on
a BSD system, and then use autoconf's blob of code to define alloca,
using the BSD default libc and cc, you get a preprocessor error that
says that alloca has already been defined. Or, at the least, guile's
libguile/eval.c does #include stdlib.h, and does use autoconf's blob,
and produces such an error. The location of the previous definition is
given as stdlib.h. Are we talking about the same thing? If so, I need
some help understanding what you've said.
Regards,
Jon