Main Content
C++11 Language Elements Supported in Polyspace
This table provides a partial list of C++ language elements that have been introduced since C++11 and its corresponding Polyspace® support. If your code contains nonsupported constructions, Polyspace reports a compilation error.
C++11 Std Ref | Description | Supported |
---|---|---|
C++2011-DR226 | Default template arguments for function templates | Yes |
C++2011-DR339 | Solving the SFINAE problem for expressions | Yes |
C++2011-N1610 | Initialization of class objects by rvalues | Yes |
C++2011-N1653 | C99 preprocessor | Yes |
C++2011-N1720 | Static assertions | Yes |
C++2011-N1737 | Multi-declarator auto | Yes |
C++2011-N1757 | Right angle brackets | Yes |
C++2011-N1791 | Extended friend declarations | No |
C++2011-N1811 | long long | Yes |
C++2011-N1984 | auto-typed variables | Yes |
C++2011-N1986 | Delegating constructors | Yes |
C++2011-N1987 | Extern templates | Yes |
C++2011-N1988 | Extended integral types | Yes |
C++2011-N2118 | Rvalue references | Yes |
C++2011-N2170 | Universal character name literals | Yes |
C++2011-N2179 | Concurrency: Propagating exceptions | No |
C++2011-N2235 | Generalized constant expressions | Yes |
C++2011-N2239 | Concurrency: Sequence points | No new syntax/keyword is introduced and therefore does not affect Polyspace support for C++11. |
C++2011-N2242 | Variadic templates | Yes |
C++2011-N2249 | New character types | Yes |
C++2011-N2253 | Extending sizeof | Yes |
C++2011-N2258 | Template aliases | Yes |
C++2011-N2340 | __func__ predefined identifier | Yes |
C++2011-N2341 | Alignment support | Yes |
C++2011-N2342 | Standard Layout Types | Yes |
C++2011-N2343 | Declared type of an expression | Yes |
C++2011-N2346 | Defaulted and deleted functions | Yes |
C++2011-N2347 | Strongly typed enums | Yes |
C++2011-N2427 | Concurrency: Atomic operations | No |
C++2011-N2429 | Concurrency: Memory model | No new syntax/keyword is introduced and therefore does not affect Polyspace support for C++11. |
C++2011-N2431 | Null pointer constant | Yes |
C++2011-N2437 | Explicit conversion operators | Yes |
C++2011-N2439 | Rvalue references for *this | Yes |
C++2011-N2440 | Concurrency: Abandoning a process and at_quick_exit | Yes |
C++2011-N2442 | Unicode string literals | Yes |
C++2011-N2442 | Raw string literals | Yes |
C++2011-N2535 | Inline namespaces | Yes |
C++2011-N2540 | Inheriting constructors | Yes |
C++2011-N2541 | New function declarator syntax | Yes |
C++2011-N2544 | Unrestricted unions | Yes |
C++2011-N2546 | Removal of auto as a storage-class specifier | Yes |
C++2011-N2547 | Concurrency: Allow atomics use in signal handlers | No |
C++2011-N2555 | Extending variadic template template parameters | Yes |
C++2011-N2657 | Local and unnamed types as template arguments | Yes |
C++2011-N2659 | Concurrency: Thread-local storage | No |
C++2011-N2660 | Concurrency: Dynamic initialization and destruction with concurrency | Yes |
C++2011-N2664 | Concurrency: Data-dependency ordering: atomics and memory model | No |
C++2011-N2672 | Initializer lists | Yes |
C++2011-N2748 | Concurrency: Strong Compare and Exchange | No |
C++2011-N2752 | Concurrency: Bidirectional Fences | No |
C++2011-N2756 | Nonstatic data member initializers | Yes |
C++2011-N2761 | Generalized attributes | Yes |
C++2011-N2764 | Forward declarations for enums | Yes |
C++2011-N2765 | User-defined literals | Yes |
C++2011-N2927 | New wording for C++0x lambdas | Yes |
C++2011-N2928 | Explicit virtual overrides | Yes |
C++2011-N2930 | Range-based for | Yes |
C++2011-N3050 | Allowing move constructors to throw [noexcept] | Yes |
C++2011-N3053 | Defining move special member functions | Yes |
C++2011-N3276 | decltype and call expressions | Yes |
See Also
C++ standard version (-cpp-version)