Use a dynamically allocated stack when constructing the sharing vectors rather than using the normal C stack.  The stack could quite easily be as deep as the longest data structure and if the C stack overflows it produces a seg-fault.  Now if the stack is too large to allocate the code will try to share as much as it can.
Use a dynamically allocated stack when constructing the sharing vectors rather than using the normal C stack.  The stack could quite easily be as deep as the longest data structure and if the C stack overflows it produces a seg-fault.  Now if the stack is too large to allocate the code will try to share as much as it can.

git-svn-id: 98787b36aaefbae4b30fa755be920954cd25e1e4@1464 ae7d391e-3f74-4a2b-a0db-a8776840fd2a

mn200/polyml,dcjm/polyml,mn200/polyml,polyml/polyml,dcjm/polyml,polyml/polyml,polyml/polyml,mn200/polyml,dcjm/polyml,dcjm/polyml,mn200/polyml,polyml/polyml