3 This file is part of libmspcore
4 Copyright © 2007 Mikko Rasa, Mikkosoft Productions
5 Distributed under the LGPL
10 #include "backtrace.h"
17 Backtrace Backtrace::create()
21 int count=::backtrace(addresses, 50);
23 char **symbols=backtrace_symbols(addresses, count);
26 for(int i=0; i<count; ++i)
27 bt.frames.push_back(StackFrame(addresses[i], symbols[i]));
37 ostream &operator<<(ostream &out, const Backtrace &bt)
39 const Backtrace::FrameSeq &frames=bt.get_frames();
40 for(Backtrace::FrameSeq::const_iterator i=frames.begin(); i!=frames.end(); ++i)
41 out<<i->address<<" in "<<i->symbol<<'\n';