add unconditional warning before handling StackOverflow (#54622)
Since this is not modeled by the exception logic, and it can interrupt
arbitrary program state or corrupt locks (leading to hangs and other
issues), as well as just frequently segfaulting again afterwards, give a
printed message as soon as we notice things are going badly before
attempting to recover. For example:
```
$ ./julia -e 'f() = f(); f()'
Warning: detected a stack overflow; program state may be corrupted, so further execution might be unreliable.
ERROR: StackOverflowError:
Stacktrace:
[1] f() (repeats 2 times)
@ Main ./none:1
```
Refs https://github.com/JuliaLang/julia/issues/52291