Эта таблица предоставляет частичный список элементов языка C++, которые были введены начиная с C++ 14 и соответствующая поддержка Polyspace®. Если ваш код содержит неподдерживаемые конструкции, Polyspace сообщает об ошибке компиляции.
C++ 14 станд. касательно | Описание | Поддерживаемый |
---|---|---|
2014-N3323 C++ | Неявное преобразование из типа класса в определенных контекстах, таких как оператор delete или switch . | Этот C++ 14 функций позволяет неявное преобразование из типа класса в определенных контекстах. Никакой новый синтаксис/ключевое слово не введен и поэтому не влияет на поддержку Polyspace C++ 14. |
2014-N3462 C++ | Более SFINAE-дружественный std::result_of | Да |
2014-N3472 C++ | Бинарные литералы, например, 0b100 . | Да |
2014-N3545 C++ | operator() в шаблоне integral_constant типа constexpr | Да |
2014-N3637 C++ | Отношение между std::async и деструктором std::future | Никакой новый синтаксис/ключевое слово не введен и поэтому не влияет на поддержку Polyspace C++ 14. |
2014-N3638 C++ | Автоматический вычет возврата вводит для функций, где явный тип возврата не задан | Да. В некоторых случаях Программа автоматического доказательства Кода может показать ошибки компиляции. |
2014-N3642 C++ | Суффиксы для пользовательских литералов, указывающих время (h , min , s , ms , us , ns ) и строки (s ) | Да |
2014-N3648 C++ | Инициализация полученных участников в функциях lambda | Да. В некоторых случаях, во время инициализации, Программа автоматического доказательства Кода может вызвать соответствующих конструкторов больше числа раз, чем необходимый. |
2014-N3649 C++ | Типичные (полиморфные) лямбда-выражения:
| Да |
2014-N3651 C++ | Переменные шаблоны | Да |
2014-N3652 C++ | Объявления, условия и циклы в функциях constexpr . | Да |
2014-N3653 C++ | Инициализация совокупных классов с меньшим количеством инициализаторов, чем участники Например, эта инициализация имеет меньше инициализаторов, чем участники. Участник struct S { int a; const char* b; int c; int d = b[a];}; S ss = { 1, "asdf" }; | Да |
2014-N3654 C++ | std::quoted | Да |
2014-N3656 C++ | std::make_unique | Да |
2014-N3658 C++ | std::integer_sequence | Да |
2014-N3658 C++ | std::shared_lock | Нет. Использование |
2014-N3664 C++ | Вызов new и операторов delete в пакетах. | Этот C++, который разъясняют 14 функций, как реализованы последовательные вызовы оператора new . Никакой новый синтаксис/ключевое слово не введен и поэтому не влияет на поддержку Polyspace C++ 14. |
2014-N3668 C++ | std::exchange | Частично поддерживаемый. |
2014-N3670 C++ | Используя std::get с типом данных, чтобы получить один элемент в std::tuple (если существует только один элемент типа в кортеже), | Да |
2014-N3671 C++ | Перегрузки для std::equal , std::mismatch и шаблонов функций std::is_permutation , которые принимают две отдельных области значений | Да |
2014-N3733 C++ | Удаление std::gets от <cstdio> | Да |
2014-N3776 C++ | Формулировка изменения для деструктора std::future | Никакой новый синтаксис/ключевое слово не введен и поэтому не влияет на поддержку Polyspace C++ 14. |
2014-N3779 C++ | Литералы std::complex , представляющие чистые мнимые числа с суффиксным i , if или il | Да |
2014-N3781 C++ | Использование одной кавычки как разделитель цифры, например, 1'000 . | Да |
2014-N3786 C++ | Запрещение "из ничего' приводит к C++ 14 | Никакой новый синтаксис/ключевое слово не введен и поэтому не влияет на поддержку Polyspace C++ 14. |
2014-N3910 C++ | Синхронизация поведения обработчиков сигнала | Никакой новый синтаксис/ключевое слово не введен и поэтому не влияет на поддержку Polyspace C++ 14. |
2014-N3924 C++ | Обескураживающее использование rand() | Никакой новый синтаксис/ключевое слово не введен и поэтому не влияет на поддержку Polyspace C++ 14. |
2014-N3927 C++ | Выполнение без блокировок | Никакой новый синтаксис/ключевое слово не введен и поэтому не влияет на поддержку Polyspace C++ 14. |
C++ standard version (-cpp-version)