slime question, navigating to compilation errors

Luís Oliveira luismbo at gmail.com
Tue Nov 13 18:16:21 UTC 2018


Have a look at the *slime-compilation* buffer. There you'll find all the
compilation warnings with useful shortcuts. Not sure why it's not popping
up for you.

Cheers,
Luís

On Tue, Nov 13, 2018 at 4:14 PM Jim Newton <jimka.issy at gmail.com> wrote:

> Perhaps someone can give me some advise about using slime with the sbcl
> compiler.
>
> When I load an asdf system from inside slime, using ,load-system
> sometimes there are compiler warnings and errors printing into the repl
> buffer,
> *slime-repl sbcl* in my case.
>
> Is there a way navigate to the code where the errors occur?
> I've tried the menu items:
>
> SLIME->Compilation->List Notes
> SLIME->Compilation->Next Note
>
> But they don't seem to do anything.
>
>
> For example, in the compile log (printed to the slime repl buffer)
> I see several of "issues" in the text, 1) undefined function FINAL-P
> 2)   #'EQ passed as :key which probably should be :test, 3) Required
> argument is not a symbol: (SM STATE-MACHINE), which is probably a defun
> where it should be defmethod.
>
> Anyway, I can find the errors in my code because I know my own code
> pretty well.  But isn't there something slime can do to help me which
> I'm not taking advantage of?
>
>
> ; compiling (DEFUN FIND-TRANSIT ...)
>
> ; file: /private/var/tmp/tmp.5ur0yB
> ; in: DEFUN FIND-TRANSIT
> ;     (DEFUN NON-DETERMINISTIC-FINITE-AUTOMATA::FIND-TRANSIT
> ;            (
> ;             (NON-DETERMINISTIC-FINITE-AUTOMATA::SM
> ;              NON-DETERMINISTIC-FINITE-AUTOMATA:STATE-MACHINE))
> ;       (LABELS ((NON-DETERMINISTIC-FINITE-AUTOMATA::EXTRACT
> ;
>  (NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSITION-HISTORY)
> ;                  (RETURN-FROM
> NON-DETERMINISTIC-FINITE-AUTOMATA::FIND-TRANSIT #))
> ;                (NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSIT
> ;                    (NON-DETERMINISTIC-FINITE-AUTOMATA::STATE
> ;
> NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSITION-HISTORY)
> ;                  (COND # #)))
> ;         (DOLIST
> ;             (NON-DETERMINISTIC-FINITE-AUTOMATA::STATE
> ;              (NON-DETERMINISTIC-FINITE-AUTOMATA:GET-INITIAL-STATES
> ;               NON-DETERMINISTIC-FINITE-AUTOMATA::SM))
> ;           (NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSIT
> ;            NON-DETERMINISTIC-FINITE-AUTOMATA::STATE NIL))))
> ; --> PROGN SB-IMPL::%DEFUN SB-IMPL::%DEFUN SB-INT:NAMED-LAMBDA
> ; ==>
> ;   #'(SB-INT:NAMED-LAMBDA NON-DETERMINISTIC-FINITE-AUTOMATA::FIND-TRANSIT
> ;         ((NON-DETERMINISTIC-FINITE-AUTOMATA::SM
> ;           NON-DETERMINISTIC-FINITE-AUTOMATA:STATE-MACHINE))
> ;       (BLOCK NON-DETERMINISTIC-FINITE-AUTOMATA::FIND-TRANSIT
> ;         (LABELS ((NON-DETERMINISTIC-FINITE-AUTOMATA::EXTRACT #
> ;                    #)
> ;                  (NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSIT #
> ;                    #))
> ;           (DOLIST (NON-DETERMINISTIC-FINITE-AUTOMATA::STATE #)
> ;             (NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSIT
> ;              NON-DETERMINISTIC-FINITE-AUTOMATA::STATE NIL)))))
> ;
> ; caught ERROR:
> ;   Required argument is not a symbol: (SM STATE-MACHINE)
> ;
> ; compilation unit finished
> ;   caught 1 ERROR condition
> ; compiling (DEFUN FIND-TRANSIT ...)
>
> ; file: /private/var/tmp/tmp.x7Lnm3
> ; in: DEFUN FIND-TRANSIT
> ;     (DEFUN NON-DETERMINISTIC-FINITE-AUTOMATA::FIND-TRANSIT
> ;            (
> ;             (NON-DETERMINISTIC-FINITE-AUTOMATA::SM
> ;              NON-DETERMINISTIC-FINITE-AUTOMATA:STATE-MACHINE))
> ;       (LABELS ((NON-DETERMINISTIC-FINITE-AUTOMATA::EXTRACT
> ;
>  (NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSITION-HISTORY)
> ;                  (RETURN-FROM
> NON-DETERMINISTIC-FINITE-AUTOMATA::FIND-TRANSIT #))
> ;                (NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSIT
> ;                    (NON-DETERMINISTIC-FINITE-AUTOMATA::STATE
> ;
> NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSITION-HISTORY)
> ;                  (COND # #)))
> ;         (DOLIST
> ;             (NON-DETERMINISTIC-FINITE-AUTOMATA::STATE
> ;              (NON-DETERMINISTIC-FINITE-AUTOMATA:GET-INITIAL-STATES
> ;               NON-DETERMINISTIC-FINITE-AUTOMATA::SM))
> ;           (NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSIT
> ;            NON-DETERMINISTIC-FINITE-AUTOMATA::STATE NIL))))
> ; --> PROGN SB-IMPL::%DEFUN SB-IMPL::%DEFUN SB-INT:NAMED-LAMBDA
> ; ==>
> ;   #'(SB-INT:NAMED-LAMBDA NON-DETERMINISTIC-FINITE-AUTOMATA::FIND-TRANSIT
> ;         ((NON-DETERMINISTIC-FINITE-AUTOMATA::SM
> ;           NON-DETERMINISTIC-FINITE-AUTOMATA:STATE-MACHINE))
> ;       (BLOCK NON-DETERMINISTIC-FINITE-AUTOMATA::FIND-TRANSIT
> ;         (LABELS ((NON-DETERMINISTIC-FINITE-AUTOMATA::EXTRACT #
> ;                    #)
> ;                  (NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSIT #
> ;                    #))
> ;           (DOLIST (NON-DETERMINISTIC-FINITE-AUTOMATA::STATE #)
> ;             (NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSIT
> ;              NON-DETERMINISTIC-FINITE-AUTOMATA::STATE NIL)))))
> ;
> ; caught ERROR:
> ;   Required argument is not a symbol: (SM STATE-MACHINE)
> ;
> ; compilation unit finished
> ;   caught 1 ERROR condition
> ; compiling (DEFUN FIND-TRANSIT ...)
>
> ; file: /private/var/tmp/tmp.qQtnKo
> ; in: DEFUN FIND-TRANSIT
> ;     (MEMBER NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSITION
> ;             NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSITION :KEY #'EQ)
> ;
> ; caught WARNING:
> ;   The function EQ is called by MEMBER with one argument, but wants
> exactly two.
>
> ; file: /private/var/tmp/tmp.qQtnKo
> ; in: DEFUN FIND-TRANSIT
> ;     (NON-DETERMINISTIC-FINITE-AUTOMATA::FINAL-P
> ;      NON-DETERMINISTIC-FINITE-AUTOMATA::STATE)
> ;
> ; caught STYLE-WARNING:
> ;   undefined function: FINAL-P
> ;
> ; compilation unit finished
> ;   Undefined function:
> ;     FINAL-P
> ;   caught 1 WARNING condition
> ;   caught 1 STYLE-WARNING condition
> ; compiling (DEFUN FIND-TRANSIT ...)
>
> ; file: /private/var/tmp/tmp.996P12
> ; in: DEFUN FIND-TRANSIT
> ;     (MEMBER NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSITION
> ;             NON-DETERMINISTIC-FINITE-AUTOMATA::TRANSITION-HISTORY :KEY
> #'EQ)
> ;
> ; caught WARNING:
> ;   The function EQ is called by MEMBER with one argument, but wants
> exactly two.
>
> ; file: /private/var/tmp/tmp.996P12
> ; in: DEFUN FIND-TRANSIT
> ;     (NON-DETERMINISTIC-FINITE-AUTOMATA::FINAL-P
> ;      NON-DETERMINISTIC-FINITE-AUTOMATA::STATE)
> ;
> ; caught STYLE-WARNING:
> ;   undefined function: FINAL-P
> ;
> ; compilation unit finished
> ;   Undefined function:
> ;     FINAL-P
> ;   caught 1 WARNING condition
> ;   caught 1 STYLE-WARNING condition
> ; compiling (DEFUN FIND-TRANSIT ...)
>
> ; file: /private/var/tmp/tmp.L6YTQn
> ; in: DEFUN FIND-TRANSIT
> ;     (NON-DETERMINISTIC-FINITE-AUTOMATA::FINAL-P
> ;      NON-DETERMINISTIC-FINITE-AUTOMATA::STATE)
> ;
> ; caught STYLE-WARNING:
> ;   undefined function: FINAL-P
> ;
> ; compilation unit finished
> ;   Undefined function:
> ;     FINAL-P
> ;   caught 1 STYLE-WARNING condition
> ; compiling (DEFUN FIND-TRANSIT ...)
> ; compiling (DEFUN FIND-TRANSIT ...)
> CL-USER>
> CL-USER>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/slime-devel/attachments/20181113/169d1d16/attachment-0001.html>


More information about the slime-devel mailing list