The libebt library provides a clean way of getting human-readable backtrace messages in C++. It uses the RAII (resource acquisition is initialization) idiom to manage backtrace stack items without requiring macros, control structures, or an external debugger.
|Operating Systems||OS Independent POSIX Unix|
Release Notes: A std::deque is now used internally rather than a std::list to cut down on the number of memory allocations.
Release Notes: When using uClibc++, -pedantic will no longer be passed to the compiler. Makefile.am now uses check_ rather than noinst_ for test programs. libebt::Backtraceable<>'s template constructor now explicitly asks for a reference to a string rather than letting the compiler pass by value.
Release Notes: A convenience constructor was added to Backtraceable<> to simplify creating instances from other Backtraceable<> instances (possibly with different tags). The configure script was tweaked to do a better job of selecting the correct -W compiler switches. The include directives in the pthread test case were fixed to work correctly when using the Intel compiler.
Release Notes: Changes in this release include the addition of typedefs for easier external access to template parameter types, easier control over whether backtraces are shown with the top or bottom stack item first via an optional second parameter to the Backtraceable<> method backtrace() and the BacktraceContext<>::backtrace() static method, the addition of a Backtraceable<> empty() method for consistency, and compatibility fixes for old g++ versions.
Release Notes: The spelling of 'backtracable' was replaced with the more obvious 'backtraceable'. For backwards compatibility, the libebt/libebt_backtracable.hh header is still available, and the libebt::Backtracable<> class template is now a wrapper for libebt::Backtraceable<>. All deprecated spellings are marked with __attribute__ ((deprecated)) on compilers that support this construct.