-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Suraj Kurapati wrote:
> If this works, then I will know that
> the Verilog Simulator I am using is imposing a heap limitation on my
> C program and its embedded Ruby interpreter.

The Verilog simulator was not at fault.


After some more investigation I happened upon the answer. There was
indeed a heap/stack limitation upon the Ruby interpreter embedded in
my C program!

(my C program, inside its own process
 .. unlimited stack space ..

  (Ruby interpreter, inside a pthread
   .. 2 MiB of stack space ..

  )
)

I was using the pthread library, with default attribute values
(thread stack size = 2 MiB) for pthread_create(), to launch the Ruby
interpreter. Naturally, the interpreter eventually ran out of stack
space and produced the SystemStackError.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFD+MRzmV9O7RYnKMcRAh2aAJ9gb1XNQk19cYtnFHSMhkT0vuJieQCfXPVj
V366JSg08osQwHOASKUg/54=
=MGe0
-----END PGP SIGNATURE-----