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)