Mercurial > emacs
comparison src/dired.c @ 39637:670f23724a65
(Ffile_attributes): Use FIXNUM_OVERFLOW_P.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Sat, 06 Oct 2001 23:41:39 +0000 |
parents | e1f4b9b93c45 |
children | 5f60884970a8 |
comparison
equal
deleted
inserted
replaced
39636:2f7a8752b11b | 39637:670f23724a65 |
---|---|
889 values[9] = Qt; | 889 values[9] = Qt; |
890 #else /* file gid will be egid */ | 890 #else /* file gid will be egid */ |
891 values[9] = (s.st_gid != getegid ()) ? Qt : Qnil; | 891 values[9] = (s.st_gid != getegid ()) ? Qt : Qnil; |
892 #endif /* BSD4_2 (or BSD4_3) */ | 892 #endif /* BSD4_2 (or BSD4_3) */ |
893 /* Cast -1 to avoid warning if int is not as wide as VALBITS. */ | 893 /* Cast -1 to avoid warning if int is not as wide as VALBITS. */ |
894 if (s.st_ino & (((EMACS_INT) (-1)) << VALBITS)) | 894 if (FIXNUM_OVERFLOW_P (s.st_ino)) |
895 /* To allow inode numbers larger than VALBITS, separate the bottom | 895 /* To allow inode numbers larger than VALBITS, separate the bottom |
896 16 bits. */ | 896 16 bits. */ |
897 values[10] = Fcons (make_number (s.st_ino >> 16), | 897 values[10] = Fcons (make_number (s.st_ino >> 16), |
898 make_number (s.st_ino & 0xffff)); | 898 make_number (s.st_ino & 0xffff)); |
899 else | 899 else |
900 /* But keep the most common cases as integers. */ | 900 /* But keep the most common cases as integers. */ |
901 values[10] = make_number (s.st_ino); | 901 values[10] = make_number (s.st_ino); |
902 | 902 |
903 /* Likewise for device. */ | 903 /* Likewise for device. */ |
904 if (s.st_dev & (((EMACS_INT) (-1)) << VALBITS)) | 904 if (FIXNUM_OVERFLOW_P (s.st_dev)) |
905 values[11] = Fcons (make_number (s.st_dev >> 16), | 905 values[11] = Fcons (make_number (s.st_dev >> 16), |
906 make_number (s.st_dev & 0xffff)); | 906 make_number (s.st_dev & 0xffff)); |
907 else | 907 else |
908 values[11] = make_number (s.st_dev); | 908 values[11] = make_number (s.st_dev); |
909 | 909 |