diff options
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.dg/builtin-assume-aligned-2.c')
-rw-r--r-- | gcc-4.9/gcc/testsuite/gcc.dg/builtin-assume-aligned-2.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.dg/builtin-assume-aligned-2.c b/gcc-4.9/gcc/testsuite/gcc.dg/builtin-assume-aligned-2.c new file mode 100644 index 000000000..5b0de5720 --- /dev/null +++ b/gcc-4.9/gcc/testsuite/gcc.dg/builtin-assume-aligned-2.c @@ -0,0 +1,18 @@ +/* { dg-do compile } */ + +double *bar (void); + +void +foo (double *ptr, int i) +{ + double *a = __builtin_assume_aligned (ptr, 16, 8, 7); /* { dg-error "too many arguments to function" } */ + double *b = __builtin_assume_aligned (bar (), 16); + double *c = __builtin_assume_aligned (bar (), 16, 8); + double *d = __builtin_assume_aligned (ptr, i, ptr); /* { dg-error "non-integer argument 3 in call to function" } */ + double *e = __builtin_assume_aligned (ptr, i, *ptr); /* { dg-error "non-integer argument 3 in call to function" } */ + *a = 0.0; + *b = 0.0; + *c = 0.0; + *d = 0.0; + *e = 0.0; +} |