Files
scriptc/packages
Chris Tate e48b2c3435 Keep held format arguments static and compiling
The runtime format branch packed its arguments with a checked-dynamic
array literal, a dynamic operation: a console.log with a string first
argument put its function in the dynamic tier, and the property-bag
analysis read the format calls as possible dynamic stores. The held
arguments now go to the formatter as a native list of checked values
(insp.formatList and insp.formatPrimitives), which is a tier boundary, and
the format and inspect entries join the helpers that never store into a
class instance.

A first argument whose type may hold a string only through a union, or
whose checker type does not map, packed every argument as a checked value
and failed to compile when one did not convert (7380's
`console.log(top ? [...top] : "none", byName)`). It now takes the
held-argument form: the lowered value is tested for a substitution and
otherwise joins as before. In TypeScript an argument without a
checked-dynamic form is refused at compile time only when the joined
form cannot print it either; otherwise the branch that substitutes
throws SC2020, as in JavaScript.
2026-10-22 21:24:51 -05:00
..
2026-10-22 18:44:10 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 18:44:10 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 18:44:10 -05:00
2026-10-22 11:14:27 -05:00
2026-10-22 11:14:27 -05:00