diff --git a/en/projects/c99/index.sgml b/en/projects/c99/index.sgml new file mode 100644 index 0000000000..0bbc1b0909 --- /dev/null +++ b/en/projects/c99/index.sgml @@ -0,0 +1,967 @@ + + + + + %includes; + %developers; + + + + + + + + + + +"> +"> +"> +"> +"> + + + + +assert(3)"> +printf(3)"> +scanf(3)"> +strtod(3)"> +printf(9)"> +]> + + + + FreeBSD C99 & POSIX Conformance Project + + + + + FreeBSD C99 & POSIX Conformance Project + +

Last updated: 10 April, 2002

+ + Project Goal + +

The FreeBSD C99 & POSIX Conformance Project aims + to implement all requirements of the ISO 9899:1999 (C99) and + IEEE 1003.1-2001 (POSIX) standards. In cases where aspects of + these standards cannot be followed, those aspects will be documented + in the c99(7) or posix(7) manuals. It is also an aim of this + project to implement regression tests to ensure correctness + whenever possible.

+ + Project Plan + +

All of the initial development will take place in the + 5.0-CURRENT branch and hopefully most of the changes will + eventually be merged into the 4-STABLE branch. Since this is a + rather large project and is being done on a volunteer basis, + there is no set schedule.

+ + How to Contribute + +

The project is always looking for additional contributors. If you + wish to participate, the best way to find out what is happening + is to subscribe to the freebsd-standards + mailing list. If you are working on a specific task + relating to the project, you should contact + mike@FreeBSD.org with a + description of the task so that your task can be listed + below.

