Files
scriptc/packages/compiler/test
Malte UblandClaude Opus 5.5 eef68a7a97 Answer promises from thunked and dispatched untyped async methods
An untyped JavaScript async method whose result the compiler keeps as
`dyn` (its storage passes through untyped helpers) has a `dyn` return
on its signature: the promise's payload, not the promise. Two call paths
took that as the call's own type and failed the IR check ("call … type
dyn != return promise"):

- thunkAsyncSlot's `$own` adapter, made when a TypeScript override of
  such a method keeps the inherited slot (an async-sema `acquire`
  override). The slot's ABI is now the body's promise.
- `%dyn.class.call` dispatch from untyped callers (zod's `parseAsync`
  and `safeParseAsync` through checked-dynamic receivers), which now
  answers the promise.

Prototype data slots also skip method values that have no checked-
dynamic form (an async method's promise-returning signature) instead of
building an invalid slot.

From the int/bc round-5 build of the build-container entry.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 10:33:40 -07:00
..
2026-10-14 21:17:46 -05:00
2026-10-20 09:52:32 -05:00
2026-10-19 07:55:06 -05:00
2026-10-20 09:52:32 -05:00
2026-10-14 21:09:51 -05:00