Malte Ubl and Claude Opus 5.5
541b05ddea
Map generic alias casts inside generic bodies with the instance's arguments
...
A cast to a generic type alias spelled over the enclosing function's own
type parameters (`return x as Catalog<G, P>`) stays symbolic in the
checker inside the body, so a mapped type with key remapping, a template
key filter or a conditional member refused with SC2001 in every instance.
The checker interns alias instantiations, so the body's `Catalog<G, P>` is
the same type the signature declares. Binding unification now records, per
call-keyed instance, each declared generic alias reference together with
the alias the call's resolved signature instantiates. When the symbolic
form does not map, mapType maps that concrete instantiation instead. A body
forwarding its own alias to another generic resolves through the enclosing
instance. Types that already mapped are unaffected.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-25 09:22:06 -07:00
..
2026-10-18 15:11:32 -07:00
2026-10-25 09:22:06 -07:00
2026-10-22 13:11:34 -05:00
2026-10-20 00:21:45 -05:00
2026-10-20 00:21:45 -05:00
2026-10-25 04:54:28 -05:00
2026-10-22 03:00:21 -05:00
2026-10-14 21:17:46 -05:00
2026-10-15 06:12:23 -07:00
2026-10-22 04:44:34 -05:00
2026-10-22 02:09:43 -05:00
2026-10-20 17:56:44 -05:00
2026-10-25 09:59:43 -05:00
2026-10-22 09:55:01 -05:00
2026-10-23 10:28:44 -05:00
2026-10-21 21:55:47 -05:00
2026-10-25 06:31:51 -05:00
2026-10-23 20:13:09 -05:00
2026-10-23 21:34:14 -05:00
2026-10-17 19:11:33 -05:00
2026-10-22 20:33:09 -05:00
2026-10-25 05:23:35 -05:00
2026-10-22 06:11:52 -05:00
2026-10-24 16:26:38 -05:00
2026-10-16 06:54:44 -07:00
2026-10-25 09:13:52 -05:00
2026-10-22 20:36:52 -05:00
2026-10-25 07:46:24 -05:00
2026-10-23 20:45:37 -05:00
2026-10-18 15:11:32 -07:00
2026-10-22 22:56:12 -05:00
2026-10-23 09:25:07 -05:00
2026-10-18 15:11:32 -07:00
2026-10-15 07:59:19 -05:00
2026-10-18 15:19:39 -07:00
2026-10-16 06:59:43 -07:00
2026-10-22 03:44:38 -05:00
2026-10-17 12:08:06 -07:00
2026-10-21 21:28:46 -05:00
2026-10-25 02:32:44 -05:00
2026-10-15 05:07:10 -07:00
2026-10-16 01:10:45 -05:00
2026-10-25 02:15:04 -05:00
2026-10-23 20:02:25 -05:00
2026-10-23 22:08:02 -05:00
2026-10-23 17:41:28 -07:00
2026-10-24 22:34:45 -05:00
2026-10-25 08:24:12 -05:00
2026-10-20 16:42:01 -07:00
2026-10-25 00:44:25 -05:00
2026-10-23 13:20:59 -05:00
2026-10-16 04:45:45 -05:00
2026-10-18 15:11:32 -07:00
2026-10-17 12:28:03 -07:00
2026-10-23 21:30:21 -05:00
2026-10-20 17:56:44 -05:00
2026-10-25 03:25:37 -05:00
2026-10-19 07:55:06 -05:00
2026-10-23 10:16:30 -05:00
2026-10-18 07:31:43 -07:00
2026-10-18 07:31:43 -07:00
2026-10-20 17:56:44 -05:00
2026-10-20 17:56:44 -05:00
2026-10-25 06:31:07 -05:00
2026-10-23 18:11:49 -05:00
2026-10-24 15:56:52 -05:00
2026-10-24 00:34:25 -05:00
2026-10-24 16:05:36 -05:00
2026-10-23 06:22:00 -05:00
2026-10-25 05:23:35 -05:00
2026-10-23 00:05:57 -05:00
2026-10-22 19:32:49 -07:00
2026-10-22 11:46:21 -05:00
2026-10-14 09:58:18 -05:00
2026-10-23 22:59:39 -05:00
2026-10-16 20:13:00 -05:00
2026-10-16 05:12:23 -05:00
2026-10-22 08:03:32 -05:00
2026-10-25 06:42:25 -05:00
2026-10-22 08:16:36 -05:00
2026-10-23 10:28:44 -05:00
2026-10-24 13:20:02 -05:00
2026-10-15 13:39:03 -05:00
2026-10-23 10:32:15 -05:00
2026-10-20 17:56:44 -05:00
2026-10-25 03:56:48 -05:00
2026-10-22 09:39:07 -05:00
2026-10-18 15:11:32 -07:00
2026-10-21 13:12:24 -05:00
2026-10-23 22:40:04 -05:00
2026-10-24 22:53:15 -05:00
2026-10-25 07:37:50 -05:00
2026-10-16 14:02:02 -07:00
2026-10-23 18:26:12 -05:00
2026-10-17 13:32:48 -07:00
2026-10-22 03:44:38 -05:00
2026-10-24 21:50:36 -05:00
2026-10-23 19:28:30 -05:00
2026-10-20 11:00:03 -05:00
2026-10-19 23:38:15 -05:00
2026-10-22 09:32:19 -05:00
2026-10-24 00:43:56 -05:00
2026-10-18 15:19:39 -07:00
2026-10-18 15:19:39 -07:00
2026-10-24 18:32:42 -05:00
2026-10-24 12:37:29 -05:00
2026-10-25 08:06:24 -05:00
2026-10-14 21:28:04 -05:00