c++: cp_tree_equal cleanups
authorNathan Sidwell <nathan@acm.org>
Tue, 3 Nov 2020 13:11:42 +0000 (05:11 -0800)
committerNathan Sidwell <nathan@acm.org>
Tue, 3 Nov 2020 13:16:31 +0000 (05:16 -0800)
commit444655b6f02605ae936426a14ba527795795587b
treebf5cf729d143791165173465696e84df089dda42
parentfbc3f847438f2297c31d9eaaec5e662192acb779
c++: cp_tree_equal cleanups

A couple of small fixes.  I noticed bind_template_template_parms was
not marking the parm a template parm (this broke some module
handling).  Debugging CALL_EXPR comparisons led me to refactor
cp_tree_equal's CALL_EXPR code (and my recent fix to debug printing of
same).  Finally TREE_VECS are best compared by comp_template_args.  I
recall that last piece being a left over from fixes during gcc-10.
I've been using it on the modules branch since then.

gcc/cp/
* tree.c (bind_template_template_parm): Mark the parm as a
template parm.
(cp_tree_equal): Refactor CALL_EXPR.  Use comp_template_args for
TREE_VECs.
gcc/cp/tree.c