1  /* PR c/83801 */
       2  /* { dg-do compile } */
       3  /* { dg-options "-O2 -fdump-tree-original" } */
       4  
       5  static const char a[] = "01234567890123456789012345678901234567890123456789012345678901234567890123456789";
       6  static const char b = a[27];
       7  struct S { const char c[30]; const char d[30]; };
       8  static const struct S e[] = { { "01234567890123456789012345678", "90123456789012345678901234567" },
       9                                { "89012345678901234567890123456", "78901234567890123456789012345" } };
      10  static const char f = e[1].c[4];
      11  
      12  char
      13  foo (int i)
      14  {
      15    return a[i];
      16  }
      17  
      18  char
      19  bar (int i)
      20  {
      21    return e[0].d[i];
      22  }
      23  
      24  /* { dg-final { scan-tree-dump {a\[i]} "original" } } */
      25  /* { dg-final { scan-tree-dump-not {"01234567890123456789012345678901234567890123456789012345678901234567890123456789"\[i]} "original" } } */
      26  /* { dg-final { scan-tree-dump {e\[0]\.d\[i]} "original" } } */
      27  /* { dg-final { scan-tree-dump-not {"90123456789012345678901234567"\[i]} "original" } } */