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

--- Comment #12 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Sam James from comment #11)
> Created attachment 61749 [details]
> small.cxx

I think there might be some aliasing issue with char16_t and Qchar. 

```
  QChar *begin() const { return reinterpret_cast<QChar *>(d.bp()); }


  bn<char16_t> d;


bn<ag>::d :
  ag *bp() const { return bv; }
  ag *bv;



struct QChar {
  QChar(char16_t) {}
  char16_t bg;
};

```

I suspect this is true of the original code too.

Reply via email to