https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98744

--- Comment #2 from Martin Jambor <jamborm at gcc dot gnu.org> ---
That cannot be the problem.  IPA-SRA re-creates the call statements
and builds them with gimple_build_call_vec (callee_decl, vargs); where
calle_decl is the new function which has had its type adjusted and
everything.  Indeed, IPA-SRA does not remove an argument here, it just
tries to push one dereference to the caller and the printed type is
correct.

Even in the release_ssa dump, pre-IPA, the constructor has two
parameters but is called with just one.  At the moment it looks to me
that IPA-SRA makes an already invalid IL somehow a bit worse.  Indeed,
in the revision before 424deca72b6 the constructor in the release_ssa
dump only has one parameter.

Jason, is it possible a wrong constructor is emitted to the IL?

(And note that tree-ssa-uninit.c should not ICE either, because with
K&R C input or malformed LTO we can have weird mismatches too.)

Reply via email to