+ + Resources and Links + + + + Status Board

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Task Responsible Last Updated Status
5.0 4.x
Documentation
Document standards conformity level of the API.   26 March 2002 &status.wip; &status.blank;
Document thread safety and async-cancel safety.   26 March 2002 &status.wip; &status.blank;
Create c99(7) and posix(7) manuals.   11 December 2001 &status.new; &status.blank;
Document in posix(7) that the batch job management utilities + are available in the port net/generic-nqs.   11 December 2001 &status.new; &status.blank;
Functions and System Calls
Implement strerror_r(). &a.wes; 20 December 2001 &status.done; &status.done;
Implement tgamma() based on Lite1's gamma(). &a.bde; 27 March 2002 &status.done; &status.n-a;
Add __func__ reporting to &man.assert.3;. &a.asmodai; 27 October 2001 &status.done; &status.new;
Implement imaxabs(), imaxdiv(), llabs(), lldiv(). &a.mike; 14 November 2001 &status.done; &status.new;
Implement atoll(), strtoimax(), strtoumax(). &a.fenner; 27 November 2001 &status.done; &status.new;
Implement new C99 format types in &man.printf.3;. &a.wollman;,
&a.fenner;
30 November 2001 &status.done; &status.new;
Implement new format types in &man.scanf.3;. &a.fenner; 26 October 2001 &status.wip; &status.blank;
Implement strtof(), strtold(). &a.phantom; 20 December 2001 &status.wip; &status.blank;
Investigate syncing strtod.c with David M. Gay (Lucent)'s + sources. &a.phantom; 11 December 2001 &status.wip; &status.blank;
Implement getgrgid_r(), getgrnam_r(). &a.wes; 20 December 2001 &status.wip; &status.blank;
Implement getpwnam_r(), getpwuid_r(). &a.wes; 20 December 2001 &status.wip; &status.blank;
Implement new functions that appear in <complex.h>. &a.markm; 6 February 2002 &status.wip; &status.blank;
Implement new conversion specifiers (%j and %z) in + &man.printf.9;. &a.dd; 5 April 2002 &status.wip; &status.blank;
Implement new functions that appear in <fenv.h>. &a.fenner; 14 November 2001 &status.new; &status.blank;
Make non thread-safe functions thread-safe.   22 October 2001 &status.new; &status.blank;
Make functions async-cancel safe.   22 October 2001 &status.new; &status.blank;
Add restrict type-qualifier to functions that require it.   27 October 2001 &status.new; &status.blank;
Implement new POSIX format types in &man.printf.3;.   30 November 2001 &status.new; &status.blank;
Headers
Fix prototypes and hide non-conforming portions of header + <arpa/inet.h>. &a.mike; 19 February 2002 &status.done; &status.n-a;
Add exposure control primitives to <sys/cdefs.h> + (originally developed by &a.wollman). &a.mike; 1 April 2002 &status.done; &status.n-a;
Implement <sys/_types> to store shared MI types. &a.mike; 1 April 2002 &status.done; &status.n-a;
Implement header <strings.h>, and work out + compatibility issues with header <string.h>. &a.mike; 4 April 2002 &status.done; &status.n-a;
Implement the <stdint.h> and <inttypes.h> + headers. &a.mike; 1 March 2002 &status.done; &status.blocked;
Implement new types and prototypes in header + <complex.h>. &a.markm; 6 February 2002 &status.wip; &status.blank;
Hide non-conforming portions, add missing types to + <sys/types.h>. &a.mike; 1 April 2002 &status.wip; &status.blank;
Reduce namespace pollution and add missing typedefs in + <unistd.h> &a.mike; 25 March 2002 &status.wip; &status.blank;
Remove pollution and add missing macros to + <netinet/in.h> and <netinet6/in6.h>. &a.mike; 1 April 2002 &status.wip; &status.blank;
Hide non-conforming portions, add missing types to + <sys/un.h>. &a.mike; 1 April 2002 &status.wip; &status.blank;
Implement the header <fenv.h>. &a.fenner; 14 November 2001 &status.new; &status.blank;
Miscellaneous
Obtain a copy of Proc. ACM SIGPLAN '90 (required for + &man.printf.3; %'f). &a.fenner; 9 November 2001 &status.done; &status.n-a;
Add regression test for each function.   17 November 2001 &status.new; &status.blank;
Utility Conformance
Add -o option and base64 decoding to the uudecode utility. &a.jmallett; 26 March 2002 &status.done; &status.done;
Add -m option and base64 encoding to the uuencode utility. &a.jmallett; 26 March 2002 &status.done; &status.done;
Improve join(1)'s POSIX.1-2001 conformance. (PR: 36072) &a.tim; 27 March 2002 &status.done; &status.n-a;
Require atleast one file argument in paste(1). (PR: 36074) &a.tim; 1 April 2002 &status.done; &status.done;
Add -a option to the split utility. &a.tim; 1 April 2002 &status.done; &status.n-a;
Add the -i option to the patch utility. &a.jmallett; 9 April 2002 &status.done; &status.done;
Add -r and -t options to the at utility. &a.joe.halpin; 13 January 2002 &status.done; &status.new;
Add -L option to the pwd utility. &a.tim; 4 February 2002 &status.done; &status.new;
Fix exit status of the env(1) utility. &a.tim; 20 February 2002 &status.done; &status.new;
Make expr(1) conform to POSIX.1-2001. &a.wollman; 24 March 2002 &status.done; &status.new;
Add the -f and -p options to the pr utility. (PR: 36243) &a.tim; 31 March 2002 &status.done; &status.new;
Add -n option and resolve other issues in the renice utility. (PR: 36950) &a.pavalos;,
&a.maxim;
10 April 2002 &status.wip; &status.blank;
Add missing options to the mailx utility. &a.mikeh; 22 December 2001 &status.wip; &status.blank;
Add the pathchk utility. &a.chuckr; 2 January 2002 &status.wip; &status.blank;
Add -n option to the nice utility. &a.pavalos; 13 January 2002 &status.wip; &status.blank;
Add the tabs utility. (PR: 36126) &a.tim; 25 January 2002 &status.wip; &status.blank;
Add -I and -L options to the xargs utility. &a.jmallett; 27 January 2002 &status.wip; &status.blank;
Add the -b and -s option to the fold utility. (PR: 36245) &a.tim; 31 January 2002 &status.wip; &status.blank;
Add -m option to the wc utility. &a.tim; 1 March 2002 &status.blocked; &status.blank;
Add the -s option to the m4 utility. (PR: 36075) &a.tim; 4 February 2002 &status.wip; &status.blank;
Add -C option to the tr utility. &a.tim; 9 February 2002 &status.wip; &status.blank;
Implement the -m, -p, and -x options in the ls utility. &a.mkm; 1 March 2002 &status.wip; &status.blank;
Add missing components to the jobs utility. &a.mkm; 5 March 2002 &status.wip; &status.blank;
Add -t option to uuexpand(1) utility. (PR: 35621) &a.tim; 18 March 2002 &status.wip; &status.blank;
Make printf(1) utility conform to POSIX.2 (1992). (PR: 35616) &a.tim; 18 March 2002 &status.wip; &status.blank;
Implement the fuser utility. (PR: 36076) &a.tim; 24 March 2002 &status.wip; &status.blank;
Add the c99 utility (similar to c89). (PR: 36087) &a.tim; 24 March 2002 &status.wip; &status.blank;
Add missing options to the who utility. (PR: 36128) &a.tim; 24 March 2002 &status.wip; &status.blank;
Implement the asa utility. (PR: 36130) &a.tim; 24 March 2002 &status.wip; &status.blank;
Implement the csplit utility. (PR: 36191) &a.tim; 24 March 2002 &status.wip; &status.blank;
Implement the locale and + localedef utilities. &a.phantom; 11 December 2001 &status.new; &status.blank;
Implement/import the SCCS development utilities: + admin, + delta, + get, + prs, + rmdel, + sact, + sccs, + unget, + val   30 November 2001 &status.new; &status.blank;
Add -C and -T options to the ar utility.   30 November 2001 &status.new; &status.blank;
Add -L and -P options to the cd utility (shell built-in).   30 November 2001 &status.new; &status.blank;
Investigate importing the cflow utility from the ports collection.   30 November 2001 &status.new; &status.blank;
Add -p, -v, and -V options to the command utility (shell built-in).   30 November 2001 &status.new; &status.blank;
Bring the cp utility up to conformance.   30 November 2001 &status.new; &status.blank;
Implement the cxref utility.   30 November 2001 &status.new; &status.blank;
Work out conflicting -t option in the df utility.   30 November 2001 &status.new; &status.blank;
Document the -n option in the echo utility as being non-POSIX compliant.   30 November 2001 &status.new; &status.blank;
Add the -d, -h, and -M options and fix conflicting -i option in the file utility.   30 November 2001 &status.new; &status.blank;
Implement the iconv utility.   30 November 2001 &status.new; &status.blank;
Implement the -m, -w, and -t options in the lp utility.   30 November 2001 &status.new; &status.blank;
Bring the make utility up to conformance.   30 November 2001 &status.new; &status.blank;
Add -p option the more utility.   30 November 2001 &status.new; &status.blank;
Add the newgrp utility.   30 November 2001 &status.new; &status.blank;
Add missing options and resolve conflicting options in the nm utility.   30 November 2001 &status.new; &status.blank;
Add the -s, -A, -j, -N, and -t option to the od utility.   30 November 2001 &status.new; &status.blank;
Investigate adopting some of the POSIX options in the ps utility.   30 November 2001 &status.new; &status.blank;
Add the qsub utility.   30 November 2001 &status.new; &status.blank;
Add unimplemented features to the sh utility.   30 November 2001 &status.new; &status.blank;
Wide Character/String Support
+ This area is managed by &a.dec; and &a.kbyanc;. + Changes to this section should be coordinated through + them.
Implement wcstoimax(), wcstoumax().   11 October 2001 &status.new; &status.blank;
Implement wcrtomb().   27 November 2001 &status.new; &status.blank;


