Andrew Kelley
c21f046a8b
Sema: enhance is_non_err to be comptime more often
...
* Sema: store the precomputed monomorphed_funcs hash inside Module.Fn.
This is important because it may be accessed when resizing monomorphed_funcs
while this Fn has already been added to the set, but does not have the
owner_decl, comptime_args, or other fields populated yet.
* Sema: in `analyzeIsNonErr`, take advantage of the AIR tag being
`wrap_errunion_payload` to infer that `is_non_err` is comptime true
without performing any error set resolution.
- Also add some code to check for empty inferred error sets in this
function. If necessary we do resolve the inferred error set.
* Sema: queue full type resolution of payload type when
`wrap_errunion_payload` AIR instruction is emitted. This ensures the
backend may check the alignment of it.
* Sema: resolveTypeFully now additionally resolves comptime-only
status.
closes #11306
2022-03-30 00:47:55 -07:00
..
2022-03-26 21:20:29 +01:00
2021-04-29 15:54:04 -07:00
2021-04-29 15:54:04 -07:00
2021-04-29 15:54:04 -07:00
2021-04-29 15:54:04 -07:00
2021-09-01 17:54:07 -07:00
2022-03-19 19:41:23 -04:00
2022-02-28 23:20:05 +01:00
2022-03-24 17:04:50 +01:00
2021-10-04 23:48:55 -07:00
2022-03-23 14:06:07 -07:00
2022-03-15 15:09:48 -07:00
2022-03-23 14:06:07 -07:00
2022-03-28 18:28:08 -07:00
2022-02-14 22:33:01 +01:00
2022-03-26 21:20:29 +01:00
2022-03-18 16:28:38 +01:00
2021-10-28 17:33:05 -07:00
2022-03-17 18:00:48 -07:00
2022-03-08 21:10:04 +01:00
2022-03-26 00:27:12 -04:00
2022-03-18 15:02:52 -07:00
2022-03-29 22:19:06 -07:00
2022-03-21 15:05:21 +02:00
2022-03-15 15:09:48 -07:00
2022-02-13 14:42:20 +02:00
2022-03-08 21:10:04 +01:00
2022-03-09 13:53:20 -07:00
2022-03-30 00:47:55 -07:00
2022-03-29 02:28:20 -04:00
2022-03-08 11:23:38 +02:00
2022-03-10 20:00:07 +02:00
2022-03-09 13:53:20 -07:00
2022-03-14 23:15:01 -07:00
2022-02-14 22:33:01 +01:00
2021-05-08 14:45:21 -07:00
2022-03-29 02:28:20 -04:00
2022-03-29 02:28:20 -04:00
2022-03-29 20:11:48 -07:00
2021-05-08 14:45:21 -07:00
2022-03-11 12:59:20 -07:00
2022-03-05 11:31:51 +01:00
2022-01-07 00:06:06 -05:00
2022-03-08 21:10:04 +01:00
2022-03-29 02:28:20 -04:00
2022-03-19 21:01:36 -04:00
2022-03-05 11:31:51 +01:00
2022-02-28 23:20:05 +01:00
2022-03-28 17:45:50 +02:00
2022-03-18 15:02:52 -07:00
2022-02-22 21:57:42 +01:00
2022-03-17 11:39:56 -07:00
2022-03-16 20:35:41 -07:00
2022-03-17 11:39:56 -07:00
2022-03-17 11:39:56 -07:00
2022-03-25 19:21:34 +01:00
2022-03-23 19:58:13 -07:00
2022-03-21 22:01:34 -04:00
2021-12-11 00:29:31 +01:00
2022-03-26 21:20:29 +01:00
2021-05-08 14:45:21 -07:00
2022-02-22 21:57:42 +01:00
2022-03-01 18:24:00 -07:00
2022-03-18 15:02:52 -07:00
2022-03-25 19:14:11 +01:00
2022-03-18 15:02:52 -07:00
2022-03-16 20:19:58 +01:00
2021-06-21 17:03:03 -07:00
2022-03-29 02:28:20 -04:00
2022-03-01 23:46:57 -07:00
2022-03-16 20:19:58 +01:00
2022-03-22 15:45:59 -07:00
2022-03-27 14:40:24 -07:00
2022-03-09 13:53:20 -07:00
2022-03-09 13:53:20 -07:00
2022-03-25 22:32:15 +02:00
2022-03-05 11:31:51 +01:00
2022-03-08 20:38:51 +02:00
2022-03-18 15:02:52 -07:00
2022-03-15 15:09:48 -07:00
2022-03-05 11:31:51 +01:00
2022-03-24 17:04:50 +01:00
2022-03-26 21:20:29 +01:00
2022-03-25 22:32:14 +02:00
2022-03-23 21:40:33 +01:00
2022-03-18 00:12:22 -07:00
2022-02-28 23:20:05 +01:00
2022-03-18 15:02:52 -07:00
2022-03-28 13:04:50 -07:00
2022-03-08 21:10:04 +01:00
2022-03-17 11:39:56 -07:00
2022-03-28 14:17:05 -07:00
2022-03-16 20:20:07 +01:00
2022-03-03 18:31:55 -07:00
2022-03-24 22:45:10 -07:00
2022-03-27 11:49:54 +03:00
2022-01-29 18:12:28 +02:00