VMS Help CC, Messages, MIXVLAALLOCA *Conan The Librarian (sorry for the slow response - running on an old VAX) |
Message Declaring a variable length array in the same block as a call to __ALLOCA will cause the storage allocated by any __ALLOCA call to<fragment> previous call to __ALLOCA was at <where>. Description Storage allocated for arrays of variable length have their storage deallocated when the block they are declared in exits. Storage allocated by __ALLOCA is not normally deallocated until function exit. Compaq C can not support both types of deallocation in the same block. Therefore, when both a vla array and an __ALLOCA call appear in the same block, the storage for both will be deallocated with the block exits. User Action Be aware of this. If the storage allocated for __ALLOCA must remain allocated until function exit, move the __ALLOCA call outside the block declaring the vla array.
|