Can you give an example of stack overflow in C++? Other than the recursive case:
void foo() { foo(); }
You could also get a stack overflow if you try to put large objects on the stack (by-value).