(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
torture/
pr45623.c
       1  /* { dg-do run } */
       2  /* { dg-options "-std=c99" } */
       3  
       4  #include <stdint.h>
       5  
       6  extern void abort (void);
       7  
       8  char *s1 = "foo";
       9  char *s2 = "bar";
      10  
      11  char **ss1 = &s1;
      12  
      13  typedef union jsval_layout
      14  {
      15      uint64_t asBits;
      16      char **ptr;
      17  } jsval_layout;
      18  
      19  int main()
      20  {
      21    jsval_layout l, m;
      22    l.ptr = ss1;
      23    m.asBits = l.asBits;
      24    char ** data = m.ptr;
      25    *data = s2;
      26    if (s1 != s2)
      27      abort ();
      28    return 0;
      29  }