Open jimgrundy opened 2 years ago
I don't know what the model of the user to use here is. Someone just trying out CBMC without any source code at all is probably going to want to invoke goto-cc and cbmc directly as in the tutorials on little examples. Someone with preexisting source code is probably going to have a directory with source code.
Twice now I have settled down to write a collection of examples to explore CBMC performance issues starting from a blank slate. I've wanted the convenience of the starter-kit's make system and I've kind of had to hack my way past the initial setup expectations.
Suppose I'm playing around with CBMC and starter-kit for perhaps the first time, evaluating it. Probably what I want to do is write and run a kind of "hello-world" type program, maybe, say, find the max of two numbers. In this case I probably haven't got a whole directory structure of source set up. I just want to instantiate the makefile templates, then go in and edit the a source file in that directory and go. Maybe even put my hello-world function in the harness.
But, if I try to avoid giving a source file location for the function I want to prove I get this:
I think I would want a different user experience for people just looking to try out CBMC.