probe-file cuts symlink filename to 128 chars

Tomas Hlavaty tom at logand.com
Thu Oct 13 20:12:58 UTC 2016


Hi,

ecl 16.1.2 on Linux cuts symlink filename to 128 chars/bytes.  It works
with ordinary files.  Examples bellow.  It doesn't error with "Too long
filename" as in si_coerce_to_filename but silently cuts the name and
then fails with another error.

Tomas

---

$ nix-shell -p ecl --run 'ecl -q -eval "(print (length \"/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp\"))" -eval "(quit)"'
;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/asdf.fas"
133

$ nix-shell -p ecl --run 'ecl -q -eval "(print (probe-file \"/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp\"))" -eval "(quit)"'
;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/asdf.fas"
#P"/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp"

$ nix-shell -p ecl --run 'ecl -q -eval "(print (length \"/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp\"))" -eval "(quit)"'
;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/asdf.fas"
136

$ nix-shell -p ecl --run 'ecl -q -eval "(print (probe-file \"/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp\"))" -eval "(quit)"'
;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/asdf.fas"
An error occurred during initialization:
Filesystem error with pathname "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector".
Either
 1) the file does not exist, or
 2) we are not allowed to access the file, or
 3) the pathname points to a broken symbolic link..

--- with gcc

(progn (load "/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" :verbose t) (funcall (read-from-string "swank-loader:init")) (funcall (read-from-string "swank:start-server") "/tmp/slime.1357"))

ECL (Embeddable Common-Lisp) 16.1.2 (git:UNKNOWN)
Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
Copyright (C) 1993 Giuseppe Attardi
Copyright (C) 2000 Juan J. Garcia-Ripoll
Copyright (C) 2015 Daniel Kochmanski
ECL is free software, and you are welcome to redistribute it
under certain conditions; see file 'Copyright' for details.
Type :h for Help.  
Top level in: #<process TOP-LEVEL>.
> 
;;; Loading "/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/packages.fasc"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/backend.fasc"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/ecl.fasc"
;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/sockets.fas"
;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/profile.fas"
;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/serve-event.fas"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/gray.fasc"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/match.fasc"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/rpc.fasc"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/swank.fasc"
;;; Compiling /nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp;; 
;; Error compiling /nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp:
;;   Filesystem error with pathname "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector".
;; Either
;;  1) the file does not exist, or
;;  2) we are not allowed to access the file, or
;;  3) the pathname points to a broken symbolic link.
;; 

Condition of type: FILE-ERROR
Filesystem error with pathname "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector".
Either
 1) the file does not exist, or
 2) we are not allowed to access the file, or
 3) the pathname points to a broken symbolic link.

Available restarts:

1. (RESTART-TOPLEVEL) Go back to Top-Level REPL.

Broken at SWANK-LOADER::COMPILE-FILES. In: #<process TOP-LEVEL>.
 File: #P"/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" (Position #6362)
>> :b

Backtrace:
  > SWANK-LOADER::COMPILE-FILES
  > swank-loader::compile-contribs
  > swank::run-hook
  > swank::init
  > swank-loader::setup
  > swank-loader:init
  > si:bytecodes [Evaluation of: (funcall (read-from-string "swank-loader:init"))]
  > si:bytecodes [Evaluation of: (si:top-level t)]

--- with bytecode compiler

(progn (load "/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" :verbose t) (funcall (read-from-string "swank-loader:init")) (funcall (read-from-string "swank:start-server") "/tmp/slime.1357"))

ECL (Embeddable Common-Lisp) 16.1.2 (git:UNKNOWN)
Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
Copyright (C) 1993 Giuseppe Attardi
Copyright (C) 2000 Juan J. Garcia-Ripoll
Copyright (C) 2015 Daniel Kochmanski
ECL is free software, and you are welcome to redistribute it
under certain conditions; see file 'Copyright' for details.
Type :h for Help.  
Top level in: #<process TOP-LEVEL>.
> 
;;; Loading "/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/packages.fasc"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/backend.fasc"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/ecl.fasc"
;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/sockets.fas"
;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/profile.fas"
;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/serve-event.fas"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/gray.fasc"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/match.fasc"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/rpc.fasc"
;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/swank.fasc"
;;; Compiling /nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp;; 
;; Error compiling /nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp:
;;   Filesystem error with pathname "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector".
;; Either
;;  1) the file does not exist, or
;;  2) we are not allowed to access the file, or
;;  3) the pathname points to a broken symbolic link.
;; 

Condition of type: FILE-ERROR
Filesystem error with pathname "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector".
Either
 1) the file does not exist, or
 2) we are not allowed to access the file, or
 3) the pathname points to a broken symbolic link.

Available restarts:

1. (RESTART-TOPLEVEL) Go back to Top-Level REPL.

Broken at SWANK-LOADER::COMPILE-FILES. In: #<process TOP-LEVEL>.
 File: #P"/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" (Position #6362)
>> :b

Backtrace:
  > SWANK-LOADER::COMPILE-FILES
  > swank-loader::compile-contribs
  > swank::run-hook
  > swank::init
  > swank-loader::setup
  > swank-loader:init
  > si:bytecodes [Evaluation of: (funcall (read-from-string "swank-loader:init"))]
  > si:bytecodes [Evaluation of: (si:top-level t)]



More information about the ecl-devel mailing list