Skip to content

C - プロジェクトの現状とマイルストーン

ISO/IEC 9899 - C規格の改訂について

WG14の主な成果物はC標準であるISO/IEC 9899です。以下は同委員会が作成したISO/IEC 9899の改訂版のリストです。

改訂ISO出版類似ドラフト
C2x使用不可N3047 [2022-08-04]
C17ISO/IEC 9899:2018N2310 [2018-11-11] (C2x初期ドラフト)
C11ISO/IEC 9899:2011N1570 [2011-04-04]
C99ISO/IEC 9899:1999N1256 [2007-09-07]
C89ISO/IEC 9899:1990使用不可

変更と明確化の要求

ISO/IEC JTC1/SC22/WG14 はISO/IEC 9899 に対する変更と明確化の要求(以前は不具合報告と呼ばれていた)を処理し、以下の対応記録を作成しました。

ISO出版概論資料
ISO/IEC 9899:2018N2396
ISO/IEC 9899:2011N2148
ISO/IEC 9899:1999List of C99 CRs
ISO/IEC 9899:1990List of C90 CRs

さらに、WG14は委員会が適用可能な場合、C標準の旧バージョンに適用すべきと合意した提案のリストを追跡しています。これらの提案はC標準の現在のワーキングドラフトに採用されていますが、実装がそのようなモードをユーザーに提供することを選択した場合、Cの以前のバージョンへの拡張として扱うことが合理的です。詳しくは、旧バージョンのC言語拡張の一覧をご覧ください。

重要な委員会資料

以下は、委員会の業務遂行方法に関する標準資料(SD)またはその他の文書である。

資料目的
SD-1メール配信・会議情報
SD-2研究会組織情報
SD-3C11の旧DRプロセスに当てはまらない提案の一部リスト
N2611Cのための原則の委員会綱領

TS 18661: C言語用浮動小数点演算拡張機能

このTS(技術仕様)は5つのパートからなり、そのすべてがISOから入手可能である。なお、パート1~3はC2xに全面的に採用され、パート4はC2xに部分的に採用された。

Purpose ISO publication Latest draft Part 1: Binary float-point arithmetic ISO/IEC TS 18661-1:2014 N1711 Part 2: Decimal floating-point arithmetic ISO/IEC TS 18661-2:2015 N1912 Part 3: Interchange and extended types ISO/IEC TS 18661-3:2015 N1896 Part 4: Supplementary functions ISO/IEC TS 18661-4:2015 N1897 Part 5: Supplementary attributes ISO/IEC TS 18661-5:2016 N2004

TS 17961: Cセキュアコーディングルール

WG14 has published a TS on rules for writing secure code in C. The TS focuses on requirements for implementations wishing to diagnose insecure C code. The latest draft is in document N1717 and the ISO publication is document ISO/IEC TS 17961:2013. A Technical Corrigendum (TC) was published to correct issues with the original publication. The latest draft is in document N2010 and the ISO publication is document ISO/IEC TS 17961:2013/COR 1:2016.

TR 18037: 組み込みC

WG14 has published a TR (Technical Report) on Embedded C, which is available for free from ISO at ISO/IEC TR 18037:2008.

TR 24731-1: C言語ライブラリの拡張機能 その1:境界チェックのインターフェース

WG14 has published a TR on extensions to the C Library for bounds-checking interfaces. This TR is oriented towards modifying existing programs, often by adding an extra parameter with the buffer length. The latest draft is in document N1225 and the ISO publication is document ISO/IEC TR 24731-1:2007. A rationale is in N1173.

TR 24731-2: C言語ライブラリの拡張 - 第2回:動的割り当て関数

WG14 has published a TR on extensions to the C Library for dynamic allocation functions. This TR is oriented towards new programs using dynamic allocation instead of an extra parameter for the buffer length. The latest draft is in document N1388 and the official ISO publication is ISO/IEC TR 24731-2:2010.

TR 24732: 10進浮動小数点

WG14 has published a TR on extensions to the C programming language to support decimal floating-point arithmetic. The latest draft is in document N1312 and the official ISO publication is ISO/IEC TR 24732:2009. A rationale document is in N1242. N.B.: this technical report has been superceded by ISO/IEC TS 18661-2:2015, which was adopted into C2x.

TR 24747: 数学的特殊関数

WG14 has published a TR on extensions to the C Library to support mathematical special functions. The latest draft is in document N1292 and the official ISO publication is ISO/IEC TR 24747:2009. A rationale document is in N1244.

TR 19769: C言語の新しい文字型

WG14 had published a TR on new character types, including support for UTF-16, called TR 19769 - Extensions for the programming language C to support new character data types. This TR has been withdrawn because a revised version of its text was merged into the C Standard. The draft of the TR that was approved for publication can be found in document N1040.

SC22/WG14 マイルストーン

  • 2018: Published ISO/IEC 9899:2018 (aka C17)
  • 2016: Published ISO/IEC TS 18861-5:2016 (aka supplementary attributes)
  • 2016: Published ISO/IEC TS 17961:2013/COR 1:2016 (aka C secure coding rules TC1)
  • 2015: Published ISO/IEC TS 18861-4:2015 (aka supplementary functions)
  • 2015: Published ISO/IEC TS 18861-3:2015 (aka interchange and extended types)
  • 2015: Published ISO/IEC TS 18861-2:2015 (aka decimal floating-point)
  • 2014: Published ISO/IEC TS 18861-1:2014 (aka binary floating-point)
  • 2013: Published ISO/IEC TS 17961:2013 (aka C secure coding rules)
  • 2012: Published ISO/IEC 9899:2011/Cor 1:2012
  • 2011: Published ISO/IEC 9899:2011 (aka C11)
  • 2010: Published ISO/IEC TR 24731-2:2010 (aka dynamic allocation functions)
  • 2009: Published ISO/IEC TR 24732:2009 (aka decimal floating-point)
  • 2009: Published ISO/IEC TR 24747:2009 (aka mathematical special functions)
  • 2008: Published ISO/IEC TS 18037:2008 (aka, embedded C)
  • 2007: Published ISO/IEC 9899:1999/Cor 3:2007
  • 2007: Published ISO/IEC TR 24731-1:2007 (aka bounds-checking interfaces)
  • 2004: Published ISO/IEC 9899:1999/Cor 2:2004
  • 2004: Published ISO/IEC TR 19769:2004 (aka new character data types)
  • 2001: Published ISO/IEC 9899:1999/Cor 1:2001
  • 2000: Published ISO/IEC 9899:1999 (aka C99)
  • 1995: Published ISO/IEC 9899:1990/AMD 1:1995 (aka C95)
  • 1990: Published ISO/IEC 9899:1990 (aka C90)
  • 1989: Published ANSI X3.159-1989 (aka C89 or ANSI C)