clang- все статьи тега


Создание графика вызовов для файла с clang

Есть ли способ создать график вызовов с clang, который может разумно поместиться на странице? То есть дано: #include<iostream> using namespace std; int main() { int a; cin>>a; cout<<a; cout<<a; return 0; } I текущий get С помощью: $ clang++ main.cpp -S -emit-llvm -o - | opt -analyze -std-link-opts -dot-callgraph $ cat callgraph.dot | c++filt | sed 's,>,\>,g; s,-\>,->,g; s,<,\<,g' | gawk '/external node/{id=$1}$1!=id' | dot ...

"- Мы все" уступаем " сравнивая плавающую точку с == или!= небезопасно"

У меня есть строка, которую я преобразую в двойник следующим образом: double d = [string doubleValue]; Документация для doubleValue говорит нам, что при переполнении этот метод возвращает либо HUGE_VAL, либо -HUGE_VAL. Вот как я проверял это ранее: if (d == HUGE_VAL || d == -HUGE_VAL) //overflow Теперь, после добавления нового предупреждающего флага "-Weverything", компилятор жалуется, что Comparing floating point with == or != is unsafe Как я могу решить эту проблему? Как я должен ...

Почему" Enable Address Sanitizer " отключен в Xcode 7?

Я прочитал о дезинфекции среды выполнения в Apple docs в новом Xcode 7, поэтому я искал его и обнаружил, что он отключен. Я использую Xcode 7 GM seed. Когда я перехожу в действие выполнить на вкладке схема > Диагностика, опция Enable Address Sanitizer отключена: Существует некоторое объяснение того, как отключаются другие опции, но нет упоминания о том, почему опция дезинфекции будет отключена: Можно использовать некоторые диагностические инструменты в сочетании с другими; параметры ...

Как справиться с предупреждением "exit-time destructor" в clang?

В моем коде C++11 я получаю предупреждение clang "объявление требует деструктора времени выхода"в следующем случае: static const std::map<int, const someStruct> mymap = { {1, { "A", "B", "C" }}, {2, { "D", "E", "F" }} }; Насколько я понимаю Google, "деструктор времени выхода" необходим для уничтожения main() и статики детерминированным способом, чтобы предотвратить сбои при выходе из-за"уже выпущенных переменных". Это прав ...

Xcode - ld: библиотека не найдена для-lPods

Я получаю эти ошибки, когда я пытаюсь построить приложение для iOS. ld: library not found for -lPods clang: error: linker command failed with exit code 1 (use -v to see invocation) Ld /Users/Markus/Library/Developer/Xcode/DerivedData/Totalbox-clpeqwpfvwuhpleeejnzlavncnvj/Build/Products/Debug-iphonesimulator/Totalbox.app/Totalbox normal x86_64 cd /Users/Markus/Development/xcode/totalbox-ios export IPHONEOS_DEPLOYMENT_TARGET=7.1 export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/i ...

Как исправить ошибку PCH?

когда я пытаюсь построить свое приложение в Xcode, Я получаю это сообщение об ошибке: PCH файл построен из другой ветви ((clang-425.0.24)), чем компилятор ((clang-425.0.27)) это не произошло раньше, но это была первая сборка после обновления Xcode. другие приложения работают, но не этот конкретный. Если я выключу "Precompile Prefix Header" настройки, он работает. Как исправить эту ошибку и сохранить эту настройку дальше? ...

Как сделать лязгом компиляции в промежуточный код LLVM ИК

Я хочу, чтобы clang скомпилировал мой C/C++ код LLVM байт-код, а не двоичный исполняемый файл. Как я могу этого достичь? И если я получу LLVM байт-код, как я могу взять его для дальнейшей компиляции в двоичный исполняемый файл. в основном я хочу добавить свой собственный код в LLVM байт-код перед компиляцией в двоичный исполняемый файл. ...

Как скомпилировать C++ с помощью Clang?

Я установил лязгом С помощью apt-get в Ubuntu, и я могу успешно компилировать файлы C с его помощью. Однако я понятия не имею, как скомпилировать C++ через него. Что мне нужно сделать для компиляции C++? ...

Как скомпилировать / link Boost с clang++ / libc++?

ответ на этот вопрос почему не может clang с libc++ в режиме c++0x связать этот пример boost::program_options? состояния " вам нужно перестроить boost с помощью clang++ -stdlib=libc++." Я использую MacOS Lion с clang v3.0. Как построить Boost v1.48. 0 с помощью clang и связать его с libc++? обновление: я создал user-config.джем файл со следующим: using clang-darwin ...который будет создавать импульс с clang вместо gcc. Как я ссылка на libc++ вместо libstdc++? ...

Как определить LLVM и его версию с помощью директив #define?

вопрос вполне понятен, я думаю. Я пытаюсь написать заголовок обнаружения компилятора, чтобы иметь возможность включать в приложение информацию о том, какой компилятор был использован и какая версия. это часть кода, который я использую: /* GNU C Compiler Detection */ #elif defined __GNUC__ #ifdef __MINGW32__ #define COMPILER "MinGW GCC %d.%d.%d" #else #define COMPILER "GCC %d.%d.%d" #endif #define COMP_VERSION __GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__ #endif ...