Pretty sure that this applies to the OS, regardless of whether you crashed, not the compiler. Your mileage may vary between systems and the amount of memory for the stack. And I would suggest that as long as you are in the previously allocated stack space, it will not break. What is especially troublesome - it can run very well and not tell you that there is a problem, in addition, if you are lucky, this leads to erroneous results.
If you try to access, say, a[10000] - what the OS knows is not in your program space - something outside the space allocated for the stack will crash.
source share