BDE 4.14.0 Production release
Loading...
Searching...
No Matches
balst_resolverimpl_dladdr

Outline

Purpose

Provide functions for resolving a stack trace using dladdr.

Classes

See also
balst_resolverimpl_elf, balst_resolverimpl_windows, balst_resolverimpl_xcoff

Description

This component provides a class, balst::Resolver<Dladdr>, that, given a vector of balst::StackTraceFrame objects that have only their address fields set, resolves some of the other fields in those frames. This resolver will work for any platform that supports the dladdr function (e.g., Darwin and Linux). Note that dladdr is not a standard system function, but documentation is frequently available via man dladdr on supported platforms such as Linux and Apple Mac OSX.

Note that this resolving implementation is currently used for the operating systems based on the Mach kernel, in particular Apple Mac OSX.

In addition to dladdr, this code uses the abi::__cxa_demangle function supplied by the gnu and clang compilers for demangling symbol names. Documentation can be found:

Usage

This component is an implementation detail of balst and is not intended for direct client use. It is subject to change without notice. As such, a usage example is not provided.