Почему я все еще получаю предупреждения «Ключевое слово «переопределить» является расширением C++11 [-Wc++11-extensions]C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Почему я все еще получаю предупреждения «Ключевое слово «переопределить» является расширением C++11 [-Wc++11-extensions]

Сообщение Anonymous »

Я работаю над проектом C++ в CLion (macOS, компилятор Clang).

Мой CMakeLists.txt явно устанавливает стандарт C++ равным 20:

Код: Выделить всё

cmake_minimum_required(VERSION 3.16)
project(CourseWork)

set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
Однако, когда я компилирую проект, я все равно получаю десятки предупреждений, например:

Код: Выделить всё

warning: 'override' keyword is a C++11 extension [-Wc++11-extensions]
warning: 'auto' type specifier is a C++11 extension [-Wc++11-extensions]
warning: rvalue references are a C++11 extension [-Wc++11-extensions]
Пример:

Код: Выделить всё

std::string GetStatus() const override;
Несмотря на то, что переопределение допустимо в C++11 и более поздних версиях, Clang по-прежнему предупреждает об этом, как если бы я использовал C++98.


Подробнее здесь: https://stackoverflow.com/questions/798 ... extensions
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»