/* PR target/7559
   This testcase was miscompiled on x86-64 due to wrong access to the struct
   members.  */

extern void abort();

struct A {
  long x;
};

struct R {
  struct A a, b;
};

struct R R = {
  {100}, {200}
};

void f(struct R r) {
  if (r.a.x != R.a.x || r.b.x != R.b.x)
    abort();
}

int main() {
  f(R);
  return 0;
}
