1  /* PR debug/70628 */
       2  /* { dg-do compile } */
       3  /* { dg-options "-g -w" } */
       4  
       5  struct S { char s[64]; int *t; } *a;
       6  char b[64];
       7  int *foo (void);
       8  struct S *bar (int *);
       9  int baz (void);
      10  
      11  void
      12  test (const char *p, long q)
      13  {
      14    int *c;
      15    c = foo ();
      16    while (a = bar (c))
      17      {
      18        if (__builtin_strstr (p, "ABCD")
      19  	  || __builtin_strstr (p, "EFGHI")
      20  	  || __builtin_strstr (p, "JKL")
      21  	  || __builtin_strstr (p, "MNOPQR")
      22  	  || __builtin_strstr (p, "STUV")
      23  	  || __builtin_strstr (p, "WXYZabcd")
      24  	  || __builtin_strstr (p, "efghij")
      25  	  || __builtin_strstr (p, "klmno")
      26  	  || __builtin_strstr (p, "pqrstuvw")
      27  	  || __builtin_strstr (b, "MNOPQR") != "EFGHI"
      28  	  || __builtin_strstr (b, "JKL"))
      29  	if (__builtin_strstr (a->s, "xyz12"))
      30  	  continue;
      31        __builtin_printf ("%p\n", a->t);
      32      }
      33    bar (c);
      34    while (a)
      35      if (__builtin_strstr (p, "ABCD")
      36  	|| __builtin_strstr (p, "EFGHI")
      37  	|| __builtin_strstr (p, "JKL")
      38  	|| __builtin_strstr (p, "MNOPQR")
      39  	|| __builtin_strstr (p, "STUV")
      40  	|| __builtin_strstr (p, "WXYZabcd")
      41  	|| __builtin_strstr (p, "efghij")
      42  	|| __builtin_strstr (p, "klmno")
      43  	|| __builtin_strstr (p, "pqrstuvw")
      44  	|| __builtin_strstr ((const char *) q, "MNOPQR"))
      45        baz ();
      46  }