summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2008-01-29 19:30:05 +0000
committerEvan Cheng <evan.cheng@apple.com>2008-01-29 19:30:05 +0000
commitc748412c421fe8afc774d68b56f83d6f46f9e464 (patch)
treebf273bdd7c82c45011c04702aba8fc8a943dce04 /test
parent648f880dc907faf5c05f3d79a424597b65758360 (diff)
downloadllvm-c748412c421fe8afc774d68b56f83d6f46f9e464.tar.gz
llvm-c748412c421fe8afc774d68b56f83d6f46f9e464.tar.bz2
llvm-c748412c421fe8afc774d68b56f83d6f46f9e464.tar.xz
Update this test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46526 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CFrontend/2008-01-25-ZeroSizedAggregate.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/test/CFrontend/2008-01-25-ZeroSizedAggregate.c b/test/CFrontend/2008-01-25-ZeroSizedAggregate.c
index 4e04e5dfbc..643caffb6d 100644
--- a/test/CFrontend/2008-01-25-ZeroSizedAggregate.c
+++ b/test/CFrontend/2008-01-25-ZeroSizedAggregate.c
@@ -12,8 +12,7 @@ void test2411(void) {
checkx2411(a2411[0]);
}
-// A field that is an aggregates of size zero should be dropped during
-// type conversion.
+// Proper handling of zero sized fields during type conversion.
typedef unsigned long long int Tal2ullong __attribute__((aligned(2)));
struct S2525 {
Tal2ullong: 0;
@@ -29,3 +28,12 @@ struct {
char * i[5];
} data;
+// Taking address of a zero sized field.
+struct Z {};
+struct Y {
+ int i;
+ struct Z z;
+};
+void *f(struct Y *y) {
+ return &y->z;
+}