C++ Debugging Support library 0.99.45 reviewDownload
Libcwd is a full-featured and well-documented library that assists C++ developers with debugging their applications. C++ Debugging
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:
This version works with gcc 4.2 (and the current 4.3 in SVN).
The library now works completely on Debian.
Support for debug symbol packages (*-dbg on Debian) was added: libcwd now reads both .debug/ and /usr/lib/debug/ debug files (as does gdb) when the original library is stripped.
C++ Debugging Support library 0.99.45 keywords