https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97858

--- Comment #9 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
That said, can't reproduce with simplified:
void
foo (char *str, char *tail, ...)
{
  __builtin_va_list ap;
  if (tail)
    __builtin_va_start (ap, tail);
  for (int first = 1; str; first = 0)
    {
      *str = ' ';
      if (first)
        str = tail;
      else
        str = __builtin_va_arg (ap, char *);
    }
  if (tail)
    __builtin_va_end (ap);
}

Reply via email to