aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/c-c++-common/gomp/udr-1.c
blob: 7c50ff6f9b747dbf3e6fe8b08607273413b43b39 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* { dg-do compile } */
/* { dg-options "-fopenmp" } */

struct S {};
void foo (void *, void *);
void bar (void *, void *);
void baz (void *);
#pragma omp declare reduction(+:struct S:foo (&omp_out, &omp_in))initializer(bar(&omp_priv, &omp_orig))

void
test (void)
{
  struct S a, b[10];
  #pragma omp parallel reduction(+:a)
    baz (&a);
}