I cannot make alloca work

I cannot make alloca work

A famous routine, in particular in GNU context, is the allocation
routine alloca(). Alloca allocates memory in such a way that it is
automatically free'd when the block is exited. Most implementations
does this by adjusting the stack pointer. Since not all C environments
can support it, its use is discouraged, but it is included in the xlc
compiler. In order to make the compiler aware that you intend to use
alloca, you must put the line

#pragma alloca

before any other statements in the C source module(s) where alloca is
called. If you don't do this, xlc will not recognize alloca as anything
special, and you will get errors during linking.

For AIX 3.2, it may be easier to use the -ma flag.



Home FAQ