One spelling for an unvalidated builtin arg, and say what the hold buys

float's prep still swallowed ParseFloat's error three lines from the atoi that
had just been changed to report one — two spellings of "parse an arg the check
already validated". atof reports it the same way.

The README paragraph said a reference reaching through an operand is caught,
which the narrowed fence no longer does and should not: it says what the hold
pins instead. Restored the why the trimmed comment in expand had carried.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
M
2026-08-31 15:05:52 +02:00
committed by lilleman-tw
parent 027d5c33fc
commit f949550515
3 changed files with 16 additions and 7 deletions
+2 -1
View File
@@ -156,7 +156,8 @@ func expand(s *session, t *template) string {
case 'f':
b.WriteString(readField(s, t, held, o.arms[s.IntN(len(o.arms))]))
case 'b':
// Read in the order calcVars fixed, which is what op.operands holds.
// Read before the call, so the value a calc computes is the value the
// format showed. calcVars fixed the order op.operands holds.
var operands []string
if len(o.operands) > 0 {
operands = make([]string, len(o.operands))