This seems to be only partially fixed. With rev 74123, when I run it with a moderate depth and a large iteration count (arguments 100 100000 or even 5000 100000) it runs fine and does not find any name mismatches in the exception trace. But when I run it with a depth >= 7166 and iteration count of 1 (e.g., arguments 8000 1), it crashes with a seg fault. I have stack size set to "unlimited" and I verified that the stack for each thread is only about 1 MB. These results are on OpenSolaris 2008.05 snv_93 on x86. Haven't tried on Solaris SPARC yet. In fact, it crashes with just one main thread and one worker if depth >= 7166, even if it does not raise an exception. Maybe there is a per-thread stack limit I'm not aware of. I will try on Solaris SPARC.