OSDN Git Service

* gcc.c-torture/execute/20030224-2.c: New test.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.c-torture / execute / 20030224-2.c
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 }