1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
|
=============================
StdIO Functions in LLVM-libc
=============================
-------
Summary
-------
This document tracks the status of the implementation of stdio functions in LLVM
Libc.
---------------
Source location
---------------
- The main source for string functions is located at:
``libc/src/stdio`` with subdirectories for internal implementations.
---------------------
Implementation Status
---------------------
Formatted Input/Output Functions
================================
These functions take in format strings and arguments of various types and
convert either to or from those arguments. These functions are the current focus
(owner: michaelrj).
============= =========
Function_Name Available
============= =========
\*printf WIP
\*scanf
============= =========
``FILE`` Access
===============
These functions are used to interact with the ``FILE`` object type, which is an
I/O stream, often used to represent a file on the host's hard drive. Currently
the ``FILE`` object is only available on linux.
============= =========
Function_Name Available
============= =========
fopen YES
freopen
fclose YES
fflush YES
setbuf
setvbuf
ftell
fgetpos
fseek YES
fsetpos
rewind
tmpfile
clearerr YES
feof YES
ferror YES
flockfile YES
funlockfile YES
============= =========
Operations on system files
==========================
These functions operate on files on the host's system, without using the
``FILE`` object type. They only take the name of the file being operated on.
============= =========
Function_Name Available
============= =========
remove
rename
tmpnam
============= =========
Unformatted ``FILE`` Input/Output Functions
===========================================
The ``gets`` function was removed in C11 for having no bounds checking and
therefor being impossible to use safely.
============= =========
Function_Name Available
============= =========
(f)getc
fgets
getchar
fread YES
(f)putc
(f)puts
putchar
fwrite YES
ungetc
============= =========
|