]> git.lizzy.rs Git - rust.git/commitdiff
Expose STDERR to rust.
authorErick Tryzelaar <erick.tryzelaar@gmail.com>
Thu, 25 Aug 2011 04:19:56 +0000 (21:19 -0700)
committerErick Tryzelaar <erick.tryzelaar@gmail.com>
Thu, 1 Sep 2011 03:40:00 +0000 (20:40 -0700)
src/lib/io.rs
src/rt/rust_builtin.cpp
src/rt/rustrt.def.in

index 23b14241427dee3b18ba112a27f4992562e9ab2c..00cc80d1a6b4e011324eb0249accb77299d56455 100644 (file)
@@ -4,6 +4,7 @@
 native "rust" mod rustrt {
     fn rust_get_stdin() -> os::libc::FILE;
     fn rust_get_stdout() -> os::libc::FILE;
+    fn rust_get_stderr() -> os::libc::FILE;
 }
 
 
@@ -374,6 +375,7 @@ fn buffered_file_buf_writer(path: &istr) -> buf_writer {
 
 // FIXME it would be great if this could be a const
 fn stdout() -> writer { ret new_writer(fd_buf_writer(1, option::none)); }
+fn stderr() -> writer { ret new_writer(fd_buf_writer(2, option::none)); }
 
 type str_writer =
     obj {
index 679a04b93d63a0c0c8e23ac1ae327a849dd386e3..f3f67fef52dfc02fb4e8060f445baf8d0f8dc2fe 100644 (file)
@@ -534,6 +534,7 @@ rust_file_is_dir(rust_task *task, rust_str *path) {
 
 extern "C" CDECL FILE* rust_get_stdin() {return stdin;}
 extern "C" CDECL FILE* rust_get_stdout() {return stdout;}
+extern "C" CDECL FILE* rust_get_stderr() {return stderr;}
 
 extern "C" CDECL int
 rust_ptr_eq(rust_task *task, type_desc *t, rust_box *a, rust_box *b) {
index 3bfad837555f05a6466c2c2ff068cb58f394f23b..806f63905dabee73cb164d4d404d7a388a070147 100644 (file)
@@ -48,6 +48,7 @@ rust_dirent_filename
 rust_file_is_dir
 rust_get_stdin
 rust_get_stdout
+rust_get_stderr
 rust_istr_push
 rust_list_files
 rust_process_wait