http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54270
Tobias Burnus <burnus at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED CC| |burnus at gcc dot gnu.org Resolution| |DUPLICATE --- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> 2012-08-15 12:38:21 UTC --- The actual bug is tracked at PR 54224. The problem is that TREE_USED is not set; I think that's a middle-end issue, but I might be wrong. My impression is that all front ends to not set TREE_USED for procedure calls and leave that to the middle end. (The other question is why inlining doesn't work.) gfortran since 4.8/April marks module procedures as TREE_PUBLIC() = 0 if the procedure has been explicitly marked as PRIVATE [PR52751, PR40973, PR52916]. (Ditto for module variables; in both cases exceptions exist like a C binding name or - for procedures - if they are in a PUBLIC generic interface.) Since recently [PR 54221], they are also marked as TREE_PUBLIC() = 0 if there is a "PRIVATE" statement symbol list or -fmodule-private. Regarding PR middle-end/54224, I am not quite sure whether the FE should do something or whether to leave it as ME bug. Thus, I kept PR fortran/54221 open to keep track of it. As it doesn't seem to be a true regression, I didn't flag the ME bug as regression. *** This bug has been marked as a duplicate of bug 54224 ***