Jakub Jelinek
219f801ef0
c++, libstdc++: Remove is_consteval_only* traits
The following patch implements LWG4555.
2026-04-08 Jakub Jelinek <jakub@redhat.com>
gcc/cp/
* constraint.cc (diagnose_trait_expr): Remove CPTK_IS_CONSTEVAL_ONLY
handling.
* metafns.gperf (enum metafn_code): Remove
METAFN_IS_CONSTEVAL_ONLY_TYPE.
(is_consteval_only_type): Remove.
* semantics.cc (trait_expr_value, finish_trait_expr): Remove
CPTK_IS_CONSTEVAL_ONLY handling.
* cp-trait.def (__builtin_is_consteval_only): Remove.
* metafns.h: Regenerate.
* reflect.cc (eval_is_consteval_only_type): Remove.
(process_metafunction): Don't handle METAFN_IS_CONSTEVAL_ONLY_TYPE.
gcc/testsuite/
* g++.dg/reflect/is_consteval_only1.C: Remove.
* g++.dg/reflect/eh1.C: Remove is_consteval_only_type tests.
* g++.dg/reflect/eh2.C: Likewise.
* g++.dg/reflect/type_trait5.C: Likewise.
libstdc++-v3/
* include/std/type_traits (std::is_consteval_only,
std::is_consteval_only_v): Remove.
* include/std/meta (std::meta::is_consteval_only_type): Remove.
* src/c++23/std.cc.in: Don't export std::is_consteval_only,
std::is_consteval_only_v and std::meta::is_consteval_only_type.
* testsuite/20_util/is_consteval_only/requirements/explicit_instantiation.cc:
Remove.
* testsuite/20_util/is_consteval_only/requirements/typedefs.cc:
Remove.
* testsuite/20_util/is_consteval_only/value.cc: Remove.
* testsuite/20_util/variable_templates_for_traits.cc: Remove
is_consteval_only_v tests.
Reviewed-by: Jason Merrill <jason@redhat.com>
Reviewed-by: Jonathan Wakely <jwakely@redhat.com>
2026-04-08 07:50:45 +02:00
..
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-03 16:11:58 +00:00
2026-01-07 15:20:45 +00:00
2026-01-02 09:56:11 +01:00
2026-03-06 07:12:23 -05:00
2026-01-02 09:56:11 +01:00
2026-03-10 18:22:31 +00:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-19 12:09:11 +01:00
2026-01-02 09:56:11 +01:00
2026-02-05 16:48:20 +00:00
2026-01-02 09:56:11 +01:00
2026-01-19 06:36:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-03 16:13:23 +00:00
2026-02-16 12:34:18 +01:00
2026-01-10 15:08:53 +08:00
2025-12-11 19:54:44 +01:00
2026-04-02 08:20:00 +01:00
2026-01-19 06:36:11 +01:00
2026-01-02 09:56:11 +01:00
2026-04-02 13:59:55 +01:00
2026-01-02 09:56:11 +01:00
2026-03-20 09:39:30 +00:00
2026-04-02 15:50:16 +02:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-19 06:36:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-04 03:59:15 -05:00
2026-04-02 09:58:44 +02:00
2026-03-10 13:38:23 -04:00
2026-01-02 09:56:11 +01:00
2026-04-08 07:50:45 +02:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-04-01 12:51:16 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-04-02 16:51:09 -04:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-04 03:59:15 -05:00
2026-01-02 09:56:11 +01:00
2026-03-21 12:44:15 +01:00
2026-02-05 16:48:20 +00:00
2026-03-10 17:47:55 +00:00
2025-09-27 21:18:42 +01:00
2026-01-07 15:21:52 +00:00
2026-01-02 09:56:11 +01:00
2025-10-16 14:59:42 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-02 11:21:51 +01:00
2026-01-19 06:36:11 +01:00
2026-03-04 11:59:39 +00:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-03-14 22:56:10 +00:00
2026-01-02 09:56:11 +01:00
2026-02-13 09:06:31 +00:00
2026-04-08 07:50:45 +02:00
2026-01-02 09:56:11 +01:00
2026-03-04 03:59:15 -05:00
2026-03-04 03:59:15 -05:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-02 09:56:11 +01:00
2026-01-19 06:36:11 +01:00
2026-04-02 14:42:19 +01:00