summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZhongxing Xu <xuzhongxing@gmail.com>2009-04-28 13:52:13 +0000
committerZhongxing Xu <xuzhongxing@gmail.com>2009-04-28 13:52:13 +0000
commitc58e785c33b5d9d1f8c21760de9cf1f1bc5d983c (patch)
tree7caad9ce3b1540592b103d22172bc5dfc29be809
parent6fd644a6ab2268a76dfa1cfbf6d293ff209cabc7 (diff)
downloadclang-c58e785c33b5d9d1f8c21760de9cf1f1bc5d983c.tar.gz
Add test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70294 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/Analysis/casts.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/Analysis/casts.c b/test/Analysis/casts.c
new file mode 100644
index 0000000000..bea63ffa25
--- /dev/null
+++ b/test/Analysis/casts.c
@@ -0,0 +1,18 @@
+struct sockaddr_storage {
+ int d;
+};
+
+struct sockaddr {
+ int sa_family;
+};
+
+void f(int sock) {
+ struct sockaddr_storage storage;
+ struct sockaddr* sockaddr = (struct sockaddr*)&storage;
+ socklen_t addrlen = sizeof(storage);
+ getsockname(sock, sockaddr, &addrlen);
+ switch (sockaddr->sa_family) { // no-warning
+ default:
+ ;
+ }
+}