Marko Tapio Manninen 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?
I'm not sure of your level of familiarity with debugging, but usually
when I get a backtrace I locate the area of code it's referring to and
put break points or TRACE the function calls to see things a bit
clearer. The fact that this involves an anonymous function call I'd say
to pay close attention to lambda statements, LABELS, FLET's and the
like. I would spend some time with the primary method for
IO.MULTIPLEX:EVENT-DISPATCH as the backtrace indicates that was the most
recent method called before the backtrace.
I've rarely used (*)MCL, so I'm not sure that I can be a big help on
that end. Looking at the code I can't see any function calls with extra
arguments, so it could be a bug local to your CCL or something else
strange. Have you tried another lisp implementation to see if the
problem is cross implementation?
elliott
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>))
_______________________________________________
iolib-devel mailing list
[email protected]
http://common-lisp.net/cgi-bin/mailman/listinfo/iolib-devel
_______________________________________________
iolib-devel mailing list
[email protected]
http://common-lisp.net/cgi-bin/mailman/listinfo/iolib-devel