summaryrefslogtreecommitdiff
path: root/devdocs/c/language%2Fhistory.html
diff options
context:
space:
mode:
Diffstat (limited to 'devdocs/c/language%2Fhistory.html')
-rw-r--r--devdocs/c/language%2Fhistory.html154
1 files changed, 154 insertions, 0 deletions
diff --git a/devdocs/c/language%2Fhistory.html b/devdocs/c/language%2Fhistory.html
new file mode 100644
index 00000000..62ab470b
--- /dev/null
+++ b/devdocs/c/language%2Fhistory.html
@@ -0,0 +1,154 @@
+ <h1 id="firstHeading" class="firstHeading">History of C</h1> <h2 id="Early_C"> Early C</h2> <ul>
+<li> 1969: B created, based on BCPL, to replace PDP-7 assembler as the system programming language for Unix </li>
+<ul><li> added operators <code>++</code>, <code>--</code>, compound assignment, remained a typeless language like BCPL </li></ul>
+<li> 1971: NB ("new B") created when porting B to PDP-11 </li>
+<ul><li> types (<code>int</code>, <code>char</code>, arrays and pointers), array-to-pointer conversion, compilation to machine code </li></ul>
+<li> 1972: Language renamed to C </li>
+<ul><li> <code>struct</code>, operators <code>&amp;&amp;</code> and <code>||</code>, preprocessor, portable I/O </li></ul>
+<li> 1973: Unix re-written in C </li>
+<ul><li> <code>unsigned</code>, <code>long</code>, <code>union</code>, enumerations, increased type safety </li></ul>
+<li> 1978: The C Programming Language, 1st edition </li>
+</ul> <h2 id="Standard_C"> Standard C</h2> <ul>
+<li> 1983: ANSI established X3J11 committee </li>
+<li> 1988: The C Programming Language, 2nd edition </li>
+<li> 1989: <b>C89</b>, the ANSI C standard published </li>
+</ul> <ol>
+<li> codified existing practices </li>
+<li> new features: <code>volatile</code>, <code>enum</code>, <code>signed</code>, <code>void</code>, locales </li>
+<li> From C++: <code>const</code>, function prototypes </li>
+</ol> <ul>
+<li> 1990: <b>C90</b>, the ANSI C standard accepted as ISO/IEC 9899:1990 </li>
+<li> 1994: Technical corrigendum 1 (ISO/IEC 9899:1990/Cor.1:1994) </li>
+<ul><li> <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/tc1.htm">44 small changes</a> </li></ul>
+<li> 1995: <b>C95</b> (ISO/IEC 9899:1990/Amd.1:1995) (<a rel="nofollow" class="external text" href="https://infostore.saiglobal.com/store/Details.aspx?DocN=isoc000767513">online store</a>) </li>
+</ul> <ol>
+<li> greatly expanded wide and multibyte character support (<code>&lt;wctype.h&gt;</code>, <code>&lt;wchar.h&gt;</code>, additions and changes to stream I/O, etc) </li>
+<li> digraphs, <code>&lt;iso646.h&gt;</code>, </li>
+</ol> <ul>
+<li> 1996: Technical corrigendum 2 (ISO/IEC 9899:1990/Cor.2:1996) </li>
+<ul><li> <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/tc2.htm">24 small changes</a> </li></ul>
+<li> 1999: <b>C99</b> (ISO/IEC 9899:1999) </li>
+</ul> <ol>
+<li> new features: <code>bool</code>, <code>long long</code>, <code>&lt;stdint.h&gt;</code>, <code>&lt;inttypes.h&gt;</code>, <code>restrict</code>, compound literals, variable length arrays, flexible array members, designated initializers, <code>&lt;fenv.h&gt;</code>, variadic macros, complex numbers, <code>__func__</code>, hexadecimal floating point format (<code>%a</code>), monetary formatting in <code><a href="../locale/lconv" title="c/locale/lconv">lconv</a></code>, <code><a href="../string/byte/isblank" title="c/string/byte/isblank">isblank</a></code>, concatenation of narrow and wide string literals, trailing comma in enumerations, empty arguments in function-like macros, <code>STDC_*</code> pragmas, <code>va_copy</code>, null return of <code><a href="../io/tmpnam" title="c/io/tmpnam">tmpnam</a></code>, null pointer in <code><a href="../io/setvbuf" title="c/io/setvbuf">setvbuf</a></code>, <code>hh</code> and <code>ll</code> length-specifiers in <code><a href="../io/fprintf" title="c/io/fprintf">printf</a></code>, <code><a href="../io/fprintf" title="c/io/fprintf">snprintf</a></code>, <code><a href="../program/_exit" title="c/program/ Exit">_Exit</a></code>, <code>&lt;tgmath.h&gt;</code>, POSIX-like <code><a href="../chrono/strftime" title="c/chrono/strftime">strftime</a></code> specifiers </li>
+<li> from C++: <code>inline</code>, mix declarations and code, declarations in the init-clause of the for loop, <code>//</code> comments, universal character names in source code </li>
+<li> removed implicit functions and implicit <code>int</code> </li>
+</ol> <ul>
+<li> 2001: Technical corrigendum 1 (ISO/IEC 9899:1999/Cor.1:2001) </li>
+<ul><li> <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/9899tc1/.">11 defects fixed</a> </li></ul>
+<li> 2004: Technical corrigendum 2 (ISO/IEC 9899:1999/Cor.2:2004) </li>
+<li> 2004: Unicode TR (ISO/IEC TR 19769:2004) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=33907">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1040.pdf">N1040</a> November 7, 2003 draft) </li>
+<li> 2007: Technical corrigendum 3 (ISO/IEC 9899:1999/Cor.3:2007) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1256.pdf">N1256</a> September 7, 2007 draft) </li>
+<ul><li> deprecated <code><a href="../io/gets" title="c/io/gets">gets</a></code> </li></ul>
+<li> 2007: Bounds-checking interfaces TR (ISO/IEC TR 24731-1:2007) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/catalogue_detail.htm?csnumber=38841">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1225.pdf">N1225</a> March 28, 2007 draft) </li>
+<li> 2008: Embedded TR (ISO/IEC TR 18037:2008) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/catalogue_detail.htm?csnumber=51126">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1021.pdf">N1021</a> September 24, 2003 draft) </li>
+<li> 2009: Decimal floating-point TR (ISO/IEC TR 24732:2009) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/catalogue_detail.htm?csnumber=38842">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1241.pdf">N1241</a> July 5, 2007 draft) </li>
+<li> 2009: Mathematical special functions TR (ISO/IEC TR 24747:2009) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/catalogue_detail.htm?csnumber=38857">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1182.pdf">N1182</a> August 2, 2006 draft) </li>
+<li> 2010: Dynamic allocations functions TR (ISO/IEC TR 24731-2:2010) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/catalogue_detail.htm?csnumber=51678">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1388.pdf">N1388</a> June 1, 2009 draft) </li>
+<li> 2011: <b>C11</b> (ISO/IEC 9899:2011) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=57853">ISO store</a>) (<a rel="nofollow" class="external text" href="https://webstore.ansi.org/RecordDetail.aspx?sku=INCITS%2fISO%2fIEC+9899-2012#.UGCvLIHyaHM">ANSI store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1570.pdf">N1570</a> April 12, 2011 draft) </li>
+</ul> <ol>
+<li> thread-aware memory model, <code>&lt;stdatomic.h&gt;</code>, <code>&lt;threads.h&gt;</code>, type-generic functions, <code>alignas</code>/<code>alignof</code>, <code>noreturn</code>, <code>static_assert</code>, analyzability extensions, extensions to complex and imaginary types, anonymous structures and unions, exclusive file open mode, <code><a href="../program/quick_exit" title="c/program/quick exit">quick_exit</a></code> </li>
+<li> removed <code><a href="../io/gets" title="c/io/gets">gets</a></code> </li>
+<li> from Bounds-checking interfaces TR: bounds-checking interfaces, </li>
+<li> from Unicode TR: <code>char16_t</code>, <code>char32_t</code>, and <code>&lt;uchar.h&gt;</code> </li>
+</ol> <ul>
+<li> 2012: Technical corrigendum 1 (ISO/IEC 9899:2011/Cor 1:2012) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=61717">ISO store</a>) </li>
+<ul><li> Fixes <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2244.htm#dr_411">DR 411</a> </li></ul>
+<li> 2013: Secure Coding Rules TS (ISO/IEC TS 17961:2013) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/catalogue_detail.htm?csnumber=61134">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1718.pdf">N1718</a> May 30, 2013) </li>
+<li> 2014: FP TS part 1: Binary floating-point arithmetic (ISO/IEC TS 18661-1:2014) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/catalogue_detail.htm?csnumber=63146">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1778.pdf">N1778</a> 2013 draft) </li>
+</ul> <ol><li> provides changes to C11 (mostly to Annex F) that cover all basic requirements and some recommendations of IEC 60559:2011 (C11 was built on IEC 60559:1989) </li></ol> <ul><li> 2015: FP TS part 2: Decimal floating-point arithmetic (ISO/IEC TS 18661-2:2015) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=68882">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1912.pdf">N1912</a> 2015 draft) </li></ul> <ol><li> provides changes to C11 to support all the requirements, plus some basic recommendations, of IEC 60559:2011 for decimal floating-point arithmetic. This supersedes ISO/IEC TR 24732:2009. </li></ol> <ul><li> 2015: FP TS part 3: Interchange and extended types (ISO/IEC TS 18661-3:2015) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=65615">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1945.pdf">N1945</a> 2015 draft) </li></ul> <ol><li> provides changes to C11 to support the recommendations of IEC 60559:2011 for extended floating‐point formats and the interchange formats, both arithmetic and non-arithmetic. </li></ol> <ul><li> 2015: FP TS part 4: Supplementary functions (ISO/IEC TS 18661-4:2015) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=65616">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1950.pdf">N1950</a> 2015 draft) </li></ul> <ol><li> provides changes to C11 to support all mathematical operations recommended by IEC 60559:2011, including trigonometry in π units, inverse square root, compounded interest, etc. </li></ol> <ul><li> 2016: FP TS part 5: Supplementary attributes (ISO/IEC TS 18661-5:2016) (<a rel="nofollow" class="external text" href="https://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=65617">ISO store</a>) (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2004.pdf">N2004</a> 2016 draft) </li></ul> <ol><li> provides changes to C11 to support all supplementary attributes (evaluation model, exception handling, reproducibility, etc) recommended by IEC 60559:2011 </li></ol> <ul><li> 2018: <b>C17</b> (ISO/IEC 9899:2018) (<a rel="nofollow" class="external text" href="https://www.iso.org/standard/74528.html">ISO Store</a>) (<a rel="nofollow" class="external text" href="https://files.lhmouse.com/standards/ISO%20C%20N2176.pdf">Final draft</a>) </li></ul> <a href="../17" title="c/17">Main Article: C17</a> <div style="margin-left:0px"> <table class="mw-collapsible mw-collapsed"> <tr> <th>Defect Reports fixed in C17 (54 defects) </th>
+</tr> <tr> <td> <ul>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_400">DR 400</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_401">DR 401</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_402">DR 402</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_403">DR 403</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_404">DR 404</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_405">DR 405</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_406">DR 406</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_407">DR 407</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_410">DR 410</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_412">DR 412</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_414">DR 414</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_415">DR 415</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_416">DR 416</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_417">DR 417</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_419">DR 419</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_423">DR 423</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_426">DR 426</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_428">DR 428</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_429">DR 429</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_430">DR 430</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_431">DR 431</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_433">DR 433</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_434">DR 434</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_436">DR 436</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_437">DR 437</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_438">DR 438</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_439">DR 439</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_441">DR 441</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_444">DR 444</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_445">DR 445</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_447">DR 447</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_448">DR 448</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_450">DR 450</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_452">DR 452</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_453">DR 453</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_457">DR 457</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_458">DR 458</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_459">DR 459</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_460">DR 460</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_462">DR 462</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_464">DR 464</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_465">DR 465</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_468">DR 468</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_470">DR 470</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_471">DR 471</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_472">DR 472</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_473">DR 473</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_475">DR 475</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_477">DR 477</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_480">DR 480</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_481">DR 481</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_485">DR 485</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_487">DR 487</a> </li>
+<li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_491">DR 491</a> </li>
+</ul> </td>
+</tr>
+</table>
+</div> <h3 id="Future_development"> Future development</h3> <ul>
+<li> Parallelism TS (Draft <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2017.pdf">N2017</a> 2016-03-10) </li>
+<li> Transactional Memory TS (Draft <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n1961.pdf">N1961</a> 2015-09-23) </li>
+<li> <b>C23</b> (Latest draft <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n3096.pdf">n3096</a> 2023-04-01) </li>
+</ul> <ol><li> List of issues that were not granted DR status: (<a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2556.pdf">N2556</a> 2020-08-02) </li></ol> <dl>
+<dd>
+<a href="../23" title="c/23">Main Article: C23</a> </dd>
+<dd>Next major C language standard revision </dd>
+</dl> <div style="margin-left:0px"> <table class="mw-collapsible mw-collapsed"> <tr> <th>Defect Reports fixed in C23 (? defects) </th>
+</tr> <tr> <td> <ul>
+<li> <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2379.htm">DR 440</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2326.htm">DR 432</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2326.htm">DR 467</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2396.htm#dr_476">DR 476</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2324.htm">DR 482</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2396.htm#dr_488">DR 488</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2713.htm">DR 489</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2396.htm#dr_494">DR 494</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2396.htm#dr_496">DR 496</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2396.htm#dr_497">DR 497</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2396.htm#dr_499">DR 499</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2396.htm#dr_500">DR 500</a> </li>
+<li> <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2396.htm#dr_501">DR 501</a> </li>
+</ul> </td>
+</tr>
+</table>
+</div> <h3 id="See_also"> See also</h3> <table class="t-dsc-begin"> <tr class="t-dsc"> <td colspan="2"> <span><a href="https://en.cppreference.com/w/cpp/language/history" title="cpp/language/history">C++ documentation</a></span> for <span class=""><span>History of C++</span></span> </td>
+</tr> </table> <h3 id="External_links"> External links</h3> <table> <tr style="vertical-align:top;"> <td>1. </td> <td>
+<a rel="nofollow" class="external text" href="https://www.bell-labs.com/usr/dmr/www/chist.html">The Development of the C Language</a> by Dennis M. Ritchie </td>
+</tr> <tr style="vertical-align:top;"> <td>2. </td> <td>
+<a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/C99RationaleV5.10.pdf">Rationale for the C99 standard</a> </td>
+</tr>
+</table> <div class="_attribution">
+ <p class="_attribution-p">
+ &copy; cppreference.com<br>Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.<br>
+ <a href="https://en.cppreference.com/w/c/language/history" class="_attribution-link">https://en.cppreference.com/w/c/language/history</a>
+ </p>
+</div>