Louis Dionne
d6832a611a
[libc++][modules] Modularize <cstddef> ( #107254 )
...
Many headers include `<cstddef>` just for size_t, and pulling in
additional content (e.g. the traits used for std::byte) is unnecessary.
To solve this problem, this patch splits up `<cstddef>` into
subcomponents so that headers can include only the parts that they
actually require.
This has the added benefit of making the modules build a lot stricter
with respect to IWYU, and also providing a canonical location where we
define `std::size_t` and friends (which were previously defined in
multiple headers like `<cstddef>` and `<ctime>`).
After this patch, there's still many places in the codebase where we
include `<cstddef>` when `<__cstddef/size_t.h>` would be sufficient.
This patch focuses on removing `<cstddef>` includes from __type_traits
to make these headers non-circular with `<cstddef>`. Additional
refactorings can be tackled separately.
2024-09-05 08:28:33 -04:00
..
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2024-06-18 09:13:45 -04:00
2024-08-27 16:54:05 +02:00
2024-03-27 16:54:50 +01:00
2023-12-18 14:01:33 -05:00
2024-05-23 15:58:51 -04:00
2023-12-18 14:01:33 -05:00
2024-03-27 16:54:50 +01:00
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2024-08-05 11:23:06 -04:00
2024-04-22 22:13:58 +02:00
2024-03-17 20:00:54 +01:00
2023-12-18 14:01:33 -05:00
2024-07-31 10:34:19 -04:00
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2023-12-15 17:10:16 +01:00
2024-04-27 09:51:59 +02:00
2024-04-22 22:13:58 +02:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2023-12-18 14:01:33 -05:00
2024-08-05 11:23:06 -04:00
2024-03-18 14:19:51 +01:00
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2024-08-05 11:23:06 -04:00
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2023-12-18 14:01:33 -05:00
2024-07-18 16:11:24 -04:00
2024-04-22 22:13:58 +02:00
2024-08-04 10:02:43 +02:00
2024-08-05 11:23:06 -04:00
2023-12-18 14:01:33 -05:00
2024-06-18 09:13:45 -04:00
2024-08-05 11:23:06 -04:00
2024-04-22 22:13:58 +02:00
2023-12-18 14:01:33 -05:00
2024-08-05 11:23:06 -04:00
2023-12-18 14:01:33 -05:00
2024-04-22 22:13:58 +02:00
2024-08-05 11:23:06 -04:00
2024-08-05 11:23:06 -04:00
2024-05-11 23:32:48 +02:00
2024-03-27 16:54:50 +01:00
2024-03-27 16:54:50 +01:00
2024-01-25 15:48:46 -05:00
2024-04-22 22:13:58 +02:00
2024-01-25 15:48:46 -05:00
2024-08-05 11:23:06 -04:00
2024-03-18 08:29:44 +01:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-08-20 14:36:11 -04:00
2024-03-18 08:29:44 +01:00
2024-01-25 15:48:46 -05:00
2024-06-12 17:25:43 -04:00
2024-03-18 08:29:44 +01:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-01-25 15:48:46 -05:00
2024-08-04 10:02:43 +02:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-09-05 08:28:33 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2024-08-01 08:54:06 -04:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-04-22 22:13:58 +02:00
2024-04-22 22:13:58 +02:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-01-25 15:48:46 -05:00
2023-12-18 14:01:33 -05:00
2024-03-18 08:29:44 +01:00
2023-12-20 17:24:48 -08:00
2024-08-05 11:23:06 -04:00
2024-08-05 11:23:06 -04:00
2024-01-25 15:48:46 -05:00
2024-07-18 16:11:24 -04:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2023-12-18 14:01:33 -05:00
2024-01-05 16:29:23 -08:00
2024-06-11 08:29:12 -04:00
2024-03-18 08:29:44 +01:00
2024-08-27 16:54:05 +02:00
2024-01-25 15:48:46 -05:00
2024-03-18 08:29:44 +01:00
2024-01-25 15:48:46 -05:00
2024-08-27 14:22:49 -04:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-01-25 15:48:46 -05:00
2024-04-22 22:13:58 +02:00
2024-03-18 08:29:44 +01:00
2024-01-25 15:48:46 -05:00
2024-08-05 11:23:06 -04:00