Hello,

I am trying to use the klee symbolic file system to explore all paths in a 
simple program:

char buf[10];
FILE * file = fopen(argv[1], "r");

if (file != NULL) {
   fread(buf, sizeof(char), 1, file);
   if (buf[0] == 'a') printf("path 0\n");
   else printf("path 1\n");
}
else printf("path 2\n");

I invoked klee with --libc=uclibc --posix-runtime --init-env prog.bc --sym-arg 
1 
and it explored 3 paths: path 1, and path 2 for 2 times.  I am wondering why 
path 0 is not explored in this case?  I thought buf would be symbolic given 
that 
it was read from a symbolic file?

Thanks,
Alvin

Reply via email to