https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
Tobias Burnus <burnus at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |burnus at gcc dot gnu.org --- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> --- (In reply to Martin Liška from comment #2) > There's a pair of functions 'g' and 'h' that are proved by IPA ICF to be > equal Side remark: In terms of the Fortran standard, g() and h() are different in two regards: g()'s "x" can alias with other variables (pointers or nonpointers with target attribute) - and g()'s "x" itself can be a NULL pointer while for f(), it can't. [Would it help to mark the argument of h() with a "nonnull" attribute?] Side remark 2: I think the test case is not fully right. g()'s call check (x) is invalid if "x" is NULL as check's "x" is neither OPTIONAL nor a POINTER. In terms of the generated code, I think this shouldn't matter in this case.