Что-то я не понимаю эти вот страдания по поводу того, что покрытие кода не 100%. Ну допустим ваша тулза показывает 100%. Что это значит, можно конюшни больше не чистить? А вот и нет: int f(int a, int b) {
int arr[2] = { 0, 0 };
int i = 1;
if(a == 1) i--;
if(b == 1) i--;
return arr[i];
} И что это вам дало? Покрытие по строчкам 100%, а всё падает.