1 #include <stdio.h>
2 
3 struct foo {
4 	int	x;
5 	char	*y;
6 	int	z;
7 };
8 
9 void
print(struct foo f,int dummy,int dummy2)10 print(struct foo f, int dummy, int dummy2) {
11 	printf("%d, %s, %d   [%d,%d]\n", f.x, f.y, f.z, dummy, dummy2);
12 }
13 
14 
15 int
main()16 main() {
17 	struct foo	f = { 123, "hello", 456 };
18 	struct foo	f2 = { 456, "world", 123 };
19 	struct foo	*fp1 = &f;;
20 	struct foo	*fp2 = NULL;
21 
22 	sync();
23 	print(fp2? *fp2: f2, 128, 444);
24 	sync();
25 	print(fp1? *fp1: f2, 18, 44);
26 	printf("%s\n", (fp1? *fp1: f2).y);
27 }
28 
29