@@ -137,22 +137,24 @@ cfg_has_statx! {{
137
137
Ok ( _) => {
138
138
// We cannot fill `stat64` exhaustively because of private padding fields.
139
139
let mut stat: stat64 = mem:: zeroed( ) ;
140
- stat. st_dev = libc:: makedev( buf. stx_dev_major, buf. stx_dev_minor) ;
140
+ // c_ulong`` on gnu-mips, `dev_t` otherwise
141
+ stat. st_dev = libc:: makedev( buf. stx_dev_major, buf. stx_dev_minor) as _;
141
142
stat. st_ino = buf. stx_ino as libc:: ino64_t;
142
143
stat. st_nlink = buf. stx_nlink as libc:: nlink_t;
143
144
stat. st_mode = buf. stx_mode as libc:: mode_t;
144
145
stat. st_uid = buf. stx_uid as libc:: uid_t;
145
146
stat. st_gid = buf. stx_gid as libc:: gid_t;
146
- stat. st_rdev = libc:: makedev( buf. stx_rdev_major, buf. stx_rdev_minor) ;
147
+ stat. st_rdev = libc:: makedev( buf. stx_rdev_major, buf. stx_rdev_minor) as _ ;
147
148
stat. st_size = buf. stx_size as off64_t;
148
149
stat. st_blksize = buf. stx_blksize as libc:: blksize_t;
149
150
stat. st_blocks = buf. stx_blocks as libc:: blkcnt64_t;
150
151
stat. st_atime = buf. stx_atime. tv_sec as libc:: time_t;
151
- stat. st_atime_nsec = buf. stx_atime. tv_nsec as libc:: c_long;
152
+ // `i64` on gnu-x86_64-x32, `c_ulong` otherwise.
153
+ stat. st_atime_nsec = buf. stx_atime. tv_nsec as _;
152
154
stat. st_mtime = buf. stx_mtime. tv_sec as libc:: time_t;
153
- stat. st_mtime_nsec = buf. stx_mtime. tv_nsec as libc :: c_long ;
155
+ stat. st_mtime_nsec = buf. stx_mtime. tv_nsec as _ ;
154
156
stat. st_ctime = buf. stx_ctime. tv_sec as libc:: time_t;
155
- stat. st_ctime_nsec = buf. stx_ctime. tv_nsec as libc :: c_long ;
157
+ stat. st_ctime_nsec = buf. stx_ctime. tv_nsec as _ ;
156
158
157
159
let extra = StatxExtraFields {
158
160
stx_mask: buf. stx_mask,
0 commit comments