瀏覽代碼

docs: class results and chained post-call method calls landed

Eric Streit 3 天之前
父節點
當前提交
d1e36b9c06
共有 3 個文件被更改,包括 10 次插入 和 8 次删除
  1. 3 1
      docs/STATUS.md
  2. 4 5
      docs/analysis_gaps.md
  3. 3 2
      docs/features.md

+ 3 - 1
docs/STATUS.md

@@ -26,7 +26,9 @@ test and every session.  Since then:
 - **statement-context result suffixes** (`F()^.x := e`) were added;
 - **composite function results** (record/array/set, via sret) were added,
   which also required storing a method's block declarations (fixing
-  methods with local variables).
+  methods with local variables);
+- **class results** and **chained post-call method calls** (`F().M()`)
+  were added.
 
 ## TL;DR
 

+ 4 - 5
docs/analysis_gaps.md

@@ -115,11 +115,10 @@ assignment (flat blit), nested-`MODULE` lowering, `ADDRESS`↔pointer
 assignment.
 
 Remaining after today: `GOTO`/labels, generics, multiple inheritance
-(deliberate), chained post-call calls (`F().M()` — composite results now
-work, so this needs only a call-after-call-result grammar addition plus
-class results), and the channel/device library holes in §2.
-(Statement-context result suffixes, `F()^.x := e`, landed 2026-10-08;
-composite function results — record/array/set — landed 2026-10-08.)
+(deliberate), and the channel/device library holes in §2.
+(Statement-context result suffixes `F()^.x := e`, composite function
+results — record/array/set/class — and chained post-call method calls
+`F().M()` all landed 2026-10-08.)
 
 ## 7. Done after the gap analysis (this session)
 

+ 3 - 2
docs/features.md

@@ -108,8 +108,9 @@ Legend: ✅ done · 🔄 partial · ⏸ not started / deferred.
   module init functions; opaque completion; strict 235 signature
   checks between a definition and its implementation.
 - ✅ Procedure-type variables / indirect calls (`t_proctype`); ✅
-  composite function results (record/array/set, sret); ⏸ per-file
-  object emission, import cycles.
+  composite function results (record/array/set/class, sret) and chained
+  post-call method calls (`F().M()`); ⏸ per-file object emission, import
+  cycles.
 
 ## Backend (QBE)
 - ✅ Length-prefixed arrays (count + elements), deep record copy,