|This is a split of this post which was originally intended to discuss a specific problem with recursion.|
The original topic got hijacked into a discussion of stack overflows and compiler optimizations. While this topic could be very interesting, it is likely to be a distraction to the original poster. Hence the split. The original poster's question, and all the posts since that point are listed below.