Subject: file-attributes returns negative integer for inode value

From: "Drew Adams" <[email-masked]>
Date: Sun, 2 Mar 2008 14:46:09 -0800

emacs -Q
 
No reliable recipe to reproduce, but for me, some directories give a
negative inode number for file-attributes. For example:
 
M-x (file-attributes "c:/drews-lisp-20/Screenshots") gives:
 
(t 1 5 5 (18378 24192) (18123 40338) (18123 40337) 0
 "drwxrwxrwx" nil -3082 240391127)
 
The inode value here is -3082. The Elisp manual, however says that if
the integer is too large, then a cons is used for the inode value. Is
this a Windows-specific problem, perhaps?
 
Also, there is a typo in the doc string for `file-attributes':
 
  ...
  If inode number is larger than the Emacs integer,
  this is a cons cell containing two integers: first the high part,
  then the low 16 bits.
 
"the Emacs integer" should presumably be "the largest Emacs integer".

In GNU Emacs 22.1.90.1 (i386-mingw-nt5.1.2600)
 of 2008-01-30 on PRETEST
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4) --cflags -Ic:/gnuwin32/include'