xref: /freebsd/contrib/unifdef/tests/if5-k.expout (revision fb3ef04d2028110f06d68b09009f1f2ca0f4128e)
1*fb3ef04dSDag-Erling Smørgrav/* Copyright 2004, 2008 Bob Proulx <bob@proulx.com>
2*fb3ef04dSDag-Erling SmørgravDistributed under the two-clause BSD licence;
3*fb3ef04dSDag-Erling Smørgravsee the COPYING file for details. */
4*fb3ef04dSDag-Erling Smørgrav
5*fb3ef04dSDag-Erling Smørgrav#include <stdio.h>
6*fb3ef04dSDag-Erling Smørgrav#include <stdlib.h>
7*fb3ef04dSDag-Erling Smørgrav
8*fb3ef04dSDag-Erling Smørgrav/* This code is passed through. "#if 0 else" */
9*fb3ef04dSDag-Erling Smørgrav
10*fb3ef04dSDag-Erling Smørgrav/* This code is passed through. "#if 1 then" */
11*fb3ef04dSDag-Erling Smørgrav
12*fb3ef04dSDag-Erling Smørgrav#if FOOB == 42
13*fb3ef04dSDag-Erling Smørgravint foo1() { return 0; }
14*fb3ef04dSDag-Erling Smørgrav#else
15*fb3ef04dSDag-Erling Smørgrav#error FOOB not 42
16*fb3ef04dSDag-Erling Smørgrav#endif
17*fb3ef04dSDag-Erling Smørgrav
18*fb3ef04dSDag-Erling Smørgrav#if FOOB != 42
19*fb3ef04dSDag-Erling Smørgrav#error FOO is 2
20*fb3ef04dSDag-Erling Smørgrav#else
21*fb3ef04dSDag-Erling Smørgravint foo2() { return 0; }
22*fb3ef04dSDag-Erling Smørgrav#endif
23*fb3ef04dSDag-Erling Smørgrav
24*fb3ef04dSDag-Erling Smørgrav#if FOOB == 42 || FOO == 1
25*fb3ef04dSDag-Erling Smørgravintx foo3() { return 0; }
26*fb3ef04dSDag-Erling Smørgrav#else
27*fb3ef04dSDag-Erling Smørgrav#error FOO not 1 or BAR not 1
28*fb3ef04dSDag-Erling Smørgrav#endif
29*fb3ef04dSDag-Erling Smørgrav
30*fb3ef04dSDag-Erling Smørgrav#if FOOB != 42 && FOO != 1
31*fb3ef04dSDag-Erling Smørgrav#error FOOB not 42 and FOO not 1
32*fb3ef04dSDag-Erling Smørgrav#else
33*fb3ef04dSDag-Erling Smørgravint foo4() { return 0; }
34*fb3ef04dSDag-Erling Smørgrav#endif
35*fb3ef04dSDag-Erling Smørgrav
36*fb3ef04dSDag-Erling Smørgrav#if FOOB == 42 || FOO != 1
37*fb3ef04dSDag-Erling Smørgravint foo5() { return 0; }
38*fb3ef04dSDag-Erling Smørgrav#else
39*fb3ef04dSDag-Erling Smørgrav#error FOOB is 42 or FOO is not 1
40*fb3ef04dSDag-Erling Smørgrav#endif
41*fb3ef04dSDag-Erling Smørgrav
42*fb3ef04dSDag-Erling Smørgrav#if FOO != 1 || FOOB != 42
43*fb3ef04dSDag-Erling Smørgrav#error FOO is 1 or FOOB is 42
44*fb3ef04dSDag-Erling Smørgrav#else
45*fb3ef04dSDag-Erling Smørgravint foo6() { return 0; }
46*fb3ef04dSDag-Erling Smørgrav#endif
47*fb3ef04dSDag-Erling Smørgrav
48*fb3ef04dSDag-Erling Smørgravint main()
49*fb3ef04dSDag-Erling Smørgrav{
50*fb3ef04dSDag-Erling Smørgrav  foo1();
51*fb3ef04dSDag-Erling Smørgrav  foo2();
52*fb3ef04dSDag-Erling Smørgrav  foo3();
53*fb3ef04dSDag-Erling Smørgrav  foo4();
54*fb3ef04dSDag-Erling Smørgrav  foo5();
55*fb3ef04dSDag-Erling Smørgrav  foo6();
56*fb3ef04dSDag-Erling Smørgrav}
57