http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49091

--- Comment #2 from Jan Hubicka <hubicka at gcc dot gnu.org> 2011-06-04 
13:56:00 UTC ---
OK, the problem is K&R style definition:
int ssetup(in, out, port)
int *in, *out;
int *port;
{
        struct hostent *hp;
        struct servent *sp;

        struct sockaddr_in myaddr_in;
        struct sockaddr_in peeraddr_in;


later used as:
int server_sock_setup(in, out)
int *in, *out;
{
   return(ssetup(in, out));
}

that is bug, too.

I assumed that here we won't inline because of our type check mismatch.
edge->call_stmt_cannot_inline_p is 0. This is because gimple_check_call_args
actually allows decl to have more arguments than caller.
Well, will fortify this at ipa-analysis side.

Honza

Reply via email to