Thread overview
Stack traces with DMD on OSX
May 31, 2018
pineapple
May 31, 2018
Basile B.
May 31, 2018
Seb
May 31, 2018
When I run code on OSX and it produces a stack trace, the output uses mangled symbols and is missing line numbers, like so - how can I change these stack traces to be more readable?

0   objectpool                          0x0000000104e9a3bc _D4core7runtime18runModuleUnitTestsUZ19unittestSegvHandlerUNbNiiPS4core3sys5posix6signal9siginfo_tPvZv + 56
1   libsystem_platform.dylib            0x00007fff8bd5b5aa _sigtramp + 26
2   ???                                 0x0000000000000002 0x0 + 2
3   objectpool                          0x0000000104ea994b D2gc4impl12conservative2gc14ConservativeGC200__T9runLockedS79_D2gc4impl12conservative2gc14ConservativeGC12mallocNoSyncMFNbmkKmxC8TypeInfoZPvS40_D2gc4impl12conservative2gc10mallocTimelS40_D2gc4impl12conservative2gc10numMallocslTmTkTmTxC8TypeInfoZ9runLockedMFNbKmKkKmKxC8TypeInfoZPv + 147
4   objectpool                          0x0000000104ea3463 D2gc4impl12conservative2gc14ConservativeGC6qallocMFNbmkxC8TypeInfoZS4core6memory8BlkInfo_ + 115
5   objectpool                          0x0000000104ea26a3 gc_qalloc + 51
6   objectpool                          0x0000000104eaf5a8 D2rt8lifetime12__arrayAllocFNaNbmxC8TypeInfoxC8TypeInfoZS4core6memory8BlkInfo_ + 236
7   objectpool                          0x0000000104eb3d9a _d_arrayliteralTX + 102
8   objectpool                          0x0000000104cf7c2c D4mach3sys6memory19__unittestL120_1062FZv + 240
9   objectpool                          0x00000001049f8496 _D4mach3sys6memory9__modtestFZv + 14
10  objectpool                          0x0000000104e9a409 D4core7runtime18runModuleUnitTestsUZ14__foreachbody2MFPS6object10ModuleInfoZi + 45
11  objectpool                          0x0000000104e9067f D6object10ModuleInfo7opApplyFMDFPS6object10ModuleInfoZiZ9__lambda2MFyPS6object10ModuleInfoZi + 35
12  objectpool                          0x0000000104eb5c56 D2rt5minfo17moduleinfos_applyFMDFyPS6object10ModuleInfoZiZ14__foreachbody2MFKS2rt19sections_osx_x86_6412SectionGroupZi + 86
13  objectpool                          0x0000000104eb5be1 D2rt5minfo17moduleinfos_applyFMDFyPS6object10ModuleInfoZiZi + 33
14  objectpool                          0x0000000104e90656 D6object10ModuleInfo7opApplyFMDFPS6object10ModuleInfoZiZi + 34
15  objectpool                          0x0000000104e9a2f3 runModuleUnitTests + 127
16  objectpool                          0x0000000104eaddc3 D2rt6dmain211_d_run_mainUiPPaPUAAaZiZ6runAllMFZv + 23
17  objectpool                          0x0000000104eadd5c D2rt6dmain211_d_run_mainUiPPaPUAAaZiZ7tryExecMFMDFZvZv + 32
18  objectpool                          0x0000000104eadcc7 _d_run_main + 459
19  objectpool                          0x00000001049f8caa main + 34
20  libdyld.dylib                       0x00007fff854835fd start + 1
May 31, 2018
On Thursday, 31 May 2018 at 09:11:41 UTC, pineapple wrote:
> When I run code on OSX and it produces a stack trace, the output uses mangled symbols and is missing line numbers, like so - how can I change these stack traces to be more readable?
>
> 0   objectpool                          0x0000000104e9a3bc _D4core7runtime18runModuleUnitTestsUZ19unittestSegvHandlerUNbNiiPS4core3sys5posix6signal9siginfo_tPvZv + 56
> 1   libsystem_platform.dylib            0x00007fff8bd5b5aa _sigtramp + 26
> 2   ???                                 0x0000000000000002 0x0 + 2
> 3   objectpool                          0x0000000104ea994b D2gc4impl12conservative2gc14ConservativeGC200__T9runLockedS79_D2gc4impl12conservative2gc14ConservativeGC12mallocNoSyncMFNbmkKmxC8TypeInfoZPvS40_D2gc4impl12conservative2gc10mallocTimelS40_D2gc4impl12conservative2gc10numMallocslTmTkTmTxC8TypeInfoZ9runLockedMFNbKmKkKmKxC8TypeInfoZPv + 147
> 4   objectpool                          0x0000000104ea3463 D2gc4impl12conservative2gc14ConservativeGC6qallocMFNbmkxC8TypeInfoZS4core6memory8BlkInfo_ + 115
> 5   objectpool                          0x0000000104ea26a3 gc_qalloc + 51
> 6   objectpool                          0x0000000104eaf5a8 D2rt8lifetime12__arrayAllocFNaNbmxC8TypeInfoxC8TypeInfoZS4core6memory8BlkInfo_ + 236
> 7   objectpool                          0x0000000104eb3d9a _d_arrayliteralTX + 102
> 8   objectpool                          0x0000000104cf7c2c D4mach3sys6memory19__unittestL120_1062FZv + 240
> 9   objectpool                          0x00000001049f8496 _D4mach3sys6memory9__modtestFZv + 14
> 10  objectpool                          0x0000000104e9a409 D4core7runtime18runModuleUnitTestsUZ14__foreachbody2MFPS6object10ModuleInfoZi + 45
> 11  objectpool                          0x0000000104e9067f D6object10ModuleInfo7opApplyFMDFPS6object10ModuleInfoZiZ9__lambda2MFyPS6object10ModuleInfoZi + 35
> 12  objectpool                          0x0000000104eb5c56 D2rt5minfo17moduleinfos_applyFMDFyPS6object10ModuleInfoZiZ14__foreachbody2MFKS2rt19sections_osx_x86_6412SectionGroupZi + 86
> 13  objectpool                          0x0000000104eb5be1 D2rt5minfo17moduleinfos_applyFMDFyPS6object10ModuleInfoZiZi + 33
> 14  objectpool                          0x0000000104e90656 D6object10ModuleInfo7opApplyFMDFPS6object10ModuleInfoZiZi + 34
> 15  objectpool                          0x0000000104e9a2f3 runModuleUnitTests + 127
> 16  objectpool                          0x0000000104eaddc3 D2rt6dmain211_d_run_mainUiPPaPUAAaZiZ6runAllMFZv + 23
> 17  objectpool                          0x0000000104eadd5c D2rt6dmain211_d_run_mainUiPPaPUAAaZiZ7tryExecMFMDFZvZv + 32
> 18  objectpool                          0x0000000104eadcc7 _d_run_main + 459
> 19  objectpool                          0x00000001049f8caa main + 34
> 20  libdyld.dylib                       0x00007fff854835fd start + 1

Hello.
feed "ddemangle" with the output.
May 31, 2018
On Thursday, 31 May 2018 at 09:11:41 UTC, pineapple wrote:
> When I run code on OSX and it produces a stack trace, the output uses mangled symbols and is missing line numbers, like so - how can I change these stack traces to be more readable?
>
> [...]

Use DMD master - support for line numbers in stack traces will be part of 2.081:

More details: https://github.com/dlang/druntime/pull/2169

curl https://dlang.org/install.sh | bash -s dmd-nightly