[Openmcl-devel] traceback help
Gail Zacharias
gz at clozure.com
Mon Jun 16 11:51:01 PDT 2008
This particular problem (the bogus "too many arguments" error) is now
fixed in subversion (trunk and 1.2). Your actual question - how to
know which anonymous function is signalling an error - is not. One
small issue is that I think there is a SLIME bug that's hiding the top
frame in the backtrace (the one that actually has the anonymous
function that's signalling the error). The larger issue is that the
trunk/1.2 don't currently support slime's 'v' command for anonymous
functions. (There is an experimental version in the working-0711
branch that does, but it more than doubles the image size and we want
to address that before moving it to the trunk.)
On Fri, Jun 6, 2008 at 1:35 AM, Marko Tapio Manninen <mmstud at gmail.com> wrote:
> Hi,
>
> every now and then i get the mysterious traceback with emacs and slime
> and i cant always figure out, how to detect the problem. In this case
> anonymous function is called with invalid arguments, but how do i
> know, what is the specific function, where it is and so on? This error
> comes, when using iolib tutorial socket server and while it talk about
> ccl threads, i thought if you could help with it:
>
> Invalid program: Too many arguments in call to #<Anonymous Function
> #x30004108C64F>:
> 1 arguments provided, at most 0 accepted.
> [Condition of type CCL::SIMPLE-PROGRAM-ERROR]
>
> Backtrace:
> 0: (IO.MULTIPLEX::MIN-TIMEOUT 6397.371749698D0 6402.371506881D0 1)
> Locals:
> IO.MULTIPLEX::TIMEOUTS = (6397.371749698D0 6402.371506881D0 1)
> 1: (#<STANDARD-METHOD IO.MULTIPLEX:EVENT-DISPATCH
> (IO.MULTIPLEX:EVENT-BASE)> #<event base, 1 FDs monitored, using:
> #<kqueue(2) multiplexer> #x3000415EC40D> ':ONE-SHOT 'NIL ':TIMEOUT 10
> ':MAX-TIMEOUT 1)
> Locals:
> IO.MULTIPLEX::ONE-SHOT = NIL
> IO.MULTIPLEX::TIMEOUT = 10
> IO.MULTIPLEX::MAX-TIMEOUT = 1
> IO.MULTIPLEX::GOT-FD-EVENTS-P = NIL
> IO.MULTIPLEX::GOT-FD-TIMEOUTS-P = NIL
> IO.MULTIPLEX::GOT-TIMERS-P = NIL
> 2: (CCL::%CALL-NEXT-METHOD '(NIL
> #<STANDARD-METHOD IO.MULTIPLEX:EVENT-DISPATCH
> (IO.MULTIPLEX:EVENT-BASE)>
> . 2638791))
> Locals:
> CCL::ARGS = NIL
> CCL::*INTERRUPT-LEVEL* = 0
> CCL::*INTERRUPT-LEVEL* = -1
> CDR = NIL
> METHOD-FUNCTION = #<METHOD-FUNCTION IO.MULTIPLEX:EVENT-
> DISPATCH (IO.MULTIPLEX:EVENT-BASE)>
> Catch-tags:
> NIL
> 3: (CCL::%%STANDARD-COMBINED-METHOD-DCODE '(#<STANDARD-METHOD
> IO.MULTIPLEX:EVENT-DISPATCH :AROUND (IO.MULTIPLEX:EVENT-BASE)>
> #<STANDARD-METHOD IO.MULTIPLEX:EVENT-DISPATCH
> (IO.MULTIPLEX:EVENT-BASE)>) 2638791)
> Locals:
> CCL::CELL-2 = (#<STANDARD-METHOD IO.MULTIPLEX:EVENT-DISPATCH
> (IO.MULTIPLEX:EVENT-BASE)> . 2638791)
> #:G47718 = #<METHOD-FUNCTION IO.MULTIPLEX:EVENT-
> DISPATCH :AROUND (IO.MULTIPLEX:EVENT-BASE)>
> 4: ((:INTERNAL ECHO-SERVER::%RUN-SERVER ECHO-SERVER:RUN-SERVER))
> Locals:
> ECHO-SERVER::TIMEOUT = 10
> ECHO-SERVER::PORT = 7000
> ECHO-SERVER::HOST = @0.0.0.0
> CCL::*INTERRUPT-LEVEL* = 0
> CCL::*INTERRUPT-LEVEL* = -1
> Catch-tags:
> NIL
> 5: (CCL::RUN-PROCESS-INITIAL-FORM #<PROCESS Anonymous(7) [Active]
> #x3000417C327D> '(#<COMPILED-LEXICAL-CLOSURE (:INTERNAL
> CCL::%PROCESS-RUN-FUNCTION)
> #x3000417C310F>))
> Locals:
> CCL::INITIAL-FORM = (#<COMPILED-LEXICAL-CLOSURE (:INTERNAL
> CCL::%PROCESS-RUN-FUNCTION) #x30004163AA0F>)
> CCL::EXITED = NIL
> #:G59697 = (PROCESS-RESET)
> CCL::%HANDLERS% = NIL
> #:ABORT = #<RESTART ABORT #x1632B5D>
> #:ABORT-BREAK = #<RESTART ABORT-BREAK #x1632B0D>
> CCL::%RESTARTS% = NIL
> Catch-tags:
> (:RESTART ABORT-BREAK)
> NIL
> 6: ((:INTERNAL CCL::%PROCESS-PRESET-INTERNAL) #<PROCESS
> Anonymous(7) [Active] #x3000417C327D> '(#<COMPILED-LEXICAL-CLOSURE
> (:INTERNAL
> CCL::%PROCESS-RUN-FUNCTION)
> #x3000417C310F>))
> Locals:
> CCL::INITIAL-FORM = (#<COMPILED-LEXICAL-CLOSURE (:INTERNAL
> CCL::%PROCESS-RUN-FUNCTION) #x30004163AA0F>)
> *CURRENT-PROCESS* = #<PROCESS Initial(0) [Active]
> #x300040432DAD>
> CCL::SYMS = (CCL::*FREE-XPS* CCL::*FREE-CIRCULARITY-HASH-
> TABLES* CCL::*VINSN-VARPARTS* CCL::*VINSN-LABEL-FREELIST* CCL::*VINSN-
> FREELIST* CCL::*LCELL-FREELIST* ...)
> VALUES = (NIL NIL #<POOL #x300041640DFD> #<POOL
> #x300041640DCD> #<POOL #x300041640D9D> #<POOL #x300041640D6D> ...)
> Catch-tags:
> NIL
> 7: ((:INTERNAL CCL::THREAD-MAKE-STARTUP-FUNCTION))
> Locals:
> CCL::TCR = 144432
> CCL::THREAD = #<LISP-THREAD Anonymous [tcr @ #x11A180]
> #x30004163ADBD>
> CCL::*CURRENT-LISP-THREAD* = #<LISP-THREAD Initial [tcr @
> #x1007A0] #x3000404020ED>
> CCL::INITIAL-FUNCTION = (#<Compiled-function (:INTERNAL CCL::
> %PROCESS-PRESET-INTERNAL) (Non-Global) #x30004043065F> #<PROCESS
> Anonymous(7) [Active] #x30004163AA9D> (#<COMPILED-LEXICAL-CLOSURE
> (:INTERNAL CCL::%PROCESS-RUN-FUNCTION) #x30004163AA0F>))
>
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> http://clozure.com/mailman/listinfo/openmcl-devel
>
More information about the Openmcl-devel
mailing list