mirror of
https://git.planet-casio.com/Vhex-Kernel-Core/fxlibc.git
synced 2024-12-28 04:23:38 +01:00
add a STATUS file to keep track of implementation progress
This commit is contained in:
parent
5f48a6b4e0
commit
d70a2c671c
1 changed files with 112 additions and 0 deletions
112
STATUS
Normal file
112
STATUS
Normal file
|
@ -0,0 +1,112 @@
|
|||
This file describes the implementation status and some notes; information is
|
||||
taken from the C99 standard (ISO/IEC 9899:1999), section 7 ("Library").
|
||||
|
||||
Notes for implementers:
|
||||
|
||||
7.1.2§6:
|
||||
Use (extern) in all function prototypes
|
||||
7.1.3§1:
|
||||
Only expose standard identifiers; anything else might be defined as a macro.
|
||||
Make sure every argument name, internal function name, etc. starts with
|
||||
either "__" or "_X" (where X is any uppercase letter)
|
||||
7.1.4§1:
|
||||
Always give a function even if there is a macro definition, so that the
|
||||
address of the function can be taken; don't rely on the macro being defined,
|
||||
as the user can remove it except in some special cases
|
||||
|
||||
In this file, every definition is classified in one of several implementation
|
||||
statuses. There are 5 stages that every definition should go through.
|
||||
|
||||
TODO: Function/symbol/macro is not implemented/defined
|
||||
BDEPS(...): Function/symbol/macro needs ... to build
|
||||
LDEPS(...): Function/symbol/macro needs ... to link
|
||||
TEST: Function/symbol/macro needs to be tested
|
||||
DONE: Function/symbol/macro is defined, builds, links, and is tested
|
||||
|
||||
7.2 <assert.h>
|
||||
7.2.1 assert: LDEPS(fprintf,stderr,abort)
|
||||
|
||||
7.3 <complex.h>
|
||||
Provided by Lephenixnoir's port of OpenLibm.
|
||||
TODO: Check standard compliance
|
||||
|
||||
7.4 <ctype.h>
|
||||
7.4.1 is*: TEST
|
||||
7.4.2 to*: TEST
|
||||
|
||||
7.5 <errno.h>
|
||||
7.5.2 EDOM EILSEQ ERANGE: DONE
|
||||
|
||||
7.6 <fenv.h>
|
||||
Provided by Lephenixnoir's port of OpenLibm.
|
||||
TODO: Check standard compliance
|
||||
|
||||
7.7 <float.h>
|
||||
Provided by GCC.
|
||||
|
||||
7.8 <inttypes.h>
|
||||
7.8.1 Macros for printing: TODO
|
||||
7.8.2.1 imaxabs: TODO
|
||||
7.8.2.2 imaxdiv: TODO
|
||||
7.8.2.3 strotimax strtoumax: TODO
|
||||
7.8.2.4 wcstoimax wcstoumax: TODO
|
||||
|
||||
7.9 <iso646.h>
|
||||
Provided by GCC.
|
||||
|
||||
7.10 <limits.h>
|
||||
Provided by GCC.
|
||||
|
||||
7.11 <locale.h>
|
||||
7.11.1 setlocale: TEST
|
||||
7.11.2 localeconv: TEST
|
||||
|
||||
What if we wanted to support more locales?
|
||||
-> Need to a mechanism to supply the raw information, similar to the text
|
||||
files in /usr/share/i18n/locales
|
||||
-> Implement setlocale() and localeconv() properly (not hard)
|
||||
-> Probably support nl_langinfo(), which is much better than localeconv()
|
||||
|
||||
7.12 <math.h>
|
||||
Provided by Lephenixnoir's port of OpenLibm.
|
||||
TODO: Check standard compliance
|
||||
|
||||
7.13 <setjmp.h>
|
||||
7.13.1 setjmp: TEST
|
||||
7.13.2 longjmp: TEST
|
||||
|
||||
7.14 <signal.h>
|
||||
TODO: Difficult; the execution environment might not support signals
|
||||
|
||||
7.15 <stdarg.h>
|
||||
Provided by GCC.
|
||||
|
||||
7.16 <stdbool.h>
|
||||
Provided by GCC.
|
||||
|
||||
7.17 <stddef.h>
|
||||
Provided by GCC.
|
||||
|
||||
7.18 <stdint.h>
|
||||
Provided by GCC.
|
||||
|
||||
7.19 <stdio.h>
|
||||
TODO (will give the full list later on)
|
||||
|
||||
7.20 <stdlib.h>
|
||||
TODO (will give the full list later on)
|
||||
|
||||
7.21 <string.h>
|
||||
TODO (will give the full list later on)
|
||||
|
||||
7.22 <tgmath.h>
|
||||
Provided by GCC.
|
||||
|
||||
7.23 <time.h>
|
||||
TODO (will give the full list later on)
|
||||
|
||||
7.24 <wchar.h>
|
||||
TODO (not a priority)
|
||||
|
||||
7.25 <wctype.h>
|
||||
TODO (not a priority)
|
Loading…
Reference in a new issue