Подскажите почему нет строк в выводе ошибок Clang++ при использовании -fsanitize=address-full

Посмотрел видео: про clang
И решил сразу же повротить увиденное!

взял программку
#include <memory>
int main()
{
  std::shared_ptr<int> i(new int(42));
  int* ii = new int(5);
  return 0;
}


Откомпилировал ее у себя на Убунту 13.10 с помощью clang++-3.4 вот так:
clang++ -std=c++11 -g -o main -fsanitize=address-full main.cpp

и запустил на выполнение вот так:
ASAN_OPTIONS=«detect_leaks=1» ./main


Результат:
=================================================================
==16293==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 4 byte(s) in 1 object(s) allocated from:
#0 0x42e115 (/home/leo/main+0x42e115)
#1 0x43f8c1 (/home/leo/main+0x43f8c1)
#2 0x7f5d51103de4 (/lib/x86_64-linux-gnu/libc.so.6+0x21de4)

SUMMARY: LeakSanitizer: 4 byte(s) leaked in 1 allocation(s).



Вопрос: Почему на видео были красивые пути в стеке вызовов с номерами строк а у меня нет этого, что еще надо сделать, а я этого не нашел на видео?
Заранее благодарю.
  • Вопрос задан
  • 2600 просмотров
Пригласить эксперта
Ответы на вопрос 1
AxisPod
@AxisPod
Ну визуально, это какая-то проблема с отладочной информацией. А valgrind что говорит и как показывает?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы