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++ |