Stack frames larger than 4K should be rejected, but what if I want more
Ola Fosheim Grøstad
ola.fosheim.grostad at gmail.com
Mon Jun 28 07:10:05 UTC 2021
On Sunday, 27 June 2021 at 22:16:12 UTC, IGotD- wrote:
> That's a good observation. Does this mean that the point of the
> suggested 4K limit falls?
No, because the compiler can refuse to inline, but it is a bad
idea.
It also means that safe functions cannot call FFI, how can you
prove that FFI does not exceed 4K after inlining?
D is trying to become a high level language, but is also aiming
to be system level and that is not really an attainable goal. You
have to make a choice. It would be better for D to not go for
100% safe, but instead prevent common mistakes.
I've never ran out of stack for any code I've written ever.
Maybe that means allocating larger stacks so that guard pages are
never hit, add more guard pages and simply terminate when guard
pages are hit.
Other alternatives: do stack depth analysis, add stack less
coroutines.
Anyway, for a system level language, those choices should be at
the hand of the programmer. I agree with you on that.
More information about the Digitalmars-d
mailing list