clang产生具有偏移的符号化堆栈跟踪

时间:2017-09-12 15:29:16

标签: c++ clang

我使用clang来查找UndefinedBehavior错误。我使用以下选项进行debuger和链接器:

QMAKE_CXXFLAGS += -std=c++0x -fsanitize=undefined -g -fno-omit-frame-pointer
QMAKE_LFLAGS += -fsanitize=undefined

此外,我已经定义了llvm-symbolizer的路径并使用UBSAN_OPTIONS=print_stacktrace=1参数运行我的程序:

export UBSAN_OPTIONS=print_stacktrace=1
./vapp # run my application.

我看到我有运行时错误并看到相应的调用堆栈:

runtime error: ^[[1m^[[0m^[[1mload of misaligned address 0x7faf2411b514 for type 'PlayableItem *const', which requires 8 byte alignment.

   #4 0x59abba  (/home/rkazmin/repo_dev/repobuild_debug/vapp+0x59abba)^M
    #5 0x17eb820  (/home/rkazmin/repo_dev/repobuild_debug/vapp+0x17eb820)^M
    #6 0x17f495b  (/home/rkazmin/repo_dev/repobuild_debug/vapp+0x17f495b)^M

我原本预计调用堆栈会显示错误发生的代码行 - 而不是我看到偏移vapp + 0x59abba等... 如何在我的vapp中匹配这些偏移量和源代码?

0 个答案:

没有答案