> So it looks like some targets are at least optionally still using sjlj > exceptions and would be affected by this change. AFAICT it only makes a > difference with -fstack-check and would be a bugfix even for those > targets - correct?
Yes, for example the 32-bit Windows compiler still uses SJLJ exceptions. > Or is there something Ada-specific that makes it require more stack? The history is as follows: -fstack-check was implemented for Ada (it's required by the language) and the `setjmp'/`longjmp'-based exception handling mechanism referred to in the doc is the SJLJ scheme of the Ada compiler. This scheme is purely driven by the front-end (for example, -fexceptions is *not* set when it is in use) and the 75 words are sufficient with it. This front-end SJLJ scheme has some annoying drawbacks/limitations so we are experimenting with the middle SJLJ scheme (-fexceptions set) and for it the 75 words are definitely not sufficient; 4K/8K are required e.g. on Solaris. > If it's not Ada-specific, the patch is ok if you also update the tm.texi > documentation. It's not Ada-specific in the sense that, if you want to raise an exception on a stack overflow in any language with the middle-end SJLJ scheme, the current setting is definitely not sufficient and you'll get a crash during unwinding. -- Eric Botcazou
