File: test47.ci

package info (click to toggle)
clif 0.90.2-3
  • links: PTS
  • area: main
  • in suites: slink
  • size: 4,336 kB
  • ctags: 2,815
  • sloc: ansic: 29,914; yacc: 4,338; lex: 644; makefile: 373; sh: 48
file content (39 lines) | stat: -rw-r--r-- 707 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
union a {
  int a;
  double b;
} z;

union a b;
/*printf ("union a=%d\n", sizeof(b));*/
b.a = 1;
printf ("union a a=%d\n", b.a);
/*cprintf (1, "union a b=%g\n", b.b);*/
b.b = 2.4;
/*cprintf (1, "union a a=%d\n", b.a);*/
printf ("union a b=%g\n", b.b);

struct d {
  int a;
  double b;
} c;

union b {
  int a;
  struct d b;
} d;

/*printf ("union b=%d\n", sizeof (d));
printf ("struct d=%d\n", sizeof (c));*/
d.a = 1;
printf ("union b a=%d\n", d.a);
/*cprintf (1, "union b struct d a=%d\n", d.b.a);
cprintf (1, "union b struct d b=%g\n", d.b.b);*/

d.b.a = 2;
d.b.b = 3.4;

/*cprintf (1, "union b a=%d\n", d.a);*/
printf ("union b struct d a=%d\n", d.b.a);
printf ("union b struct d b=%g\n", d.b.b);

exit;