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

--- Comment #9 from Sam James <sjames at gcc dot gnu.org> ---
```
int a;
void b();
struct e {
  int ab;
  int d() { return ab; }
};
struct f {
  e g;
  auto d() { return g.d(); }
};
template <typename h> struct i : h {
  f j;
  template <typename ac> int ad(ac) {
    unsigned char k = j.d();
    a = __builtin_ia32_bzhi_di(1, k);
    b();
    return a;
  }
};
struct l {
  void af();
};
template <template <typename> class, typename al> void am(al m) { m(1); }
template <typename> using ar = int;
struct n {
  void ap() {
    at.af();
    am<ar>([&](auto... au) { at.ad(au...); });
  }
  i<l> at;
};
struct aw {
  aw() {
    n b;
    b.ap();
  }
} c;
```

I'll submit that when I get a chance.

Reply via email to