More inner conditions to check
Opened this issue · 0 comments
pfultz2 commented
void f1(int a, int b) {if(a==b) if(a==b){}} // TP
void f2(int a, int b) {if(a!=b) if(a!=b){}} // TP
void f3(int a, int b) {if(a==b) if(b==a){}} // TP
void f4(int a, int b) {if(a!=b) if(b!=a){}} // TP
// values are copied in inner condition
void f5(int a, int b) {if(a!=b){ const int c=a; if(b!=c){}}} // FN
void f6(int a, int b) {if(a==b){ const int c=a; if(b==c){}}} // FN
void f7(int a, int b) {if(a!=b){ const int c=a,d=b; if(d!=c){}}} // FN
void f8(int a, int b) {if(a==b){ const int c=a,d=b; if(d==c){}}} // FN
// >=,>,< and <= operators
void f9(int a, int b) {if(a>=b) if(a>=b){}} // TP
void f10(int a, int b) {if(a>b) if(a>b){}} // TP
void f11(int a, int b) {if(a<b) if(a<b){}} // TP
void f12(int a, int b) {if(a<=b) if(a<=b){}} // TP
// for loop between
void f13(int a, int b) {if(a==b) for(int i=0; i < 42; ++i) if(a==b){}} // FN
// another conditional if-statement inbetween
void f14(int a, int b, int c) {if(a==b) if(c) if(a==b){}} // TP
// switch between
void f15(int a, int b, int c) {if(a==b) switch(c){ case 42: if(a==b){} break; }} // TP