Files
rust/src/libstd/rt
Alex Crichton 829df69f9f Add basic backtrace functionality
Whenever a failure happens, if a program is run with
`RUST_LOG=std::rt::backtrace` a backtrace will be printed to the task's stderr
handle. Stack traces are uncondtionally printed on double-failure and
rtabort!().

This ended up having a nontrivial implementation, and here's some highlights of
it:

* We're bundling libbacktrace for everything but OSX and Windows
* We use libgcc_s and its libunwind apis to get a backtrace of instruction
  pointers
* On OSX we use dladdr() to go from an instruction pointer to a symbol
* On unix that isn't OSX, we use libbacktrace to get symbols
* Windows, as usual, has an entirely separate implementation

Lots more fun details and comments can be found in the source itself.

Closes #10128
2014-03-13 00:24:20 -07:00
..
2014-03-13 00:24:20 -07:00
2014-02-14 22:55:20 -08:00
2014-02-23 01:07:53 -08:00
2014-03-13 00:24:20 -07:00
2014-02-23 01:47:05 -08:00
2014-03-13 00:24:20 -07:00
2014-02-23 21:51:17 -08:00
2014-02-18 08:05:35 +11:00
2014-03-13 00:24:20 -07:00
2014-03-13 00:24:20 -07:00