casts.c revision 2fc3259293282a428f71520805720ecc9e50af9f
1// RUN: clang-cc -analyze -checker-cfref -analyzer-store=region --verify %s
2// XFAIL
3
4struct sockaddr_storage {
5  int d;
6};
7
8struct sockaddr {
9  int sa_family;
10};
11
12void f(int sock) {
13  struct sockaddr_storage storage;
14  struct sockaddr* sockaddr = (struct sockaddr*)&storage;
15  socklen_t addrlen = sizeof(storage);
16  getsockname(sock, sockaddr, &addrlen);
17  switch (sockaddr->sa_family) { // no-warning
18  default:
19    ;
20  }
21}
22