diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/mayalias-1.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/mayalias-1.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/mayalias-1.c b/gcc/testsuite/gcc.c-torture/execute/mayalias-1.c new file mode 100644 index 000000000..ba461cae1 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/mayalias-1.c @@ -0,0 +1,21 @@ +/* Tests that the may_alias attribute works as expected. + Author: Osku Salerma <osku@iki.fi> Apr 2002. */ + +extern void abort(void); +extern void exit(int); + +typedef short __attribute__((__may_alias__)) short_a; + +int +main (void) +{ + int a = 0x12345678; + short_a *b = (short_a*) &a; + + b[1] = 0; + + if (a == 0x12345678) + abort(); + + exit(0); +} |