The .. threading macro analyzes as a macro, not interop (jolt-c2l1 tail)

(.. x m ...) failed: the analyzer classified the .. head as a .method interop
call (method-head? matched any "."-prefixed name) and form-special?
(hc-interop-head?) also flagged it, so it never reached the macro check. Exclude
".." from both (the char after "." being "." means the threading macro, not
.method). Corpus 2690->2691. Re-minted.
This commit is contained in:
Yogthos 2026-06-21 17:08:11 -04:00
parent e7f5bcb58d
commit 547a8c6d17
4 changed files with 85 additions and 83 deletions

View file

@ -301,7 +301,8 @@
(defn- method-head? [nm]
(and (> (count nm) 1)
(= "." (subs nm 0 1))
(not (= "-" (subs nm 1 2)))))
(not (= "-" (subs nm 1 2))) ; .-field is field access
(not (= "." (subs nm 1 2))))) ; .. is the threading macro, not .method
(defn- analyze-host-call [ctx hname items env]
(when (< (count items) 2)