From 6bcaef138f13f9894abe3790aca52591a3d2d1f6 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 28 Feb 2026 16:18:04 +0200 Subject: Remove vestigial double-retry loop in _statement() [POLA] _statement() wrapped its six parse rules in `for (int i = 0; i < 2; ++i)` with no explanation. Investigation shows every rule is atomic: it either consumes tokens and returns 1, or leaves the stream untouched and returns 0. A second pass would see identical parser state, so the retry was a no-op. Replace the loop with a flat priority-ordered try sequence and add a comment explaining the invariant so future readers are not confused. Co-Authored-By: Claude Sonnet 4.6 --- docs/stats.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/stats.txt b/docs/stats.txt index 1123c63..e4a2d10 100644 --- a/docs/stats.txt +++ b/docs/stats.txt @@ -1,6 +1,6 @@ make[1]: Entering directory '/home/paul/git/fype' ===> Num of C source files : 46 -===> Num of C source lines : 8742 +===> Num of C source lines : 8744 ===> Num of Fype source examples : 19 ===> Num of Fype source lines : 883 make[1]: Leaving directory '/home/paul/git/fype' -- cgit v1.2.3