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

Markus Trippelsdorf <markus at trippelsdorf dot de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |markus at trippelsdorf dot
                   |                            |de

--- Comment #4 from Markus Trippelsdorf <markus at trippelsdorf dot de> 
2012-08-29 16:05:50 UTC ---
Somewhat reduced:

struct list_head
{
    struct list_head *prev;
};
struct sockaddr_in6
{
    int sin6_addr;
}
;
struct __kernel_sockaddr_storage
{
}
;
struct TCP_Server_Info
{
    struct list_head tcp_ses_list;
    struct __kernel_sockaddr_storage srcaddr;
};
int b;
_Bool
fn1 (int *p1)
{
    long *a = (long *) p1;
    return a[1];
}

static _Bool
fn2 (int *p1)
{
    switch (b)
    case 0:
{
    struct sockaddr_in6 *c = (struct sockaddr_in6 *) &p1;
    return fn1 (&c->sin6_addr);
    }
}

_Bool
fn3 (struct TCP_Server_Info * p1)
{
    if (fn2 ((int *) &p1->srcaddr))
        return 0;
}

Reply via email to