// { dg-do run }
// Copyright (C) 2001 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 17 Oct 2002 <nathan@codesourcery.com>
// PR 7209. We didn't SAVE_EXPR in the right place
char a[2][1][16]={
  {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},
  {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}};
int f() {return 0;}
char * Foo (int d)
{
  char *c1;
  c1=a[d==0 ? 0 : 1][f()];
  return c1;
}
int main ()
{
  if (Foo (0) != (void *)a)
    return 1;
  return 0;
}