xref: /llvm-project/llvm/test/tools/llvm-cov/Inputs/mcdc-general.cpp (revision ae36790be4a2a6c9dc8900f659c861647cab66d5)
18ecbb040SAlan Phipps #include <stdio.h>
28ecbb040SAlan Phipps 
38ecbb040SAlan Phipps 
4*ae36790bSNAKAMURA Takumi 
5*ae36790bSNAKAMURA Takumi 
6*ae36790bSNAKAMURA Takumi 
7*ae36790bSNAKAMURA Takumi 
8*ae36790bSNAKAMURA Takumi 
98ecbb040SAlan Phipps 
test(bool a,bool b,bool c,bool d)108ecbb040SAlan Phipps void test(bool a, bool b, bool c, bool d) {
118ecbb040SAlan Phipps 
128ecbb040SAlan Phipps   if ((a && b) || (c && d))
138ecbb040SAlan Phipps     printf("test1 decision true\n");
148ecbb040SAlan Phipps 
158ecbb040SAlan Phipps   if (b && c) if (a && d)
168ecbb040SAlan Phipps     printf("test2 decision true\n");
178ecbb040SAlan Phipps 
188ecbb040SAlan Phipps   if ((c && d) &&
198ecbb040SAlan Phipps       (a && b))
208ecbb040SAlan Phipps     printf("test3 decision true\n");
218ecbb040SAlan Phipps }
228ecbb040SAlan Phipps 
main()238ecbb040SAlan Phipps int main()
248ecbb040SAlan Phipps {
258ecbb040SAlan Phipps     test(false,false,false,false);
268ecbb040SAlan Phipps     test(true,false,true,false);
278ecbb040SAlan Phipps     test(true,false,true,true);
288ecbb040SAlan Phipps     test(true,true,false,false);
298ecbb040SAlan Phipps 
308ecbb040SAlan Phipps     test(true,false,false,false);
318ecbb040SAlan Phipps     test(true,true,true,true);
328ecbb040SAlan Phipps     test(false,true,true,false);
338ecbb040SAlan Phipps 
34*ae36790bSNAKAMURA Takumi     (void)0;
358ecbb040SAlan Phipps     return 0;
368ecbb040SAlan Phipps }
37