Eclipse CDT дает синтаксическую ошибку для действительного синтаксиса С++ 14. Все компилируется и запускается, но подсветка синтаксиса нарушена.
У меня работает MinGW и Eclipse. Программа С++ 14 компилируется и выполняется, но я получаю неправильную подсветку синтаксиса/проверку синтаксиса.
Вот мой исходный код:
#include <iostream>
auto main() -> int
{
//Binary Literals C++14 with Digit separators C++14
auto seven = int{0b0000'0111};
std::cout << seven << std::endl;
std::cout << __cplusplus << std::endl;
return int{0};
}
И вот журнал вывода/сборки.
Вы можете увидеть настройки моего компилятора (-D__GXX_EXPERIMENTAL_CXX0X__ -O0 -g3 -Wall -c -fmessage-length=0 -std=c++14
) и выделение в нем.
Что мне нужно для настройки, так что синтаксический анализ позволяет использовать синтаксис С++ 14?
EDIT: похоже, что Indexer - правильная ставка - я не могу заставить Indexer работать по назначению.
В Windows 7 я использую MinGW.
Я открываю Провайдеры и нажимаю "Настройки встроенного компилятора CDT MinGW", где я добавляю -std=c++14
. Таким образом, вся строка ${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}" -std=c++14
после того, как я нажал применить, и я использую Project- > Index- > rebuild в надежде удалить мои ошибки. Ошибка синтаксиса сохраняется.
Это, по сути, то, что упоминается в часто задаваемые вопросы, чтобы распознать С++ 11 указателем.
У меня установлена последняя версия MinGW. Когда я вызываю g++ --version
, я получаю: g++ (GCC) 5.3.0
в качестве ответа. Нет руководства для 5.3, но я бы предположил, что большинство из 5.4 в основном применимо для моей версии.