Namespaces
Variants
Views
Actions

Template:compiler support row

From cppreference.com

[edit] Template

Used for creating a row in the compiler support table. The parameters are as follows:

Parameter Required? Meaning
feature Yes A value for the feature column. Use page links to the areas on the wiki explaining the feature, if possible.
reference Yes The normative reference for the changes to the standard defining the feature.
version Yes A string, such as c++11 or c++23, representing the C++ version. Used for forward compatibility with potentially changing set of compilers.

The remaining parameters are all optional and specify the compiler support for the feature. If left unspecified, then {{no}} will be used.

Example:

{{compiler support|std=c++11|
...
{{compiler_support_row
|feature=Extended [[cpp/language/friend|{{c|friend}} declarations]]
|reference={{wg21|N1791}}
|version=c++11
|hp={{yes|A.06.25}}
|edg={{yes|4.1}}
|gcc={{yes|4.7}}
|icc={{yes|{{popup|partial|11.1}}<br>12.0}}
|msvc={{yes|{{msvc ver|2010}} (partial)<br>{{msvc ver|2013}}}}
|ibm={{yes|11.1}}
|sun={{yes|5.13}}
|embar={{yes}}
|clang={{yes|2.9}}
|aclang={{yes}}
|cray={{yes|8.4}}
|pgi={{yes|2015}}
|nvcc={{yes|7.0}}
}}
...
}}

Results in:

C++11 feature

 
Paper(s)

 
GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
IBM XL C++
IBM Open XL C++ for AIX
IBM Open XL C++ for z/OS
Sun/Oracle C++
Embarcadero C++ Builder
Cray
Nvidia HPC C++ (ex PGI)*
Nvidia nvcc
HP aCC
Digital Mars C++
Extended friend declarations N1791 4.7 2.9 16.0* (partial)
18.0*
Yes 4.1 11.1*
12.0
5.13 Yes 8.4 2015 7.0 A.06.25
 

C++11 feature
 

Paper(s)
GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
IBM XL C++
IBM Open XL C++ for AIX
IBM Open XL C++ for z/OS
Sun/Oracle C++
Embarcadero C++ Builder
Cray
Nvidia HPC C++ (ex PGI)*
Nvidia nvcc
HP aCC
Digital Mars C++