2011-06-06 Paul Eggert <eggert@cs.ucla.edu>
+ * dired.c (Ffile_attributes): Don't assume EMACS_INT has >32 bits.
+
Don't assume time_t can fit into int.
* buffer.h (struct buffer.modtime): Now time_t, not int.
* fileio.c (Fvisited_file_modtime): No need for time_t cast now.
The code on the next line avoids a compiler warning on
systems where st_ino is 32 bit wide. (bug#766). */
EMACS_INT high_ino = s.st_ino >> 31 >> 1;
- EMACS_INT low_ino = s.st_ino & 0xffffffff;
values[10] = Fcons (make_number (high_ino >> 8),
Fcons (make_number (((high_ino & 0xff) << 16)
- + (low_ino >> 16)),
- make_number (low_ino & 0xffff)));
+ + (s.st_ino >> 16 & 0xffff)),
+ make_number (s.st_ino & 0xffff)));
}
/* Likewise for device. */