Release 1.5, patchlevel 0 (7/4/2001)

Summary

This release of CodeSurfer introduces a new C front end, and many other major enhancements to the system.  There are too many bug fixes and other minor enhancements to list.

Major New features

  • New C front end
    CodeSurfer now uses a completely new C front end, based on the Edison Design Group (EDG) front end for C.  This offers much more complete and correct coverage of the C language than the old front end, including support for non-standard language features.
  • Stratification
    CodeSurfer now allows certain build phases to be selectively turned off. This allows users who are only interested in the lightweight representations to avoid paying the price for building the more advanced representations. The user can choose to turn off GMOD analysis, control dependence, and data dependence.
  • Better syntax coloring
    CodeSurfer now supports much better syntax coloring in file viewers.   Parts of the file that have been excluded because of the preprocessor are now colored differently.  See the File Viewer section for more details.
  • Better queries
    The query mechanism for CodeSurfer has been enhanced to allow the user to express queries both in terms of both variables, and variables that are involved at a set of program points.  The section on Query Input has full details.
  • Include file browsing
    CodeSurfer now supports browsing of dependences to and within include files, as described in the Include File Instances
  • New toolbar
    The project viewer now sports a new toolbar, which can be floating or attached to all other viewers.  See the section on the Toolbar.
  • Web browser integration
    The help system is now completely integrated with the web browser.   All windows that have a Help button now take the user directly to the appropriate section in the manual.  For more, see the Help section.
  • Structure field pointer analysis
    The pointer analysis algorithm can now take structure fields into account, so the points-to graph can be computed much more precisely than before.
  • Better slicing for programs with jumps and switch statements
    The slicing and predecessor operations have been improved to give more precise answers for goto and switch statements.
  • Scripting is now licensed separately
    A separate license is now needed in order to use scripting.  All script source files are now encrypted by default.
  • Abstract Syntax Trees
    The display of vertices in the project viewer and in the property sheets is now generated from the fragment of the abstract syntax tree that contributed to the vertex.  This means the display of these vertices is much more precise and less ambiguous.  A Scheme interface to these ASTs is provided.

Free Trial | Products | Customers | Support | News | Jobs | About Us         © 2007-2008, GrammaTech, Inc. All rights reserved.