diff options
Diffstat (limited to 'test/FrontendC/2008-01-25-ZeroSizedAggregate.c')
-rw-r--r-- | test/FrontendC/2008-01-25-ZeroSizedAggregate.c | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/test/FrontendC/2008-01-25-ZeroSizedAggregate.c b/test/FrontendC/2008-01-25-ZeroSizedAggregate.c deleted file mode 100644 index 643caff..0000000 --- a/test/FrontendC/2008-01-25-ZeroSizedAggregate.c +++ /dev/null @@ -1,39 +0,0 @@ -// RUN: %llvmgcc %s -S -o - - -// Aggregates of size zero should be dropped from argument list. -typedef long int Tlong; -struct S2411 { - __attribute__((aligned)) Tlong:0; -}; - -extern struct S2411 a2411[5]; -extern void checkx2411(struct S2411); -void test2411(void) { - checkx2411(a2411[0]); -} - -// Proper handling of zero sized fields during type conversion. -typedef unsigned long long int Tal2ullong __attribute__((aligned(2))); -struct S2525 { - Tal2ullong: 0; - struct { - } e; -}; -struct S2525 s2525; - -struct { - signed char f; - char :0; - struct{}h; - 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; -} |