]> gcc.gnu.org Git - gcc.git/commit
dump_printf: add "%C" for dumping cgraph_node *
authorDavid Malcolm <dmalcolm@redhat.com>
Thu, 8 Nov 2018 15:28:20 +0000 (15:28 +0000)
committerDavid Malcolm <dmalcolm@gcc.gnu.org>
Thu, 8 Nov 2018 15:28:20 +0000 (15:28 +0000)
commitd8010ee4560a947f690891f919db177b03581f9a
treec6bb3ddeba0c95c166a971951e837fb414559832
parent0d8f74b4cf06835a327aaef69787a4b7d9dc8e66
dump_printf: add "%C" for dumping cgraph_node *

This patch implements support for %C in dump_printf for dumping
cgraph_node *.
(I would have preferred to have a code for printing symtab_node *
and both subclasses, but there doesn't seem to be a good way for
-Wformat to handle inheritance, so, failing that, I went with
this approach).

gcc/c-family/ChangeLog:
* c-format.c (local_cgraph_node_ptr_node): New variable.
(gcc_dump_printf_char_table): Add entry for %C.
(get_pointer_to_named_type): New function, taken from the handling
code for "gimple *" from...
(init_dynamic_diag_info): ...here.  Add handling for
"cgraph_node *".
* c-format.h (T_CGRAPH_NODE): New.

gcc/ChangeLog:
* dump-context.h (ASSERT_IS_CGRAPH_NODE): New macro.
* dumpfile.c (make_item_for_dump_cgraph_node): Move to before...
(dump_pretty_printer::decode_format): Implement "%C" for
cgraph_node *.
(selftest::test_capture_of_dump_calls): Rename "where" to
"stmt_loc".  Convert test_decl to a function decl and set its
location.  Add a symbol_table_test RAII instance and a
cgraph_node, using it to test "%C" and dump_symtab_node.

gcc/testsuite/ChangeLog:
* gcc.dg/format/gcc_diag-10.c (cgraph_node): New typedef.
(test_dump): Add testing of %C.

From-SVN: r265918
gcc/ChangeLog
gcc/c-family/ChangeLog
gcc/c-family/c-format.c
gcc/c-family/c-format.h
gcc/dump-context.h
gcc/dumpfile.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/format/gcc_diag-10.c
This page took 0.064039 seconds and 5 git commands to generate.