Insure++

Insure++ from  Parasoft is an automatic runtime error detection tool for C/C++ applications that uncovers problems such as memory corruption, memory leaks, pointer errors, and I/O errors. It also performs coverage analysis, clearly indicating which sections of the code were tested, and facilitates memory optimization, displaying how the program uses memory in real-time.

Insure++ includes two add-ons that work together to help improve development:

Inuse visualizes in real-time the memory manipulation of your program.
TCA performs coverage analysis of programs.

Information and Documentation
At present, Insure++ is available on Linux Workstations, the IBM supercomputer system JUMP and AIX Workstations. There are currently two floating licenses available. A license is held for at least 15 minutes.
The license usage can be viewed at http://licsrv1:1749/licenseserver/jsp/licenses_summary.jsp.
If currently no license is available, the following error message is printed:
You do not have an Insure++ 7.1 license for this machine.

Usage
To use Insure, the following steps have to be taken:

extend your PATH environment variable e.g.:
export PATH=/usr/local/insure/bin:$PATH
compile or link your program with insure, e.g.:
insure gcc -g  bubble.c -o bubble
execute the program: ./bubble
The result is automatically displayed in the graphical tool insra (  images).

If you double-click on a message header, the message window is opened. Using certain window managers, double-clicking will be ignored. The solution is to click once on the item, and then hit the space bar. In fact, this method works on all platforms regardless of the window manager, but is only necessary if double-clicking does not work.

Interacting with Debuggers
If you are running your program from a debugger, it's possible to cause a breakpoint whenever Insure++ discovers a problem. This can be done by the following debugger command (e.g. for the gnu debugger or dbx):

(dbx) stop in _Insure_trap_error
(gdb) break _Insure_trap_error

If you don't explicitely link against static Insure++ libraries, the above function isn't found because the shared libraries are not loaded by the debugger until the program begins to run. This can be avoided by setting a breakpoint in main and starting the program before setting the breakpoint on _Insure_trap_error. Further information can be found  here.

Documentation
 ParaSoft Manuals

Contact G.Egerer@fz-juelich.de



last change 02.03.2011 | Anke Visser | Print