1  /* Make sure that we don't free any temp stack slots associated with
       2     initializing marker before we're finished with them.  */
       3  
       4  extern void abort();
       5  
       6  typedef struct { short v16; } __attribute__((packed)) jint16_t;
       7  
       8  struct node {
       9    jint16_t magic;
      10    jint16_t nodetype;
      11    int totlen;
      12  } __attribute__((packed));
      13  
      14  struct node node, *node_p = &node;
      15  
      16  int main()
      17  {
      18    struct node marker = {
      19      .magic = (jint16_t) {0x1985},
      20      .nodetype = (jint16_t) {0x2003},
      21      .totlen = node_p->totlen
      22    };
      23    if (marker.magic.v16 != 0x1985)
      24      abort();
      25    if (marker.nodetype.v16 != 0x2003)
      26      abort();
      27    return 0;
      28  }