Go to file
Kareem Khazem c9144dca3d [docs 1/5] Port existing HTML manual to doxygen
* The existing HTML documentation under doc/html-manual has been
  converted to Markdown. This was done automatically using Pandoc, plus
  some manual work to give identifiers to sections and changing internal
  links to point to those sections with \ref.

* The Doxygen front page now contains some content: a link to the
  doxygen-ated HTML manual, and a note about the API documentation. The
  intention here is that the entire Doxygen site could be hosted
  publicly, serving both users of and contributors to CBMC from a single
  site.

* The doxyfile is updated to enable these changes.
2017-07-10 12:42:37 +01:00
.githooks Make the pre-commit hook report non-temporary path names (#477) 2017-02-02 20:39:09 +00:00
doc [docs 1/5] Port existing HTML manual to doxygen 2017-07-10 12:42:37 +01:00
pkg/arch Add CBMC package build file for Arch Linux 2017-04-26 16:29:00 +01:00
regression Merge pull request #988 from tautschnig/fix-unwind-count 2017-07-04 18:01:15 +01:00
scripts Fix removal of first component 2017-06-28 11:25:07 +02:00
src [docs 1/5] Port existing HTML manual to doxygen 2017-07-10 12:42:37 +01:00
unit Merge pull request #927 from NathanJPhillips/bugfix/mini_bdd-operators 2017-05-17 10:52:03 +01:00
.editorconfig Don't remove trailing spaces from patch files 2016-11-29 17:26:59 +00:00
.gitattributes added test.desc as text 2016-08-15 12:35:10 +01:00
.gitignore Updated doxyfile to a modern version 2017-06-30 19:39:42 +01:00
.travis.yml Updated Travis to catch warnings in unit tests 2017-05-16 17:38:15 +01:00
CHANGELOG dump-c: Replace --use-system-headers by --no-system-headers 2017-07-03 15:24:36 +01:00
CODING_STANDARD Get the linter to check for assertions and give a deprecated warning. 2017-06-13 16:12:12 +01:00
COMPILING GCC 6 is no longer required 2017-05-22 17:35:10 +01:00
LICENSE update year 2016-09-05 17:05:55 +01:00
README.md Adding build icon for AppVeyor 2017-04-07 14:04:23 +01:00
appveyor.yml [goto-cc] Add support for ARM-enabling flags 2017-05-23 14:23:43 +01:00

README.md

Build Status Build Status

CProver Wiki

About

CBMC is a Bounded Model Checker for C and C++ programs. It supports C89, C99, most of C11 and most compiler extensions provided by gcc and Visual Studio. It also supports SystemC using Scoot. It allows verifying array bounds (buffer overflows), pointer safety, exceptions and user-specified assertions. Furthermore, it can check C and C++ for consistency with other languages, such as Verilog. The verification is performed by unwinding the loops in the program and passing the resulting equation to a decision procedure.

For full information see cprover.org.

License

4-clause BSD license, see LICENSE file.