(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
gomp/
pr87887-2.c
       1  /* PR middle-end/87887 */
       2  /* { dg-do compile { target i?86-*-* x86_64-*-* } } */
       3  /* { dg-require-effective-target vect_simd_clones } */
       4  
       5  struct S { int n; };
       6  #pragma omp declare simd
       7  struct S
       8  foo (int x)		/* { dg-warning "unsupported return type 'struct S' for simd" } */
       9  {
      10    return (struct S) { x };
      11  }
      12  
      13  #pragma omp declare simd
      14  int
      15  bar (struct S x)	/* { dg-warning "unsupported argument type 'struct S' for simd" } */
      16  {
      17    return x.n;
      18  }
      19  
      20  #pragma omp declare simd uniform (x)
      21  int
      22  baz (int w, struct S x, int y)
      23  {
      24    return w + x.n + y;
      25  }