Unbound slot location bug
Pascal Costanza <[email protected]> Mon, 9 May 2022 11:14:51 +0200
| Newsgroups | gmane.editors.j.devel |
|---|---|
| Message-ID | <[email protected]> |
--Apple-Mail=_825E75FE-FAEE-4F3F-8C7F-9121ADAC5ECC
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
charset=utf-8
Hi,
I=E2=80=99m running the Closer to MOP tests, and see at least one bug. =
(With the limited time I have available, I can only do one bug at a =
time, step by step, so there might be more.)
Armed Bear Common Lisp 1.9.0
Java 17.0.3 Azul Systems, Inc.
OpenJDK 64-Bit Server VM
Low-level initialization completed in 0.095 seconds.
Startup completed in 0.469 seconds.
Loading /Users/costanza/.abclrc completed in 3.554 seconds.
Type ":help" for a list of available commands.
CL-USER(1): (use-package :mop)
(defclass my-effective-slot-definition =
(standard-effective-slot-definition)
())
(defclass my-class (standard-class)
())
(defmethod validate-superclass
((class my-class)
(superclass standard-class))
t)
(defmethod effective-slot-definition-class
((class my-class) &rest initargs)
(declare (ignore initargs))
(find-class 'my-effective-slot-definition))
(defclass my-object ()
((my-slot :allocation :class))
(:metaclass my-class))
T
CL-USER(2): CL-USER(2): #<STANDARD-CLASS MY-EFFECTIVE-SLOT-DEFINITION =
{731A05FD}>
CL-USER(3): CL-USER(3): #<STANDARD-CLASS MY-CLASS {42C6245B}>
CL-USER(4): CL-USER(4): #<STANDARD-METHOD VALIDATE-SUPERCLASS (MY-CLASS =
STANDARD-CLASS) {4959790F}>
CL-USER(5): CL-USER(5): #<STANDARD-METHOD =
EFFECTIVE-SLOT-DEFINITION-CLASS (MY-CLASS) {2AAA2CBF}>
CL-USER(6): CL-USER(6): #<THREAD "interpreter" {25793D3C}>: Debugger =
invoked on condition of type UNBOUND-SLOT
The slot LOCATION is unbound in the object =
#<MY-EFFECTIVE-SLOT-DEFINITION {32EB5C37}>.
Restarts:
0: TOP-LEVEL Return to top level.
[1] CL-USER(7):=20
Best,
Pascal
--Apple-Mail=_825E75FE-FAEE-4F3F-8C7F-9121ADAC5ECC
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
charset=utf-8
<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" =
class=3D"">Hi,<div class=3D""><br class=3D""></div><div class=3D"">I=E2=80=
=99m running the Closer to MOP tests, and see at least one bug. (With =
the limited time I have available, I can only do one bug at a time, step =
by step, so there might be more.)</div><div class=3D""><br =
class=3D""></div><div class=3D""><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">Armed =
Bear Common Lisp 1.9.0</span></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">Java =
17.0.3 Azul Systems, Inc.</span></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">OpenJDK =
64-Bit Server VM</span></div><div style=3D"margin: 0px; font-stretch: =
normal; font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">Low-level=
initialization completed in 0.095 seconds.</span></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">Startup completed in 0.469 =
seconds.</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">Loading =
/Users/costanza/.abclrc completed in 3.554 seconds.</span></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">Type ":help" for a list of available =
commands.</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">CL-USER(1): (use-package :mop)</span></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139); min-height: 13px;" class=3D""><span style=3D"font-variant-ligatures:=
no-common-ligatures" class=3D""></span><br class=3D""></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">(defclass my-effective-slot-definition =
(standard-effective-slot-definition)</span></div><div style=3D"margin: =
0px; font-stretch: normal; font-size: 11px; line-height: normal; =
font-family: Menlo; background-color: rgb(254, 244, 139);" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D""> ())</span></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139); min-height: 13px;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D""></span><br class=3D""></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">(defclass=
my-class (standard-class)</span></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""> =
())</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139); min-height: 13px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D""></span><br class=3D""></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">(defmethod validate-superclass</span></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D""> =
((class my-class)</span></div><div style=3D"margin: 0px; font-stretch: =
normal; font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""> =
(superclass =
standard-class))</span></div><div style=3D"margin: 0px; font-stretch: =
normal; font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""> =
t)</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139); min-height: 13px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D""></span><br class=3D""></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">(defmethod effective-slot-definition-class</span></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D""> =
((class my-class) &rest initargs)</span></div><div style=3D"margin: =
0px; font-stretch: normal; font-size: 11px; line-height: normal; =
font-family: Menlo; background-color: rgb(254, 244, 139);" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D""> (declare (ignore initargs))</span></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D""> (find-class =
'my-effective-slot-definition))</span></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139); min-height: 13px;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D""></span><br class=3D""></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">(defclass=
my-object ()</span></div><div style=3D"margin: 0px; font-stretch: =
normal; font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""> =
((my-slot :allocation :class))</span></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""> =
(:metaclass my-class))</span></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 11px; line-height: normal; font-family: =
Menlo; background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">T</span></div><div style=3D"margin: 0px; font-stretch: =
normal; font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">CL-USER(2): CL-USER(2): #<STANDARD-CLASS =
MY-EFFECTIVE-SLOT-DEFINITION {731A05FD}></span></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">CL-USER(3): CL-USER(3): =
#<STANDARD-CLASS MY-CLASS {42C6245B}></span></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">CL-USER(4): CL-USER(4): =
#<STANDARD-METHOD VALIDATE-SUPERCLASS (MY-CLASS STANDARD-CLASS) =
{4959790F}></span></div><div style=3D"margin: 0px; font-stretch: =
normal; font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">CL-USER(5): CL-USER(5): #<STANDARD-METHOD =
EFFECTIVE-SLOT-DEFINITION-CLASS (MY-CLASS) =
{2AAA2CBF}></span></div><div style=3D"margin: 0px; font-stretch: =
normal; font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">CL-USER(6): CL-USER(6): #<THREAD "interpreter" =
{25793D3C}>: Debugger invoked on condition of type =
UNBOUND-SLOT</span></div><div style=3D"margin: 0px; font-stretch: =
normal; font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""> =
The slot LOCATION is unbound in the object =
#<MY-EFFECTIVE-SLOT-DEFINITION {32EB5C37}>.</span></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">Restarts:</span></div><div =
style=3D"margin: 0px; font-stretch: normal; font-size: 11px; =
line-height: normal; font-family: Menlo; background-color: rgb(254, 244, =
139);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D""> 0: TOP-LEVEL Return to top =
level.</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 11px; line-height: normal; font-family: Menlo; =
background-color: rgb(254, 244, 139);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">[1] =
CL-USER(7): </span></div></div><div class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""><br =
class=3D""></span></div><div class=3D"">Best,</div><div =
class=3D"">Pascal</div><div class=3D""><br class=3D""></div></body></html>=
--Apple-Mail=_825E75FE-FAEE-4F3F-8C7F-9121ADAC5ECC--