Conversation

There was a window of time where it was unsafe due to a bad decision to prematurely drop the legacy approach before the replacement was deployed across all platforms. However, that was a long time ago, and it's definitely safe across platforms now. It was an old historical issue.
2
1
It's also important to note that there was always a guard page at the bottom of the stack, so most stack overflows were always reliably caught on normal platforms. Originally, all edge cases were also caught due to the explicit checks. Typical stack exhaustion was never unsafe.
1
The issue was that stack probes were not being generated by LLVM on non-Windows platforms yet when the explicit checks were dropped in favour of stack probes. It was known this was an issue, and I don't understand why it was decided to have a window of time where this was broken.
1
2