C99 のコンパイラサポート
From cppreference.com
[編集] C99のコア言語機能
| このセクションは未完成です 理由:Cコンパイラのリストアップ、検証が必要 |
| C99の機能 |
提案文書 |
GCC |
Clang |
MSVC |
Apple Clang |
EDG eccp |
Intel C++ |
Nvidia HPC C++ (旧 PGI)* |
Nvidia nvcc |
Cray |
|
|---|---|---|---|---|---|---|---|---|---|---|---|
| 識別子における汎用文字名 | 3.1 | はい | はい | ||||||||
| 増加した翻訳制限 | N590 | 0.9 | N/A | ||||||||
| // コメント | N644 | 2.7 | はい | はい | |||||||
| restrictポインタ | N448 | 2.95 | はい | 部分的* | |||||||
| 拡張された算術型 | N815 N601 N620 N638 N657 N694 N809 |
はい | 部分的 | 多分 | |||||||
| フレキシブル配列メンバ | 3.0 | はい | はい | ||||||||
| 可変長配列 (VLA) 型 | N683 | 0.9 | はい | ||||||||
| 可変修飾 (VM) 型 | N2778 | N/A | はい | ||||||||
| 指示付き初期化子 | N494 | 3.0 | はい | はい | |||||||
| 非定数初期化子 | 1.21 | N/A | |||||||||
| 冪等なcvr修飾子 | N505 | 3.0 | N/A | ||||||||
| enumerator-listの末尾カンマ | 0.9 | はい | はい | ||||||||
| 16進浮動小数点定数 | N308 | 2.8 | はい | はい | |||||||
| 複合リテラル | N716 | 3.1 | はい | はい | |||||||
| 浮動小数点環境 | 部分的 | 部分的 | |||||||||
| 符号付き整数型の除算における切り捨ての要求 | N617 | 0.9 | N/A | ||||||||
main()関数における暗黙的なreturn 0; |
はい | はい | はい | ||||||||
| 宣言と文の混在 | N740 | 3.0 | はい | はい | |||||||
| forループにおけるinit-statement | はい | はい | はい | ||||||||
| inline関数 | N741 | 4.3 | はい | はい | |||||||
| 定義済み変数__func__ | N611 | 2.95 | はい | はい | |||||||
| 関数宣言内の[]におけるcvr修飾子とstatic | 3.1 | はい | |||||||||
| 可変引数マクロ | N707 | 2.95 | はい | はい | |||||||
| _Pragmaプリプロセッサ演算子 | N634 | 3.0 | はい | 部分的* | |||||||
| 浮動小数点評価のための標準プラグマ | N631 N696 |
いいえ | いいえ | ||||||||
| C99の機能 |
提案文書 |
GCC |
Clang |
MSVC |
Apple Clang |
EDG eccp |
Intel C++ |
Nvidia HPC C++ (旧 PGI)* |
Nvidia nvcc |
Cray |