1  /* { dg-require-effective-target untyped_assembly } */
       2  extern void abort(void);
       3  			 
       4  typedef struct
       5  {
       6    unsigned int unchanging : 1;
       7  } struc, *rtx;
       8  
       9  rtx dummy ( int *a, rtx *b)
      10  {
      11    *a = 1;
      12    *b = (rtx)7;
      13    return (rtx)1;
      14  }
      15  
      16  void bogus (insn, thread, delay_list)
      17       rtx insn;
      18       rtx thread;
      19       rtx delay_list;
      20  {
      21    rtx new_thread;
      22    int must_annul;
      23  
      24    delay_list = dummy ( &must_annul, &new_thread);
      25    if (delay_list == 0 &&  new_thread )
      26      {
      27        thread = new_thread;
      28      }
      29    if (delay_list && must_annul)
      30      insn->unchanging = 1;
      31    if (new_thread != thread )
      32      abort();
      33  }
      34  
      35  int main()
      36  {
      37    struc baz;
      38    bogus (&baz, (rtx)7, 0);
      39    exit(0);
      40    return 0;
      41  }