From: SourceForge.net <no...@so...> - 2011-12-05 03:54:16
|
Bugs item #3450953, was opened at 2011-12-04 19:54 Message generated for change (Tracker Item Submitted) made by gabalz You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101355&aid=3450953&group_id=1355 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: clisp Group: lisp error Status: Open Resolution: None Priority: 5 Private: No Submitted By: Gabor Balazs (gabalz) Assigned to: Bruno Haible (haible) Summary: self-recursive dead-link Initial Comment: CLISP cannot probe/list a dead link which points to itself. The probe-file, probe-pathname, directory functions always end up in an infinite loop which results to a UNIX error. Setup: ~~~~ mkdir /tmp/TEST cd /tmp/TEST ln -s dead dead ls -l dead lrwxrwxrwx 1 bege users 4 Dec 4 20:45 dead -> dead Problem: ~~~~~~ CLISP> (probe-pathname "dead") *** - UNIX error 40 (ELOOP): Too many levels of symbolic links CLISP> (probe-file "dead") *** - UNIX error 40 (ELOOP): Too many levels of symbolic links CLISP> (directory "./*" :if-does-not-exist :keep) *** - UNIX error 40 (ELOOP): Too many levels of symbolic links CLISP> (directory "./*" :if-does-not-exist :keep :circle t) *** - UNIX error 40 (ELOOP): Too many levels of symbolic links Desired behavior: ~~~~~~~~~~~~~ CLISP> (probe-file "dead") => NIL CLISP> (probe-pathname "dead") => NIL CLISP> (directory "./*" :if-does-not-exist :keep) => (#P"/tmp/TEST/dead") or CLISP> (directory "./*" :if-does-not-exist :keep :circle t) => (#P"/tmp/TEST/dead") Version: ~~~~~~ GNU CLISP 2.49 (2010-07-07) (built 3529014440) (memory 3529014964) Software: GNU C 4.5.3 gcc -O2 -march=core2 -fomit-frame-pointer -pipe -Wa,--noexecstack -W -Wswitch -Wcomment -Wpointer-arith -Wimplicit -Wreturn-type -Wmissing-declarations -Wno-sign-compare -Wno-format-nonliteral -O -falign-functions=4 -pthread -DENABLE_UNICODE -DMULTITHREAD -DPOSIX_THREADS -DDYNAMIC_FFI -I. -Wl,-O1 -Wl,--as-needed /usr/lib64/libreadline.so -lncurses -ldl /usr/lib64/libavcall.a /usr/lib64/libcallback.a -L/usr/lib64 -lsigsegv -L/usr/lib64 -lc libgnu_cl.a SAFETY=0 TYPECODES WIDE_HARD GENERATIONAL_GC SPVW_BLOCKS SPVW_MIXED TRIVIALMAP_MEMORY libsigsegv 2.8 libreadline 6.2 Features: (READLINE REGEXP SYSCALLS I18N LOOP COMPILER CLOS MOP CLISP ANSI-CL COMMON-LISP LISP=CL INTERPRETER MT SOCKETS GENERIC-STREAMS LOGICAL-PATHNAMES SCREEN FFI GETTEXT UNICODE BASE-CHAR=CHARACTER WORD-SIZE=64 PC386 UNIX) C Modules: (clisp i18n syscalls regexp readline) Installation directory: /usr/lib64/clisp-2.49/ User language: ENGLISH Machine: X86_64 (X86_64) localhost [127.0.0.1] `bg` ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101355&aid=3450953&group_id=1355 |