about summary refs log tree commit diff
path: root/src/libstd/io
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2014-07-13 04:46:31 +0000
committerbors <bors@rust-lang.org>2014-07-13 04:46:31 +0000
commit13dc0d7938c0f343dd13240dd316eb3a22036e89 (patch)
tree0120b5923c4939fbad5e67ce9d4ecbbde17c9a78 /src/libstd/io
parentad7ef8c27cffcaf14a6e75fad35d42daee83b8cd (diff)
parent2dfbe7f9893ef8ff7efc86345941216e564323e7 (diff)
downloadrust-13dc0d7938c0f343dd13240dd316eb3a22036e89.tar.gz
rust-13dc0d7938c0f343dd13240dd316eb3a22036e89.zip
auto merge of #15584 : alexcrichton/rust/warn-annoyances, r=cmr
* Don't warn about `#[crate_name]` if `--crate-name` is specified
* Don't warn about non camel case identifiers on `#[repr(C)]` structs
* Switch `mode` to `mode_t` in libc.
Diffstat (limited to 'src/libstd/io')
-rw-r--r--src/libstd/io/fs.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libstd/io/fs.rs b/src/libstd/io/fs.rs
index ed183cbf3bc..74ab19d0aa6 100644
--- a/src/libstd/io/fs.rs
+++ b/src/libstd/io/fs.rs
@@ -330,6 +330,11 @@ pub fn lstat(path: &Path) -> IoResult<FileStat> {
 }
 
 fn from_rtio(s: rtio::FileStat) -> FileStat {
+    #[cfg(windows)]
+    type Mode = libc::c_int;
+    #[cfg(unix)]
+    type Mode = libc::mode_t;
+
     let rtio::FileStat {
         size, kind, perm, created, modified,
         accessed, device, inode, rdev,
@@ -338,7 +343,7 @@ fn from_rtio(s: rtio::FileStat) -> FileStat {
 
     FileStat {
         size: size,
-        kind: match (kind as libc::c_int) & libc::S_IFMT {
+        kind: match (kind as Mode) & libc::S_IFMT {
             libc::S_IFREG => io::TypeFile,
             libc::S_IFDIR => io::TypeDirectory,
             libc::S_IFIFO => io::TypeNamedPipe,