From: Jason Merrill Date: Tue, 5 Nov 2024 15:27:39 +0000 (-0500) Subject: c++: reduce unnecessary tree_common X-Git-Tag: basepoints/gcc-16~4451 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=416a8b375589d4c2891b437d0991296ef32bde98;p=thirdparty%2Fgcc.git c++: reduce unnecessary tree_common Lewis' r15-5067 fixing the marking of TRAIT_EXPR led me to compare some other front-end type definitions to their marking in cp_common_init_ts; it seems we can change tree_common to something smaller in several cases, to match how they are marked. gcc/cp/ChangeLog: * cp-tree.h (struct ptrmem_cst): Change tree_common to tree_typed. (struct tree_trait_expr): Likewise. (struct tree_static_assert): Change tree_common to tree_base. (struct tree_argument_pack_select): Likewise. --- diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index 92d1dba6a5c9..1a0d5349749d 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -715,7 +715,7 @@ struct GTY(()) template_parm_index { }; struct GTY(()) ptrmem_cst { - struct tree_common common; + struct tree_typed typed; tree member; location_t locus; }; @@ -1378,14 +1378,14 @@ struct GTY (()) tree_deferred_noexcept { (((struct tree_static_assert *)STATIC_ASSERT_CHECK (NODE))->location) struct GTY (()) tree_static_assert { - struct tree_common common; + struct tree_base base; tree condition; tree message; location_t location; }; struct GTY (()) tree_argument_pack_select { - struct tree_common common; + struct tree_base base; tree argument_pack; int index; }; @@ -1425,7 +1425,7 @@ extern const struct cp_trait cp_traits[]; (((struct tree_trait_expr *)TRAIT_EXPR_CHECK (NODE))->locus) struct GTY (()) tree_trait_expr { - struct tree_common common; + struct tree_typed typed; tree type1; tree type2; location_t locus;