mirror of
https://github.com/vercel-labs/scriptc.git
synced 2026-10-27 06:43:19 +08:00
hot-shots, a StatsD client compiled from its JavaScript, failed when a program constructed a client. Each gap on its UDP path is closed generically: - Sloppy-mode functions with named parameters may read `arguments` where the aliasing of their parameters cannot show: only `arguments.length`, or element reads without parameter or element writes. - An `any` slot admits any boxable function value, including functions with optional parameters (`C.prototype.m = function (...)` through an untyped receiver). - In a JavaScript file TypeScript does not check, a prototype method takes its documented parameters as checked-dynamic values, as constructors already did. - JavaScript dgram sends run completion callbacks, buffer lists, connected sends and the six-argument offset/length form. - A dgram socket crosses into the checked-dynamic tree as a handle (SCR_DYNH_DGRAM_SOCKET) whose methods are function values, with untyped listeners that survive 'close'. The handle lives in its own runtime unit (scr_dgram_dyn.c, the dgramDyn feature), linked only when a program converts a socket to or from an untyped value. - `String.prototype.concat` on strings, and `parseInt` over a possibly missing or untyped value in JavaScript. Corpus programs 6590-6596 and the hot-shots-udp npm case (hot-shots 8.5.0 vendored) match Node in both lanes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>