diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/990531-1.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/990531-1.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/990531-1.c b/gcc/testsuite/gcc.c-torture/execute/990531-1.c new file mode 100644 index 000000000..d5501d3a7 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/990531-1.c @@ -0,0 +1,23 @@ + unsigned long bad(int reg, unsigned long inWord) + { + union { + unsigned long word; + unsigned char byte[4]; + } data; + + data.word = inWord; + data.byte[reg] = 0; + + return data.word; + } + +main() +{ + /* XXX This test could be generalized. */ + if (sizeof (long) != 4) + exit (0); + + if (bad (0, 0xdeadbeef) == 0xdeadbeef) + abort (); + exit (0); +} |