In article <200509291419.j8TEJYid015419 / moulon.inra.fr>, ts <decoux / moulon.inra.fr> writes: > Well, I've forgotten to give the reason : with bison 2.0 Hmm. alloca is not used by default since bison 2.0. bison-2.0/doc/bison.texinfo : | @deffn {Macro} YYSTACK_USE_ALLOCA | Macro used to control the use of @code{alloca} when the C | @acronym{LALR}(1) parser needs to extend its stacks. If defined to 0, | the parser will use @code{malloc} to extend its stacks. If defined to | 1, the parser will use @code{alloca}. Values other than 0 and 1 are | reserved for future Bison extensions. If not defined, | @code{YYSTACK_USE_ALLOCA} defaults to 0. | | If you define @code{YYSTACK_USE_ALLOCA} to 1, it is your | responsibility to make sure that @code{alloca} is visible, e.g., by | using @acronym{GCC} or by including @code{<stdlib.h>}. Furthermore, | in the all-too-common case where your code may run on a host with a | limited stack and with unreliable stack-overflow checking, you should | set @code{YYMAXDEPTH} to a value that cannot possibly result in | unchecked stack overflow on any of your target hosts when | @code{alloca} is called. You can inspect the code that Bison | generates in order to determine the proper numeric values. This will | require some expertise in low-level implementation details. | @end deffn -- Tanaka Akira