Your company here — click to reach over 10,000 unique daily visitors

csmatch - Man Page

a compiler wrapper that runs the Smatch analyzer in background


csmatch [--help | --print-path-to-wrap]


csmatch is a compiler wrapper that runs Smatch in background. Create a symbolic link to csmatch named as your compiler (gcc, g++, ...) and put it to your $PATH.

The following parameters are given to Smatch by default:

The following parameters are passed to Smatch from compiler’s command line:

The following file extensions are recognized as C/C++ source files:

If csmatch is installed on system, the following command activates the wrapper:

export PATH="$(csmatch --print-path-to-wrap):$PATH"



Prints basic usage information.


Prints path to the directory with symlinks to the csmatch executable.

Exit Status

csmatch propagates the exit status returned by the compiler (in case csmatch succeeds to run the compiler). The exit status returned by Smatch does not affect the resulting exit status.

Environment Variables


If set to a non-empty string, csmatch outputs the list of parameters given to Smatch to the standard output.


csmatch expects a colon-separated list of Smatch options that should be appended to command line prior to invoking Smatch. The options are appended even if they already appear in the command line and they are always appended at the end of the command line.


Please report bugs and feature requests at https://github.com/csutils/cscppc.


Written by Kamil Dudka.


Copyright (C) 2013-2022 Red Hat, Inc. Free use of this software is granted under the terms of the GNU General Public License (GPL). See the COPYING file for details.