+ + + + + + + + + + + + + + + + + + + + +
Legend
&status.new; Not yet started
&status.blocked; Blocked awaiting completion of another task
&status.wip; Work in progress
&status.done; Task completed
&status.n-a; Not planned
+

News

+ +

The remainder of this page is structured as a + reverse-chronological log.

+ + 3 March 2002 + + + 30 January 2002 + + + 14 December 2001 + + + 6 December 2001 + + + 28 November 2001 + + + 19 October 2001 + + + 10 October 2001 + +

The original layout for this web page was borrowed from + the FreeBSD SMPng Project. BSD Daemon Copyright 1988 by Marshall + Kirk McKusick. All Rights Reserved.

+ &footer; + + diff --git a/en/projects/c99/style.css b/en/projects/c99/style.css new file mode 100644 index 0000000000..beecc6f17a --- /dev/null +++ b/en/projects/c99/style.css @@ -0,0 +1,38 @@ +BODY { +} + +BODY TD { + font-size: 13px; +} + +BODY SMALL { + width: 615px; + font-size: 11px; +} + +.heading { + font-size: 15px; + background-color: #cbd2ec; +} + +.section { + font-size: 15px; + font-weight: bold; + background-color: #e7e9f7; +} + +.notes { + font-size: 13px; + font-weight: normal; +} + +.main { + width: 615px; + height: auto; + text-align: justify; +} + +.list { + width: 550px; + height: auto; +}