Skip to content
  • Jonas Termansen's avatar
    Implemented large parts of the stdio(3), including fprintf. · fdbd4ca9
    Jonas Termansen authored
    Made FILE an interface to various backends. This allows application writers
    to override the standard FILE API functions with their own backends. This
    is highly unportable - it'd be nice if a real standard existed for this.
    glibc already does something like this internally, but AFAIK you can't hook
    into it.
    
    Added fdopen(3), fopen(3), fregister(3), funregister(3), fread(3),
    fwrite(3), fseek(3), clearerr(3), ferror(3), feof(3), rewind(3), ftell(3),
    fflush(3), fclose(3), fileno(3), fnewline(3), fcloseall(3), memset(3),
    stdio(3), vfprintf(3), fprintf(3), and vprintf(3).
    
    Added a file-descriptor backend to the FILE API.
    
    fd's {0, 1, 2} are now initialized as stdin, stdout, and stderr when the
    standard library initializes.
    
    fcloseall(3) is now called on exit(3).
    
    decl/intn_t_.h now @include(size_t.h) instead of declaring it itself.
    
    Added <stdint.h>.
    
    The following programs now flush stdout: cat(1), clear(1), editor(1),
    init(1), mxsh(1).
    
    printf(3) is now hooked up against vprintf(3), while Maxsi::PrintF
    remains using the system call, for now.
    fdbd4ca9