mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-04 01:48:54 +00:00
b21e3ca297
Version 2.2 includes numerous fixes and the following enahncements. - All query results are presented through a page selection interface. - Identical files in different locations are identified and presented in the file information page and through the file metrics. - Identifiers occuring at the same place in identical files are considered to be the same. - Facility to display the call path from one function to another. - New option to display call graphs as GIF images avoiding the need for an SVG plugin for medium-sized graphs. - The SQL backend supports four additional tables: STRINGS, COMMENTS, FILEPOS, FILECOPIES. - Allow attribute declarations to follow labels (gcc extension). - Support indirect goto labels (gcc extension). - Support (ANSI-style) nested function definitions (gcc extension). - The macro expansion algorithm follows more closely the C standard specification. - Allow braces around scalar initializers (common extension). - Macro calls in function arguments now get recorded as calls from the enclosing function, rather than the function being called. - Significantly faster file post-processing for the web and the SQL interface in large projects. - Array designators can be denoted through a range (gcc extension). - Support for symbolic operands in gcc asm constructs. - Allow __typeof__ declarations to be preceded by type qualifiers. - Correctly handle __typeof__ of objects with a storage class within typedef declarations. - The order of include file searching now matches more closely that of other compilers: absolute file names are never searched in the include file path, and non-system files are first searched relative to the directory of the including file. - Allow empty initializers and compound literals. (gcc extension) - Support for the alignof operator (gcc extension) - The equals sign following an initializer designator is optional (gcc extension). - A declaration expression can be used as the first expression of a for statement. (C99) - __typeof can also have as its argument a type name - Support for designators in compound literals. (C99)
20 lines
1019 B
Plaintext
20 lines
1019 B
Plaintext
CScout is a source code analyzer and refactoring browser for
|
|
collections of C programs. It can process workspaces of multiple
|
|
projects (we define a project as a collection of C source files
|
|
that are linked together) mapping the complexity introduced by the
|
|
C preprocessor back into the original C source code files. CScout
|
|
takes advantage of modern hardware advances (fast processors and
|
|
large memory capacities) to analyze C source code beyond the level
|
|
of detail and accuracy provided by current compilers and linkers.
|
|
The analysis CScout performs takes into account the identifier
|
|
scopes introduced by the C preprocessor and the C language proper
|
|
scopes and namespaces. CScout has already been applied on projects
|
|
ranging from tens of thousands of lines, like the FreeBSD and
|
|
Linux kernels, and the Apache web server.
|
|
|
|
This free unsupported version of CScout is distributed under the terms
|
|
of the CScout Public License, which is available in the accompanying
|
|
documentation.
|
|
|
|
WWW: http://www.spinellis.gr/cscout/
|