DragonFly On-Line Manual Pages
    
    
	
Mono(cccheck)                                                    Mono(cccheck)
NAME
       cccheck - Perform static code contracts verification for CLR
       assemblies.
SYNOPSIS
       cccheck --assembly=<assembly> [options]
DESCRIPTION
       Perform static code contracts verification to find bugs and
       inconsistences between code and specification. This includes non-null,
       integer analyses.
       The assembly must have been built with the symbol CONTRACTS_FULL
       defined, otherwise the calls to the contract methods will have been
       removed by the compiler.
       Currently only Contract.Assume() and Contract.Assert() methods are
       supported. Only non-null analysis is supported, the consecutive
       analyses are in development. An error message will be shown if cccheck
       is unable to process all or some of the methods of specified assembly.
CONFIGURATION OPTIONS
       --assembly <assembly-name>
              The assembly to perform static verification.
       --debug
              Shows debug information about process of proving the assertions.
              It shows four layers of abstraction, raw layer, stack layer,
              heap layer, and substituted expression level.
       --method=<method-name-substring>
              String for finding method. It filters all methods in assembly
              where method name has this parameter as a substring.
       --help Show help for cccheck, listing configuration options.
EXAMPLES
       Suppose you have a method:
                void Method() {
                  object x = null;
                  int y = 1;
                  if (y % 2 == 1)
                    x = new object();
                  else
                    x = new string();
                 Contract.Assert(x != null); }
              After the verification the tool will have results in following
              format: "Assertion at : [Subroutine: <id> Block <blockId> PC
              <id>] :
               is (true|false|unproven|unreachable)".  (PC is a program
              counter)
AUTHOR
       Written by Alexander Chebaturkin
COPYRIGHT
       Copyright 2011 Alexander Chebaturkin.  Released under MIT license.
WEB SITE
       Visit http://www.mono-project.com for details
                                                                 Mono(cccheck)