(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
vect/
pr105254.cc
/* { dg-do compile } */
/* { dg-additional-options "-fvect-cost-model=dynamic -mcpu=zeus" { target aarch64*-*-* } } */

template <typename>
struct complex;

template <>
struct complex<double> {
  void operator+= (complex r) { v_ += r.v_; }
  _Complex v_;
};

template <typename T>
void
bar (T);

void
foo (complex<double> *x)
{
  complex<double> s = {0.0};

  for (int i = 0; i < 16; ++i)
    s += x[i];

  bar<complex<double> > (s);
}