C++ Debugging Support library 1.0.0

C++ Debugging Support library is a ostream-based debug output and memory allocation debug support library.

  Add it to your Download Basket!

 Add it to your Watch List!


Rate it!
send us
an update
QPL (QT Public License) 
2.8/5 20
Carlo Wood
ROOT \ Programming \ Debuggers
2 C++ Debugging Support library Screenshots:
C++ Debugging Support libraryC++ Debugging Support library
Libcwd is a full-featured and well-documented library that assists C++ developers with debugging their applications.

C++ Debugging Support library includes support for ostream-based debug output, custom debug channels and devices, memory allocation debugging, run-time sourcefile:linenumber information, and demangled type names of variables. It is thread-safe.

Here are some key features of "Cplusplus Debugging Support library":

· End-users of an application don't need to install libcwd.
· The use of namespaces prevents name collisions between debug channels of different libraries.
· Debug channels and devices can be turned on or off on a per thread basis.
· All debug code can be omitted from the executable by not defining a single CWDEBUG macro.
· Code using libcwd looks clean and is surveyable as a result of using a few well-defined macros, avoiding the need of disturbing #ifdef CWDEBUG ... #endif constructs.
· Debug output is written to an ostream and as such type-safe and customizable as is usual for C++ ostreams.
· An arbitrary number of debug channels and debug devices can be created without any penalty in terms of cpu usage.
· Full support for all forms of iterative and recursive calls.
· Debug output is surveyable as a result of several possibilities to format the output, like a margin string, a marker string, indentation and fixed-width channel labels. All formatting is thread specific.
· Printing the type of arbitrary variables in demangled form.
· Printing addresses in source file:line number presentation.
· Deallocation pointer validation.
· Magic numbers around allocated memory blocks in order to detect buffer overruns.
· Printing an overview of current memory allocations, including start address, size, type of allocated object, source file and line number of allocation and a user definable description.
· Finding allocation information with only a pointer that points inside an allocated memory block, in logarithmic time.

What's New in This Release:

· An important bug has been fixed for the threaded case: libcwd_r uses several pthread_mutexattr_t objects, but never initialized those.
· This resulted in uninitialized memory being used, resulting in random mutex attributes.
· This is believed to be the reason that gcc-3.x locked up.
· That version of gcc is therefore now supported again.
· This version adds support for sparc64.
· All configure options now work also on 64-bit platforms.
· Support for the latest SVN version of gcc (4.3) was updated.

Last updated on January 23rd, 2008

#memory allocation debug #support library #C++ debugging #memory #debugger #C++ #library

Add your review!