1void assert (a) {if (a != 1) abort ();}
2
3int h1 (int *p) {return *p & 255;}
4
5void p1 () {int a = 0x01020304; assert (h1 (&a) == 0x04);}
6
7
8int h2 (a) {return a > 0;}
9
10p2 () {assert (h2 (1));}
11
12h3 (int *p)
13{
14  *p |= 255;
15}
16
17p3 ()
18{
19  int *p;
20  h3 (p);
21}
22
23main ()
24{
25  p1 ();
26  p2 ();
27  p3 ();
28  puts ("Compiler test passed.");
29}
30