jburnim / crest

CREST is a concolic test generation tool for C.
http://jburnim.github.io/crest/
BSD 2-Clause "Simplified" License
159 stars 50 forks source link

Prediction failed #2 #12

Open kren1 opened 7 years ago

kren1 commented 7 years ago

I've encountered another prediction failed issue, it looks very different from the other one to me. Running:

unsigned short a = 0;
unsigned char b = 1;

void main() {
  __CrestUShort(&a);
  __CrestUChar(&b);
  int ak = --b;
  a && 0;
  ak >= 2 || 0;
}

with the latest crest(3e5ececd379) gives me:

Iteration 0 (0s): covered 0 branches [0 reach funs, 0 reach branches].
Iteration 1 (0s): covered 2 branches [1 reach funs, 4 reach branches].
Iteration 2 (0s): covered 3 branches [1 reach funs, 4 reach branches].
Iteration 3 (0s): covered 3 branches [1 reach funs, 4 reach branches].
Prediction failed!
Iteration 4 (0s): covered 3 branches [1 reach funs, 4 reach branches].
Prediction failed!

Any insight into this bug would be greatly appreciated.