diff options
| author | Diggory Blake <diggsey@googlemail.com> | 2015-09-04 23:17:16 +0100 |
|---|---|---|
| committer | Diggory Blake <diggsey@googlemail.com> | 2015-09-05 00:56:53 +0100 |
| commit | 9a83842849f2aaf055c0bde21006bc8f09589b9f (patch) | |
| tree | 52e3b09a13f170e015101fdaab5528915a751b54 /src/libstd/sys/windows/backtrace.rs | |
| parent | b4de424e4175eefb4fda6e3ed634acfab3ec0daf (diff) | |
| download | rust-9a83842849f2aaf055c0bde21006bc8f09589b9f.tar.gz rust-9a83842849f2aaf055c0bde21006bc8f09589b9f.zip | |
Add line numbers to MSVC backtrace
Add comments
Diffstat (limited to 'src/libstd/sys/windows/backtrace.rs')
| -rw-r--r-- | src/libstd/sys/windows/backtrace.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/libstd/sys/windows/backtrace.rs b/src/libstd/sys/windows/backtrace.rs index 35e3c1d4663..9534a107d16 100644 --- a/src/libstd/sys/windows/backtrace.rs +++ b/src/libstd/sys/windows/backtrace.rs @@ -60,6 +60,9 @@ extern "system" { type SymFromAddrFn = extern "system" fn(libc::HANDLE, u64, *mut u64, *mut SYMBOL_INFO) -> libc::BOOL; +type SymGetLineFromAddr64Fn = + extern "system" fn(libc::HANDLE, u64, *mut u32, + *mut IMAGEHLP_LINE64) -> libc::BOOL; type SymInitializeFn = extern "system" fn(libc::HANDLE, *mut libc::c_void, libc::BOOL) -> libc::BOOL; @@ -99,6 +102,14 @@ struct SYMBOL_INFO { Name: [libc::c_char; MAX_SYM_NAME], } +#[repr(C)] +struct IMAGEHLP_LINE64 { + SizeOfStruct: u32, + Key: *const libc::c_void, + LineNumber: u32, + Filename: *const libc::c_char, + Address: u64, +} #[repr(C)] enum ADDRESS_MODE { |
