diff options
-rw-r--r-- | test/C++Frontend/2003-05-23-TransparentUnion.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/C++Frontend/2003-05-23-TransparentUnion.c b/test/C++Frontend/2003-05-23-TransparentUnion.c new file mode 100644 index 0000000000..870826a595 --- /dev/null +++ b/test/C++Frontend/2003-05-23-TransparentUnion.c @@ -0,0 +1,20 @@ +#include <stdio.h> + +typedef union { + float *__fptr; + int *__iptr; +} UNION __attribute__ ((__transparent_union__)); + +int try(UNION U) { + return 1; +} +int test() { + int I; + float F; + return try(&I) | try(&F); +} + +int main() { + if (test()) printf("ok"); + return 0; +} |