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

--- Comment #1 from David Binderman <dcb314 at hotmail dot com> ---
Here is the reduced code

struct b {
  virtual ~b();
};
struct c {
  virtual unsigned d(unsigned, unsigned);
  virtual unsigned f(unsigned, unsigned, unsigned, unsigned) = 0;
};
template <class e> class i : e, c {
public:
  float *g[e::h];
  unsigned d(unsigned k, unsigned) {
    bool j;
    j ? f(k, k, 1, 1) : 0;
  }
};
struct l : b {
  enum { h };
};
class n : i<l> {
  unsigned f(unsigned, unsigned, unsigned, unsigned) {
    float *m = g[0];
    float a[512];
    m[0] = a[0];
  }
  virtual void o();
};
void n::o() {}

Reply via email to