sanopt: Avoid crash on anonymous parameter [PR93436]

Here we crash when using -fsanitize=address -fdump-tree-sanopt because
the dumping code uses IDENTIFIER_POINTER on a null DECL_NAME.  Instead,
we can print "<anonymous>" in such a case.  Or we could avoid printing
that diagnostic altogether.

2020-01-26  Marek Polacek  <polacek@redhat.com>

	PR tree-optimization/93436
	* sanopt.c (sanitize_rewrite_addressable_params): Avoid crash on
	null DECL_NAME.
This commit is contained in:
Marek Polacek 2020-01-25 19:02:11 -05:00
parent 8022264265
commit ab6cd364ed
2 changed files with 12 additions and 3 deletions

View file

@ -1,3 +1,9 @@
2020-01-26 Marek Polacek <polacek@redhat.com>
PR tree-optimization/93436
* sanopt.c (sanitize_rewrite_addressable_params): Avoid crash on
null DECL_NAME.
2020-01-26 Jason Merrill <jason@redhat.com>
PR c++/92601

View file

@ -1174,9 +1174,12 @@ sanitize_rewrite_addressable_params (function *fun)
continue;
if (dump_file)
fprintf (dump_file,
"Rewriting parameter whose address is taken: %s\n",
IDENTIFIER_POINTER (DECL_NAME (arg)));
{
fprintf (dump_file,
"Rewriting parameter whose address is taken: ");
print_generic_expr (dump_file, arg, dump_flags);
fputc ('\n', dump_file);
}
SET_DECL_PT_UID (var, DECL_PT_UID (arg));