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

--- Comment #3 from Martin Liška <marxin at gcc dot gnu.org> ---
(In reply to David Binderman from comment #2)
> Here is the reduced C++ code:
> 
> typedef unsigned a;
> typedef char b;
> typedef struct {
>   a *c;
> } d;
> int e(d *f) {
>   if (f)
>     return *f->c;
> }
> a g(d *f) { return e(f); }
> typedef struct {
>   b channel;
> } h;
> b *j(d *f, int channel, b *dest) {
>   int k = 80, i;
>   for (i = 0; i < 4; ++i, k = 1)
>     if (channel & k)
>       dest[i] = g(f);
>   return dest;
> }
> void l(int, b *dest, b *m) {
>   int i;
>   for (i = 0; i < 4; ++i)
>     dest[i] = m[i];
> }
> b n(d *f) {
>   for (;;) {
>     h *o;
>     b *dest;
>     b p[4];
>     if (j(f, o->channel, p))
>       l(o->channel, dest, p);
>   }
> }

There's missing main function that will call the reduced test-case.

Reply via email to