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.
|Tags||Software Development Refactoring Quality Assurance|
|Operating Systems||POSIX Linux BSD FreeBSD Windows Windows Mac OS X Solaris|
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.
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 y.tab.h 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.
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.
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.
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.