mirror of
https://github.com/gcc-mirror/gcc.git
synced 2026-05-06 14:59:39 +02:00
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>