Parasoft Insure++

Parasoft® Insure++® identifies difficult-to-track programming and memory-access errors, such as memory corruption, memory leaks, access outside of array bounds, invalid pointers, and more to ensure the integrity of your applications’ memory usage.

Insure++ runtime error detection


Memory Error Detection

  • Memory error detection industry leader since 1993
  • Find and fix erratic runtime behavior like sporadic crashing and hanging
  • Expose serious defects that have evaded all other testing efforts for years
  • Expose errors during 64-bit porting
  • Optimize application memory usage

Runtime Error Detection

  • Expose critical defects as the application is exercised
  • Works from unit testing through application/system testing
  • Reports only defects that actually occur
  • Lightweight and suitable for embedded testing
  • Integrated with static analysis, unit testing, code review & more

Supported environments

Custom Messages

Memory Error Detection

Errors such as memory corruption, memory leaks, access outside of array bounds, invalid pointers, and the like often go undetected during normal testing, only to result in application crashes in the field. Insure++ exposes such defects—enabling you to quickly pinpoint and remove the cause of erratic runtime behavior such as mysterious crashing and hanging. Insure++ automatically identifies the industry’s broadest spectrum of difficult-to-track programming and memory-access errors, along with potential defects and inefficiencies in memory usage.
Memory Error Detection

Unparalleled Depth and Precision

Patented Source Code Instrumentation technology enables Insure++ to detect errors that other memory error detection technologies miss—for example, memory corruption in all areas of your program, including heap, stack, static, and shared memory. Moreover, patented Runtime Pointer Tracking technology enables Insure++ to pinpoint the exact point where memory is leaked: when and at what line of code. This saves you the time and effort of stepping through the program manually to trace the leak.
Unparalleled Depth and Precision

Runtime Error Detection

During testing, Insure++ checks all types of memory references, including those to static (global), stack, and shared memory—both in your own code and in third party libraries. Errors detected include:
  • Corrupted heap and stack memory
  • Use of uninitialized variables and objects
  • Array and string bounds errors on heap and stack
  • Use of dangling, NULL, and uninitialized pointers
  • All types of memory allocation and free errors or mismatches
  • All types of memory leaks
  • Type mismatches in global declarations, pointers, and function calls

Compile-Time Error Detection

Insure++ can detect errors at compile-time as well as runtime. Compile-time errors detected include:
  • Cast of pointer loses precision
  • Mismatch in format specification
  • Mismatch in argument type
  • Code is not evaluated, has no effect, or is unreachable
  • Undefined identifier
  • Variable declared, but never used
  • Returning pointer to local variable
  • Function returns inconsistent value
  • Unused variables

Error Detection in Threads

Insure++ instruments all threads, tracks all processes in the application, and quickly pinpoints algorithmic anomalies, bugs, and deficiencies. This allows developers of multithreaded applications to rapidly find and fix the bugs that would otherwise remain hidden in threads and cause the application to perform incorrectly, or to fail to perform at all.
Error Detection in Threads

Dynamic Memory Visualization

Insure++ visualizes how an application uses memory—providing a graphical view of all memory allocations over time, with specific visibility into overall heap usage, block allocations, possible outstanding leaks, and so on. This insight into an application’s memory usage patterns allows you to effectively analyze and optimize runtime memory usage and performance.
Dynamic Memory Visualization


Avoiding C/C++ Dynamic Memory Problems with Parasoft Insure++

Discusses the challenges associated with C and C++ development including memory corruption, memory leaks, pointer errors, I/O errors, and more and explains how Parasoft Insure++ helps developers eliminate those problems.
Download »

Reducing the Risks of 64-bit Application Porting With Parasoft C++test and Parasoft Insure++

Introduces the potential problems that could occur when you port applications to 64-bit processors and describes a practical strategy for preventing them.
Download »

Expose Hidden C and C++ Defects Automatically

This 40-minute video explains how Insure++'s runtime memory error detection exposes memory corruption, memory leaks, access outside of array bounds, invalid pointers, and other defects.
Watch »

Take the Static Analysis Challenge

Take the Parasoft challenge and see if you can beat Parasoft's static analysis in finding hidden defects in Java code.
Watch »