diff --git a/TODO.FACTOR.txt b/TODO.FACTOR.txt index a47e837929..c04a8c931c 100644 --- a/TODO.FACTOR.txt +++ b/TODO.FACTOR.txt @@ -25,6 +25,7 @@ + native: +- number upgrading errors - do something about "base" variable -- too fragile ERROR: I/O error: [ "primitive_read_line_fd_8" "Resource temporarily unavailable" ] - errors: don't show .factor-rc diff --git a/library/platform/jvm/init.factor b/library/platform/jvm/init.factor index 967164423e..c310c97499 100644 --- a/library/platform/jvm/init.factor +++ b/library/platform/jvm/init.factor @@ -48,7 +48,7 @@ USE: strings : init-stdio ( -- ) #! Initialize standard input/output. - stdin stdout "stdio" set ; + stdin stdout "stdio" set ; : init-environment ( -- ) #! Initialize OS-specific constants. diff --git a/library/platform/native/stream.factor b/library/platform/native/stream.factor index 3e904b7f2b..dd7696585b 100644 --- a/library/platform/native/stream.factor +++ b/library/platform/native/stream.factor @@ -104,7 +104,7 @@ USE: namespaces [ "socket" get ] bind accept-fd ; : init-stdio ( -- ) - stdin stdout "stdio" set ; + stdin stdout "stdio" set ; : exists? ( file -- ? ) #! This is terrible. diff --git a/library/stdio.factor b/library/stdio.factor index cb565cd21e..fb73ad6a2c 100644 --- a/library/stdio.factor +++ b/library/stdio.factor @@ -27,10 +27,16 @@ IN: stdio USE: errors +USE: kernel USE: namespaces USE: stack USE: streams +: ( stream -- stream ) + #! We disable fclose on stdio so that various tricks like + #! with-stream can work. + clone [ [ ] "fclose" set ] extend ; + : flush ( -- ) "stdio" get fflush ;