Interlisp / medley

The main repo for the Medley Interlisp project. Wiki, Issues are here. Other repositories include maiko (the VM implementation) and Interlisp.github.io (web site sources)
https://Interlisp.org
MIT License
378 stars 19 forks source link

CLOS::CLASSES definition not found error when printing class from CLOS browser #1883

Open pamoroso opened 6 days ago

pamoroso commented 6 days ago

Describe the bug

Printing a class from the CLOS browser with the command Print or Print > Print brings up a break window with the following error:

In ERROR:
Class (CLOS::CLASSES definition not found)

To Reproduce

Steps to reproduce the behavior:

  1. launch Medley
  2. open the CLOS browser
  3. when the CLOS browser prompts for a class enter CL:STANDARD-OBJECT
  4. click CLASS on the class lattice
  5. from the middle-click menu on CLASS, select Print or Print > Print

Expected behavior

Information on the selected class is printed with no error.

Screenshots

The break window:

clos-browser-error1

The full desktop:

clos-browser-error2

Context (please complete the following information):

Additional context

The context of the error:

MOUSE/5(debug)BTV
   MESS1 CLOS::CLASS
   MESS2 (CLOS::CLASSES definition not found)
   NOBREAK T
ERROR
\GETDEF/GETDEFERR
   NAME CLOS::CLASS
   TYPE CLOS::CLASSES
   SOURCE FILE
   OPTIONS NIL
   SOURCE NIL
\GETDEF/GETDEFFROMFILE
   EDIT NIL
   NOCOPY NIL
GETDEF
CLOS::|(METHOD CLOS-BROWSER::PRINT-CLASS (CLOS-BROWSER::CLOS-BROWSER-NODE))|
CL:APPLY
CLOS::INITIAL-DFUN
"lambda in MAKE-INITIAL-DFUN"
CL:APPLY
   CLOS::*INVALID-DFUNS-ON-STACK* (#<Standard-Generic-Function CLOS-BROWSER::PRINT-CLASS (1) 124,26644> #<Standard-Generic-Function WEB::DO-SELECTED-COMMAND (1) 124,111200> #<Standard-Generic-Function WEB::MIDDLE-SELECTION (1) 125,2724> #<Standard-Generic-Function WEB::BUTTON-EVENT-FN (1) 125,2140>)
CLOS::INVALID-DFUN
"lambda in INVALIDATE-DFUN-INTERNAL"
CL:APPLY
CLOS::|(METHOD WEB::DO-SELECTED-COMMAND (WEB:WEB-EDITOR T T))|
CL:APPLY
   CLOS::*INVALID-DFUNS-ON-STACK* (#<Standard-Generic-Function WEB::DO-SELECTED-COMMAND (1) 124,111200> #<Standard-Generic-Function WEB::MIDDLE-SELECTION (1) 125,2724> #<Standard-Generic-Function WEB::BUTTON-EVENT-FN (1) 125,2140>)
CLOS::INITIAL-DFUN
"lambda in MAKE-INITIAL-DFUN"
   WEB:WEB-EDITOR #<CLOS-BROWSER:CLOS-BROWSER 124,72030>
   WEB::OBJECT #<CLOS-BROWSER::CLOS-BROWSER-NODE 122,70620>
CLOS::|(METHOD WEB::MIDDLE-SELECTION (WEB:WEB-EDITOR))|
CL:APPLY
   CLOS::*INVALID-DFUNS-ON-STACK* (#<Standard-Generic-Function WEB::MIDDLE-SELECTION (1) 125,2724> #<Standard-Generic-Function WEB::BUTTON-EVENT-FN (1) 125,2140>)
CLOS::INITIAL-DFUN
"lambda in MAKE-INITIAL-DFUN"
   SI::*CATCH-RETURN-TO* (& &)
   *PROCEED-CASES* (& &)
   SI::*NLSETQFLAG* NIL
   SI::*CATCH-RETURN-PC* 666
CLOS::|(METHOD WEB::BUTTON-EVENT-FN (WEB:WEB-EDITOR))|
CL:APPLY
CLOS::CHECKING-MISS
"lambda in UPDATE-TO-CHECKING-DFUN"
"lambda in lambda in 31 top-level forms"
CL:APPLY
   CLOS::*INVALID-DFUNS-ON-STACK* (#<Standard-Generic-Function WEB::BUTTON-EVENT-FN (1) 125,2140>)
CLOS::INVALID-DFUN
"lambda in INVALIDATE-DFUN-INTERNAL"
   WEB::WINDOW-FOR-MENU #<CLOS-BROWSER:CLOS-BROWSER 124,72030>
WEB::WEB-WINDOW-BUTTON-EVENT-FN
   SI::*DUMMY-FOR-CATCH* T
   SI::*CATCH-RETURN-FROM* (&)
\PROTECTED.APPLYA0001
   FN WEB::WEB-WINDOW-BUTTON-EVENT-FN
   WINDOW {WINDOW}#122,71664
   SI::NLSETQ-VALUE NIL
   *PROCEED-CASES* (&)
   SI::*NLSETQFLAG* NIL
\PROTECTED.APPLY
   \MHCOM WEB::WEB-WINDOW-BUTTON-EVENT-FN
   \MHPROCESS NIL
   \MHWINDOW {WINDOW}#122,71664
   \MOUSEBUSY T
WINDOW.MOUSE.HANDLER
   \OLDTTY #<Process EXEC/174,24204>
   \MOUSEBUSY NIL
\MOUSE.PROCESS
   *FORM* (\MOUSE.PROCESS)
   *ARGVAL* NIL
   *TAIL* NIL
   *FN* \MOUSE.PROCESS
\EVALFORM
   %#FORM# (\MOUSE.PROCESS)
   *CURRENT-PROCESS* #<Process OLDMOUSE/174,24410>
   HELPFLAG BREAK!
   \CURRENTDISPLAYLINE 0
   \#DISPLAYLINES 15
   \LINEBUF.OFD #<IO Linebuffer Stream/130,27100>
   *READTABLE* #<ReadTable INTERLISP/174,73714>
   \PRIMTERMTABLE {TERMTABLEP}#174,66740
   \PRIMTERMSA {CHARTABLE}#174,67000
   TtyDisplayStream #<Output Display Stream/130,27300>
   SI::*RESETFORMS* NIL
   \INTERRUPTABLE T
   \TTYWINDOW {WINDOW}#122,71474
   READBUF NIL
   \TERM.OFD #<Output Display Stream/130,10200>
   *STANDARD-OUTPUT* #<Output Display Stream/130,10200>
   *STANDARD-INPUT* #<IO Linebuffer Stream/130,27100>
\MAKE.PROCESS0
T
pamoroso commented 5 days ago

The error doesn't occur with user-defined classes, only with the built-in ones in the lattice window.