Projects / CScout


CScout is a source code analyzer and refactoring browser for collections of C programs. It can process workspaces of multiple projects, mapping the complexity introduced by the C preprocessor back into the original C source code files. CScout performs an analysis of C source code that is more detailed and accurate than current compilers and linkers, as it takes into account the identifier scopes introduced by the C preprocessor and the C language proper scopes and namespaces.

Operating Systems

Recent releases

  •  08 Jul 2009 11:16

    Release Notes: This version provides three new features. A new call graph for functions now shows a function in context with all the paths from its callers and all called functions. When saving refactored code, CScout can verify that the renamed identifiers do not clash with other existing identifiers. A new function argument refactorings page can be used to review, change, and deactivate function argument refactorings. Finally, this version optimizes file handling during the post-processing phase, makes ccmake work with ccache, and corrects a few bugs and deviations from the C standard.

    •  05 Dec 2008 19:36

      Release Notes: This version adds support for the display of graph files in PDF and PNG format, as well as options for specifying graph, node, and edge properties to dot. In addition, the workspace compiler now deals correctly with scoped definitions for files, and yacc terminal symbols can be unified with the corresponding macros. Finally, this version corrects extraneous line spacing in source code listings of files containing carriage returns, fixes the display of graphs with empty nodes, and corrects the handling of identifiers declaring a function at an inner scope with no storage-class specifier.

      •  17 Jul 2008 17:41

        Release Notes: This version adds support for function argument refactoring. Furthermore, a new option controls the depth of function and macro call graphs, which are now fully browsable in SVG-enabled browsers. In addition, the Web front-end provides support for hand-editing of files, source code directory browsing, and functionality to interactively explore the tree of a function's calling and called functions. Finally, the processing engine includes support for gcc's include_next directive and for the preprocessor conditionals within macro invocations extension.

        •  09 Apr 2008 17:23

          Release Notes: This version calculates many new file and function-related metrics to assist in the evaluation of the code's maintainability. A couple of gcc extensions have been added. Support for various Microsoft C extensions now allows CScout to process more Microsoft-platform C code, like the complete Windows Research Kernel (WRK). Finally, this version fixes some small language-related corner cases.

          •  01 Oct 2006 19:49

            Release Notes: This version contains more than 40 enhancements and bugfixes. It now process the entire 2.6 Linux kernel. A new accompanying command can automatically generate CScout processing scripts by monitoring a project's build process. This release detects identical files in different locations, and displays the call path from one function to another. Finally, this version also adds numerous C99 and gcc extensions.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.