Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Хохол
Эксперт C++
475 / 443 / 13
Регистрация: 20.11.2009
Сообщений: 1,292
#1

Visual Studio. Запрет компиляции при наличии варнингов - C++

20.09.2011, 21:05. Просмотров 829. Ответов 9
Метки нет (Все метки)

Для пущей безопасности хотелось бы, чтобы компилер отказывался компилить код, если есть варнинги. Есть такое где-нибудь в опциях?

Добавлено через 7 минут
Нашел. Project -> Properties -> C/C++ -> Treat Warnings As Errors -> Yes.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.09.2011, 21:05     Visual Studio. Запрет компиляции при наличии варнингов
Посмотрите здесь:

Visual Studio 2012 Ошибка при компиляции программы - C++
Здравствуйте. Возникла проблема при компиляции данной программы: #include "stdafx.h" #include "string" #include "iostream" ...

Работа с сокетами, ошибка при компиляции в Visual Studio 2013 - C++
Помогите пожалуйста в чем ошибка? // Server_new_chat.cpp : Defines the entry point for the console application. // #pragma...

Visual Studio C++. Вылетает ошибка при компиляции. Задание на матрицы - C++
// dz325.11.13.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include<iostream> using...

Зависание или ошибка при компиляции microsoft Visual Studio 2008 - C++
microsoft Visual Studio 2008 писал на C++ Все раньше было хорошо. Возникла такая проблема. При компиляции программы не создается *.exe...

Запрет нажатия определенной клавиши в консольном приложении (Visual Studio) W8 - C++
Здравствуйте, мне нужно, что бы при нажатии сочетания клавиш(L. Shift+ L. Ctrl + F1) сделать нерабочей клавишу "1", а при повторном нажатии...

Visual Studio Community 2017 ошибка компиляции - C++
Добрый вечер! Ребята, столкнулся с новой для меня ошибкой) Пол интернета перелазил так и не нашел ответа на свой вопрос. Список ошибок я...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Евгений М.
1035 / 976 / 54
Регистрация: 28.02.2010
Сообщений: 2,829
Завершенные тесты: 2
21.09.2011, 12:13     Visual Studio. Запрет компиляции при наличии варнингов #2
На всякий случай. Для gcc "-Werror"
Хохол
Эксперт C++
475 / 443 / 13
Регистрация: 20.11.2009
Сообщений: 1,292
05.10.2011, 23:41  [ТС]     Visual Studio. Запрет компиляции при наличии варнингов #3
Понадобилось аналогичное и для gcc. Пытаюсь использовать -Werror, чето не получается.
Компилю так:

"C:\Program Files\CodeBlocks\MinGW\bin\g++.exe" -Werror main.cpp -o main.exe

Скармливаю код, который точно должен вызывать варнинги. А он компилится совершенно молча.
Как правильно делать?
Евгений М.
1035 / 976 / 54
Регистрация: 28.02.2010
Сообщений: 2,829
Завершенные тесты: 2
06.10.2011, 05:31     Visual Studio. Запрет компиляции при наличии варнингов #4
-Wall -Werror
Хохол
Эксперт C++
475 / 443 / 13
Регистрация: 20.11.2009
Сообщений: 1,292
06.10.2011, 09:30  [ТС]     Visual Studio. Запрет компиляции при наличии варнингов #5
Так тоже уже пробовал.

"C:\Program Files\CodeBlocks\MinGW\bin\g++.exe" -Wall -Werror main.cpp -o main.exe

Никаких изменений.
Евгений М.
1035 / 976 / 54
Регистрация: 28.02.2010
Сообщений: 2,829
Завершенные тесты: 2
06.10.2011, 09:39     Visual Studio. Запрет компиляции при наличии варнингов #6
Хм. Странно. А можно код?
Я только на этом пробовал:
C++
1
2
3
4
5
6
7
#include <iostream>
 
int main( )
{
    int a;
    std::cout << a << std::endl;
}
Хохол
Эксперт C++
475 / 443 / 13
Регистрация: 20.11.2009
Сообщений: 1,292
06.10.2011, 10:14  [ТС]     Visual Studio. Запрет компиляции при наличии варнингов #7
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
 
int main()
{
    double d = 88.88;
    int x = d;
    long long a = 15455455454545LL;
    int p = a;
    std::cout << x+p;
}
Добавлено через 16 минут
Кстати, использование неинициализированной переменной он палит. Так что вроде как работает.
Но вот на моем коде выше молчит. Грош ему цена, если он опасное приведение типов не палит.
Думаю, можно его заставить быть строже, и такое тоже палить. Иначе чушь же.
Евгений М.
1035 / 976 / 54
Регистрация: 28.02.2010
Сообщений: 2,829
Завершенные тесты: 2
06.10.2011, 10:39     Visual Studio. Запрет компиляции при наличии варнингов #8
Только что в доках прочитал это:
Note that some warning flags are not implied by -Wall. .... Some of them are enabled by -Wextra but many of them must be enabled individually.
Буду век учить маны.
Для Вашего случая -Wconversion палит то что нужно.
Хохол
Эксперт C++
475 / 443 / 13
Регистрация: 20.11.2009
Сообщений: 1,292
06.10.2011, 10:47  [ТС]     Visual Studio. Запрет компиляции при наличии варнингов #9
Большое спасибо.
Получается, могут быть и другие варнинги, которые я считаю важными, а он на них по умолчанию плюет. Жаль. Ну, будем знать.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2011, 00:57     Visual Studio. Запрет компиляции при наличии варнингов
Еще ссылки по теме:

Visual Studio 2012 и Orwell Dev-C++ - ускорение компиляции - C++
Можно ли как-нибудь ускорить компиляцию кода (консольное приложение) в dev-c++ или Visual studio 2012 express? Время компиляции ~5 секунд...

ошибки компиляции консоли с++ и zlib 1.1.3, visual studio 2010 - C++
Привет, скачал в интернете исходники zlib 1.1.3 (знаю, что последняя версия гораздо больше, но мне нужна именно эта) и в microsoft visual...

Напишите команды компиляции и компоновки для Visual Studio - C++
Напишите команды компиляции и компоновки для Visual Studio.

После компиляции программы. Visual studio сразу закрывается. Вылетает ошибка. - C++
http://s54.***********/i145/1104/ad/e59a041279ff.jpg Что делать? Когда жму ctrl+f5 Visual studio сразу же закрывается! ошибка как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Хохол
Эксперт C++
475 / 443 / 13
Регистрация: 20.11.2009
Сообщений: 1,292
12.10.2011, 00:57  [ТС]     Visual Studio. Запрет компиляции при наличии варнингов #10
Выяснил, что не палится отсутствие return в не void функции, а зря.
Включается с помощью параметра -Wreturn-type.
Yandex
Объявления
12.10.2011, 00:57     Visual Studio. Запрет компиляции при наличии варнингов
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru