Release 1.9, patchlevel 2

Official release date: 01/14/2004.

Summary

This release of CodeSurfer is an update to CodeSurfer 1.9p1 that adds a few minor features and fixes a handful of bugs as described below. 

What's new in CodeSurfer 1.9p2

There are the following new features in this release:

  • The log viewer now provides hyperlinks to locations in source code specified by the native compiler (gcc, gpp, cl).
  • The graph nodes shown in the CodeSurfer Graph Viewer are now separately colored, which makes them more clearly visible, and their color is customizable. Also, the nodes now show expansion/collapse buttons (+, -) on both sides, which allows one to navigate graphs by gradually expanding subgraphs and collapsing the already traversed ones.
  • Several VxWorks models have been added to the CodeSurfer library models.

API/Representation Changes

  • The internal representation of abs-locs in the pointer analysis module has been made more compact, leading to a 10% - 30% improvement in the space consumption.

Fixes

The following bugs have been fixed since 1.9p1:

  • CodeSurfer used to terminate when a Path Inspector license was not found. It now displays an error message instead.
  • Double clicking on certain selection boxes (such as the configuration selection box, in the Visual Studio project importers) used to be disabled. It now has the expected effect, equivalent to pressing "Ok".
  • Fixed Core API bug whereby abs-loc-heap-type would give an error "INTERNAL ERROR: AST KEY SIZE DOES NOT MATCH BASE64 STRINGS IN .cfgs FILE" for a #heap variable that was a bit field.
  • The C++ samples that come with DirectX 8.0 used to crash the pointer analysis module.
  • Visual Studio .NET's path configuration file is not always created by Visual Studio. This used to confuse the CodeSurfer Controller.
  • The DSP importer now ignores the precompiled header options, since then may break the build.
  • Improved the file name and directory validation for "New Project" and "Rename Project".
  • The AST pattern '(or (c:< :1 ?i) (c:> :2 ?i))' would not match a 'c:>' AST; it now will. The pattern (c:= :1 ?i :2 ?i) still only matches if the lhs and the rhs of the assignment match.
  • Fixed a bug that was causing CodeSurfer (and the subordinate Microsoft compiler) to improperly handle the arguments /I, /D, /FI, /Fr, /FR in some special circumstances.
  • (Win32 bugfix): Using the "load" function to load DLLs that depended on each other would sometimes result in multiple copies of some of those DLLs being mapped into the process's address space. The function now reuses the handle of the existing
    (mapped) modules, if any, before attempting to load new modules.

Documentation

The following changes have been made to the documentation.

  • The manual has been updated to reflect the new graph viewer improvements.

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