Подтвердить что ты не робот

Отключить ошибки затмения (что arent действительно ошибки)

Возможный дубликат:
Отключить обнаружение ошибок затмений. (С++ 11 ложных срабатываний)

С поддержкой GCC 4.8/Clang 3.3 С++ до сих пор опережает то, что Eclipse делает с проверкой синтаксиса (с точки зрения поддержки функций), Eclipse отмечает многие вещи как ошибки, которые на самом деле являются действительным кодом (сглаживание шаблонов, как мне кажется, проблема, но есть и другие проблемы).

Когда я компилирую (или пытаюсь в любом случае, имея некоторые проблемы, см. здесь для большего), какой бы компилятор не выполнял работу, выполняет свою работу и ее ошибки, но код, который, по его словам, в порядке, по-прежнему подчеркивает (красные и золотые пауки для ошибок и предупреждений соответственно), что значительно усложняет ситуацию, что происходит.

Есть ли способ избавиться от этих ошибок/предупреждений?

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

(На самом деле лучшим будет плагин для Eclipse, который поддерживает все или, по крайней мере, больше С++ 11, чем Juno сам по себе, но я не могу найти этого)

4b9b3361

Ответ 1

ОБНОВЛЕНИЕ: Я долгое время отправлял оригинальный ответ, и он устарел. Я дважды проверял сегодня (15 марта 2014 года): в Eclipse Kepler (Build id 20130614-0229) достаточно

  • добавить в Project > Properties > C/С++ Build > Настройки, а затем на вкладке "Параметры инструмента" Компилятор CCC С++ > Разный флаг -std=c++11,

  • затем в меню "Окно" > "Настройки" > "C/С++ > Сборка" на вкладке "Обнаружение" выбраны параметры встроенного компилятора CDT GCC и добавьте флаг -std=c++11 в команду, чтобы получить спецификации компилятора. На моей машине это выглядит после изменения:

    ${COMMAND} -E -P -v -dD -std=c++11 "${INPUTS}"

  • очистите и перестройте свой проект и ваш индекс (Project > C/С++ Index > Rebuild), поскольку Eclipse имеет тенденцию кэшировать сообщения об ошибках и показывать их, даже если они исчезли после изменения настройки.

Это действительно работает на моей машине. Если это не так, вы можете сделать снимок: С++ 11 полная поддержка Eclipse, хотя я не уверен в правильности этого подхода и не нужно делать это на своей машине. По состоянию на 7 марта 2014 года пользователи заявили, что они им помогли, тогда как вышеупомянутый подход не сделал.


Исходный пост, теперь устаревший:

Эти фиктивные ошибки исходят от Codan. Все дело в том, что Codan и компилятор имеют разное понимание С++ и Codan buggy.

Возможные обходные пути

  • Нажмите на свойства проекта, затем C/С++ Общие > Анализ кодa > Синтаксис и семантические ошибки и отмените выбор всех ложных ошибок, которые вы получаете. Недостаток: вы, скорее всего, прекратите отключать большую часть ошибок и предупреждать один за другим, что довольно неприятно.

  • Полностью отключите статический анализ в C/С++ General > Code Analysis > Синтаксис и семантические ошибки. Вы не получите истинные ошибки от Codan, но только позже от компилятора.

Ни одно из них не является решением, но по крайней мере вы все еще можете использовать Eclipse IDE.

Забастовкa >

Ответ 2

Перейдите в Window- > Preferences write analysis в поле поиска, выберите C/С++ → Code Analysis и там вы можете отключить все.