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

--- Comment #12 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Slightly reduced:
void foo (char, long double *, int);

long double
bar (bool x)
{
  long double a;
  if (x)
    foo (0, &a, 1);
  return a;
}

template <class>
struct D {};

struct C {
  template <class T>
  D <T> baz (bool x) const {
    D<T> c;
    bar (x);
    return c;
  }
};

template D <double>
C::baz (bool) const;

Reply via email to