/* PR c/71514 */ /* { dg-do compile } */ /* { dg-options "" } */ void foo () { } int a, b; void fn1 (void) { __atomic_exchange (&a, &foo, &b, __ATOMIC_RELAXED); /* { dg-error "must not be a pointer to a function" } */ } void fn2 (int n) { int arr[n]; __atomic_exchange (&a, &arr, &b, __ATOMIC_RELAXED); /* { dg-error "must be a pointer to a constant size type" } */ }