[pushed] c++: fix cxx_print_type's template-info dumping

Message ID 20230919184016.1059841-1-ppalka@redhat.com
State Unresolved
Headers
Series [pushed] c++: fix cxx_print_type's template-info dumping |

Checks

Context Check Description
snail/gcc-patch-check warning Git am fail log

Commit Message

Patrick Palka Sept. 19, 2023, 6:40 p.m. UTC
  Tested on x86_64-pc-linux-gnu, pushed to trunk as obvious.

-- >8 --

Unlike DECL_TEMPLATE_INFO which is stored in DECL_LANG_SPECIFIC,
TYPE_TEMPLATE_INFO isn't stored in TYPE_LANG_SPECIFIC, so we don't
need to check for both in cxx_print_type.  This fixes dumping the
template-info of ENUMERAL_TYPE and BOUND_TEMPLATE_TEMPLATE_PARM,
which seem to never have TYPE_LANG_SPECIFIC.

gcc/cp/ChangeLog:

	* ptree.cc (cxx_print_type): Remove TYPE_LANG_SPECIFIC
	test guarding TYPE_TEMPLATE_INFO.
---
 gcc/cp/ptree.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
  

Patch

diff --git a/gcc/cp/ptree.cc b/gcc/cp/ptree.cc
index b4001486701..32c5b5280dc 100644
--- a/gcc/cp/ptree.cc
+++ b/gcc/cp/ptree.cc
@@ -141,9 +141,8 @@  cxx_print_decl (FILE *file, tree node, int indent)
 void
 cxx_print_type (FILE *file, tree node, int indent)
 {
-  if (TYPE_LANG_SPECIFIC (node)
-      && TYPE_TEMPLATE_INFO (node))
-    print_node (file, "template-info", TYPE_TEMPLATE_INFO (node), indent + 4);
+  if (tree ti = TYPE_TEMPLATE_INFO (node))
+    print_node (file, "template-info", ti, indent + 4);
 
   switch (TREE_CODE (node))
     {