HP WDB 5.8 Release Notes
info corruption
Lists the potential in-block corruptions in all the freed blocks.
The following are the new commands related to detection of memory corruption:
1. The following command enables you to detect the dangling pointers and blocks.
info dangling
Displays a list of all the dangling pointers and dangling blocks that are potential sources of
memory corruption ( may have false positives)
2. The following are the commands that enable you to change the guard byte size. These take
effect only when bounds check is set on (set heap-check bounds on).
• set heap-check header-size<no of bytes>
Sets the Header guard for each block of the allocated memory. The default number of
bytes for the footer is 16 bytes if this option is not used. If the user specifies a value less
than 16 for the number of bytes, the debugger ignores it and takes the default of 16
bytes. If the user specifies more than 16 bytes, then the debugger considers the largest
closest 16 byte integral of the user-specified value.
Example:
If the user specifies 60 bytes, the debugger takes it as 48 bytes. If the user specifies 65,
the debugger considers 64 bytes.
• set heap-check footer-size<no of bytes>
Sets the Footer guard for each block of the allocated memory. The default number of
bytes for the footer is one byte if this option is not used.
Displays run time type information
HP WDB enables you to view the run time type information for C++ polymorphic objects. The
following command displays the run time information for C++ polymorphic object.
info rtti <address>
The input to this command is address of the C++ polymorphic object. GDB displays de-mangled
type name as output.
NOTE: This command is supported only on Integrity systems.
Patches and Defect Fixes in HP WDB 5.8
The following defects are fixed in HP WDB 5.8:
• GDB depends on objdebug_type section alone to decide if the executable is DOOM
executable.
• GDB cannot print global variables on chatr +dbg enable on a shared library.
• GDB is unable to resolve break points placed using line number in the debugging of
multi-threaded applications.
• GDB does not access the environment variable LIBRTC_SERVER, if the variable is set within
the gdb prompt.
• GDB does not allow info heap or info corruption when another thread locks the mutex.
• GDB is unable to access base class vars with multiple inheritance.
• The parser does not recognize the white spaces in the specification of batch mode
configuration options in an rtcconfig file.
• GDB provides limited support to debug Purify Plus instrumented binaries.
• GDB does not find Line table information for nested functions or subroutines inside modules
for Fortran program compiled with +noobjdebug executables.
8