https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84947
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
bool
propagate_bits_across_jump_function (cgraph_edge *cs, int idx,
ipa_jump_func *jfunc,
ipcp_bits_lattice *dest_lattice)
{
...
/* For K&R C programs, ipa_get_type() could return NULL_TREE.
Avoid the transform for these cases. */
if (!parm_type)
{
if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, "Setting dest_lattice to bottom, because"
" param %i type is NULL for %s\n", idx,
cs->callee->name ());
return dest_lattice->set_to_bottom ();
}
unsigned precision = TYPE_PRECISION (parm_type);
signop sgn = TYPE_SIGN (parm_type);
those two accesses only work for INTEGRAL_TYPE_P types. So maybe
the !parm_type should be instead
if (!parm_type || !INTEGRAL_TYPE_P (parm_type))
? (with appropriate adjustment of the dump message)