r265918 - in /trunk/gcc: ChangeLog c-family/Cha...

dmalcolm@gcc.gnu.org dmalcolm@gcc.gnu.org
Thu Nov 8 15:28:00 GMT 2018


Author: dmalcolm
Date: Thu Nov  8 15:28:20 2018
New Revision: 265918

URL: https://gcc.gnu.org/viewcvs?rev=265918&root=gcc&view=rev
Log:
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.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/c-family/ChangeLog
    trunk/gcc/c-family/c-format.c
    trunk/gcc/c-family/c-format.h
    trunk/gcc/dump-context.h
    trunk/gcc/dumpfile.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.dg/format/gcc_diag-10.c



More information about the Gcc-cvs mailing list