Document number: WG14 N742 (J11 97-105) Title: Status of approved proposals for C9X (Post-London) Author: Douglas Walls Date: June 27, 1997 Below find the status of approved proposals for inclusion in C9X, i.e. proposals at Stages 3-6. The proposal numbers represent the last papers seen by the committee on this proposal. The dates represent the meeting date at which the proposal was approved. See the minutes of that meeting for full details. The current C9X draft is draft 10. Proposals approved and already included in C9X draft 10, stage 5: N448 (10/95) Restricted pointers N472 (10/95) Designated initializers N570 (2/96) Empty arguments in macro replacement N570 is result of editorial review committee, N548 was approved at 2/96 meeting prior to final wording N401 (2/96) Has errors in the current c9x draft. N522 (2/96) Tag compatibility Final words as seen by the full committee approved by the review committee. This was added to the C9X draft. N505 (6/96) Make qualifiers idempotent Final words for this proposal appear in the 6/96 Amsterdam meeting minutes, N615. N617 (10/96) Signed integer division Approved with changes detailed in the 10/96 Toronto minutes. N601 (10/96) long long int Approved with changes detailed in the 10/96 Toronto minutes. N593 (10/96) New Form of Pragma N599 (10/96) Restricted pointer library changes Approved with changes detailed in the 10/96 Toronto minutes. N568 (10/96) Stringizing empty pp_token sequences N579 (10/96) Add to translation phase 4 "All preprocessing directives are then deleted". Final words for this change appear in the 10/96 Toronto meeting minutes. N595 (10/96) Floating Point C Extensions Approved with changes detailed in the 10/96 Toronto minutes. Problems with some footnotes and tables remain, otherwise it has been added to the c9x draft. N596 (10/96) Complex C Extensions, w/Imaginary types in an informative Annex Approved as amended by N620, see 10/96 Toronto minutes. Problems with some footnotes and tables remain, otherwise it has been added to the c9x draft. N590 (10/96) Translation Limits Approved with changes detailed in the 10/96 Toronto minutes. N640 (02/97) Access to Objects Approved with changes detailed in the 02/97, Kona minutes N636 (02/97) Implicit function declaration removal N651 (02/97) C9X, Editorial use term "real-floating" Approved with changes detailed in the 02/97, Kona minutes N635 (02/97) Implicit int removal (old-style parameters) Approved with changes detailed in the 02/97, Kona minutes Proposals approved for inclusion into the C9X draft but substantially missing from the latest C9X draft, stage 4: N602 (10/96) strtoimax() & strtoumax() functions Approved with changes detailed in the 10/96 Toronto minutes. N611 (10/96) Addition of predefined identifier __func__ Approved with changes detailed in the 10/96 Toronto minutes. N638 (02/97) Floating-Point and Complex Arithmetic Enhancements Approved items 1, 2, 4, 7 with changes to #7 detailed in the 02/97, Kona minutes. Of these 1 & 7 have been added to draft 10, 2 & 4 have been added incorrectly. N657 (02/97) Floating-Point and Complex Arithmetic Enhancements Approved item 9, 13 and 14 as is. Approved item 6, 11 and 12 with changes detailed in the 02/97, Kona minutes Items 9, 13 and 14 have been added to draft 10. Items 6, 11 and 12 have all been added incorrectly to draft 10. Item 6 has very serious errors, this was the scalbn() changes. N631 (02/97) Standard Pragmas Approved with changes detailed in the 02/97, Kona minutes Has been partially added with errors to draft 10. N644 (02/97) Add // comments Approved with changes detailed in the 02/97, Kona minutes Has been added with errors to draft 10. N661 (02/97) Disallow implicit "int" in declarations Has been added with some minor errors to draft 10. N587 (02/97) Proposed wording for bool Approved with changes detailed in the 02/97, Kona minutes N629 (02/97) Type rules for decimal integer constants Approved with changes detailed in the 02/97, Kona minutes Added with very serious errors to draft 10. N645 (02/97) Alternative to sprintf Approved with changes detailed in the 02/97, Kona minutes This has been added differently than passed. The difference may be within redactor's editorial discretion, but I've marked it as incorrect for discussion during editorial review (See page 248 of draft 10). N655 (02/97) N504 and N643 (C9X Draft 8) N634 (02/97) New Form of Pragma, Version 4 Approved as amended by the 02/97, Kona minutes This has been added incorrectly, it has serious errors, but some of it is there. N705 (06/97) Defect Reports since TC2 that promise some action in C9X Approved DR 145, 150, 155, 158 & 162 as amended by the 06/97, London minutes Approved DR 160 as is N692 (06/97) Implicit int cleanup N701 (06/97) vscanf Approved as amended by the 06/97, London minutes N693 (06/97) Type-Generic Math Functions N691 (06/97) Representation of values Approved as amended by the 06/97, London minutes N717 (06/97) Extended Identifiers Approved as amended by the 06/97, London minutes N698 (06/97) Implementation Defined Integral Types Approved as amended by the 06/97, London minutes N686 (06/97) Obsolescent Features of the C standard Delete 6.9.5, Array parameters from the obsolescent list in C9X N707 (06/97) Varargs for function-like macros N671 (06/97) va_copy Approved as amended by the 06/97, London minutes N673 (06/27) adjustments to phases of translation Only changes for 5.1.1.2 as approved in the 06/97, London minutes N675 (06/97) DRs 77, 143, 144, 146, 147 and 149 DR 77, approved as amended by the 06/97, London minutes Wording changes for DRs 144, 146, 147 & 149 approved as is N722 (06/27) removing implicit int (from N692) N716 (06/97) Compound literals N721 (06/97) Unary * operator - a fix Approved as amended by the 06/97, London minutes N682 (06/97) Suggested edits for C9X Draft 9 section 6.5.3 (Restrict) Approved as amended by the 06/97, London minutes N694 (06/97) FP & Complex Arithmetic Enhancements Approved as amended by the 06/97, London minutes in two places N729 (06/97) Mode strings in fopen() N728 (06/97) scalbn N723 (06/97) Changes to shift operators Approved as amended by the 06/97, London minutes N724 (06/97) Minor alteration to representation of types N730 (06/97) Cleanup of aggregate initialization N735 (06/97) General Wording Issues Approved as is Option b of item 1 N696 (06/97) Standard Pragmas - Improved Wording Approved as amended by the 06/97, London minutes N703 (06/97) Standards wording for ÒungetcÓ Approved as amended by the 06/97, London minutes N683 (06/97) Final Edits for incorporating VLAs into C9X Approved as amended by the 06/97, London minutes N733 (06/97) New formats for strftime() N695 (06/97) Grammar Start Symbol Approved as amended by the 06/97, London minutes N685 (06/97) Compatibility Issues with Union Members N739 (06/97) General wording issues (N676 updated) Approved items 2,3,4,5,6A,6B,8,9A,10 & 14 with corrections to 5 and 6A as recorded by the 06/97, London minutes N734 (06/97) Misc. FP Cleanup Items Approved as amended by the 06/97, London minutes N740 (06/97) Mixing declarations and code Approved as amended by the 06/97, London minutes N688 (06/97) namespace issues Approved as amended by the 06/97, London minutes DR142 (06/97) Reservation of macro names Words appear in the 6/97, London minutes N736 (06/97) Preprocessor arithmetic Approved as amended by the 06/97, London minutes N741 (06/97) Inlining Proposal Approved as amended by the 06/97, London minutes N743 (06/97) Bit - field Enhancements N738 (06/97) Improved boolean wording Approved without words at 06/97, London meeting Proposals principally approved, final wording to be drafted by review committee, stage 3: N672 (06/97) reorder subclauses 6.1 and 6.2 N725 (06/97) Simplified integer conversion rules Reminder of what the stages mean, the stages only give the state the proposal is in. Proposals can skip stages. This is adapted from N556 and N585 as accepted at the June 96, Amsterdam meeting: Stage 1 = proposal w/o technical details requesting interest from WG14 for development of a technical proposal. Stage 2 = technical proposal, ready for consideration by WG14. Stage 3 = principally accepted, for inclusion into C9X. At this stage the exact C9X changes must be drafted and edited by the review committee. After review, the final C9X changes are to be included in a mailing for final approval by WG14 for inclusion into the C9X draft. Stage 4 = accepted by WG14 for inclusion as is into C9X. The proposal contains the specific editing instructions to change the C9X draft, and is ready to be included in the next C9X draft. Stage 5 = changes applied to the latest C9X draft. Stage 6 = verified by the review committee as being correctly applied in the C9X draft.