I frequently need to look at overload sets, and debug_node spews more
information than is useful, most of the time. Here's a dumper for
overloads, that just tells you their full name and where they came from.
gcc/cp
* ptree.c (debug_overload): New.
{
debug_tree (node.get_value());
}
+
+DEBUG_FUNCTION void
+debug_overload (tree node)
+{
+ FILE *file = stdout;
+
+ for (lkp_iterator iter (node); iter; ++iter)
+ {
+ tree decl = *iter;
+ auto xloc = expand_location (DECL_SOURCE_LOCATION (decl));
+ auto fullname = decl_as_string (decl, 0);
+
+ fprintf (file, "%p: %s:%d:%d \"%s\"\n", (void *)decl,
+ xloc.file, xloc.line, xloc.column, fullname);
+ }
+}