Why we should not enable a slow DFA by default
Richard (Rikki) Andrew Cattermole
richard at cattermole.co.nz
Fri Dec 19 09:40:21 UTC 2025
On 19/12/2025 9:40 PM, Richard (Rikki) Andrew Cattermole wrote:
> Out of curiosity I wanted to know how many functions were @safe before
> and after the extra 2 passes took place.
>
> Before: 2900 out of 6595
>
> After: 106 out of 1103
>
> That is a pretty big reduction.
I managed to get the number of functions failing to analyze to zero.
Had to adjust my check to account for extern functions without bodies,
and functions in non-root modules that have not been analyzed.
I also had to disable my workaround for not having a way to mark
functions as CTFE only.
Either way, the good news is one pass is all that is needed to offer
higher support for interprocedural analysis.
More information about the Digitalmars-d
mailing list