Thread View: comp.sys.ti.explorer
1 messages
1 total messages
Started by Bjorn Victor
Tue, 20 Mar 1990 14:08
COPY on defstructs break?
Author: Bjorn Victor
Date: Tue, 20 Mar 1990 14:08
Date: Tue, 20 Mar 1990 14:08
288 lines
10941 bytes
10941 bytes
EXPLORER (TM) BUG REPORT
DATE-TIME : 20-Mar-90 15:02:02
PRIORITY : H (H)igh (M)edium (L)ow
TYPE : B (B)ug (D)esign (M)anual
MACHINE-TYPE: E (E)xplorer (M)icroExplorer
DESCRIPTION-OF-PROBLEM:
Using the function COPY on defstructs break? In release 6, given the
following code:
;;; -*- Mode:Common-Lisp; Package:USER; Base:10 -*-
(defstruct frob
(foo 0)
(bar t))
(defun frobnicate (frob)
(copy frob))
(defun lose-frob ()
(frobnicate (make-frob :foo 1 :bar :baz)))
Calling (LOSE-FROB) gives the error below.
WORK-AROUND:
Yes please!!
CUSTOMER-ID: L2797
NAME : Bjvrn Victor
LOCATION : ICU, Uppsala University, Sweden
ADDRESS : Dept. of Computer Systems, Uppsala University, P.O. Box 520, S-751 20 UPPSALA, SWEDEN
PHONE : +46 18 183169; fax +46 18 550225
NET-ADDRESS: Bjorn Victor <Victor@John-Jameson.DoCS.UU.SE>
BACKTRACE:
>>Trap #o31574 (WRITE-IN-READ-ONLY M-T)
There was an attempt to write into 15006516, which is a read-only address;
the code was probably trying to modify a program constant.
Backtrace from the debugger:
Caller expects 2 values.
Open catches in this frame for tag: T.
GETHASH (P.C. = 279) (from SYS: KERNEL; HASH)
Arg 0 (KEY): #<Class-description FROB>
Arg 1 (HASH-TABLE): #<EQ-HASH-TABLE (Funcallable) T>
--Defaulted args:--
Arg 2 (DEFAULT-VALUE): NIL
Local 0 (PREVIOUS-INHIBIT-SCHEDULING-FLAG): NIL
Local 1 (HASH-FUNCTION): NIL
Local 2 (LEX-PARENT-ENV-REG): NIL
Local 3 (COMPARE-FUNCTION): #<DTP-FUNCTION EQ 4147132>
Local 4 (LEX-CURRENT-VECTOR-REG): NIL
Local 5 (LEX-ALL-VECTORS-REG): NIL
Local 6 (HASH-CODE): #<Class-description FROB>
Local 7: NIL
Local 8 (X): #<EQ-HASH-TABLE (Funcallable) T>
Local 9 (BLEN): 3
Local 10 (MOD): 16
Local 11 (FUNC-P): T
Local 12 (.CASE.ITEM.): NIL
Local 13 (PH): 0
Local 14 (P): #<DTP-LOCATIVE 71175555>
Local 15 (KSIZE): NIL
Local 16 (DELTA): NIL
Local 17 (P): #<DTP-LOCATIVE 71175555>
Local 18: NIL
Local 19 (POINTER): #<DTP-LOCATIVE 71175464>
Local 20 (ALREADY-MINE): NIL
Disassembled code:
276 SET-NIL PDL-PUSH
277 PUSH FEF|8 ; CURRENT-PROCESS
278 (MISC) TEST %STORE-CONDITIONAL
=> 279 BR-NOT-NULL 284
280 PUSH LOCAL|19 ; POINTER
281 PUSH FEF|8 ; CURRENT-PROCESS
Names and values of specials bound in this frame:
INHIBIT-SCHEDULING-FLAG: T
Lexpr-funcalled.
TICLOS::FIND-RIGHT-METHOD (P.C. = 24) (from SYS: PATCH.CLOS; PATCH-6-3)
Arg 0 (HT): #<EQ-HASH-TABLE (Funcallable) T>
Rest arg (ARGS): NIL
Local 1 (ARG): #S(FROB :FOO 1 :BAR :BAZ)
Local 2 (IGNOR): NIL
Local 3 (X): NIL
Disassembled code:
21 PUSH FEF|4 ; '36866
22 PUSH FEF|5 ; #'GETHASH
23 (AUX) COMPLEX-CALL-TO-PUSH ; 2 args, 2 values
=> 24 POP LOCAL|2 ; IGNOR
25 POP ARG|0 ; HT
26 BR-NOT-NULL 28
No specials bound in this frame
TICLOS::PREPARE-EFFECTIVE-CODE (P.C. = 68) (from SYS: CLOS; METHOD-COMBINATION)
Arg 0 (GEN-FUNCTION): #<STANDARD-GENERIC-FUNCTION COPY>
Rest arg (ARG-VALUES): (#S(FROB :FOO 1 :BAR :BAZ))
Local 1 (MLOC): NIL
Local 2 (HANDLER): NIL
Local 3 (CODE): NIL
Local 4 (METHODS): NIL
Local 5 (ARGLIST): NIL
Local 6 (FN): NIL
Local 7: NIL
Local 8: NIL
Local 9: NIL
Local 10 (HANDLER): NIL
Local 11: NIL
No specials bound in this frame
Values to be collected for MULTIPLE-VALUE-LIST.
COPY (P.C. = 20) (from SYS: KERNEL; STORAGE-INTERNALS)
Arg 0 (OBJECT): #S(FROB :FOO 1 :BAR :BAZ)
Values to be collected for MULTIPLE-VALUE-LIST.
FROBNICATE (P.C. = 10) (from JJ: VICTOR; CLOS-BUG)
Arg 0 (FROB): #S(FROB :FOO 1 :BAR :BAZ)
Values to be collected for MULTIPLE-VALUE-LIST.
LOSE-FROB (P.C. = 22) (from JJ: VICTOR; CLOS-BUG)
Values to be collected for MULTIPLE-VALUE-LIST.
SYS:*EVAL (P.C. = 560) (from SYS: KERNEL; EVALUATOR)
Arg 0 (FORM): (LOSE-FROB)
Local 0 (HOOK-FUNCTION): NIL
Local 1 (ENV): NIL
Local 2 (VCELL): NIL
Local 3: NIL
Local 4 (FRAME): NIL
Local 5 (VALUE): NIL
Local 6 (FUNCTION-OBJ): #<DTP-FUNCTION LOSE-FROB -61036512>
Local 7 (SPECIAL-FORM-ARGLIST): NIL
Local 8 (LOCAL): NIL
Local 9 (DBI): NIL
Local 10 (QUOTE-DEGREE): NIL
Local 11 (LAMBDA-NAME): NIL
Local 12 (LAMBDA-BODY): NIL
Local 13 (FUN): NIL
Local 14: NIL
Local 15: NIL
Local 16 (NUMBER-OF-ARGS-PUSHED): 0
Local 17 (REST-UNEVALED-ARGS): NIL
Local 18 (ARG): NIL
Local 19 (QUOTEP): NIL
Local 20 (FVAR): NIL
Local 21 (ANCHOR): NIL
Local 22 (LOC): NIL
Local 23 (HOOKFCT): NIL
Values to be collected for MULTIPLE-VALUE-LIST.
EVALHOOK (P.C. = 43) (from SYS: KERNEL; EVALUATOR)
Arg 0 (FORM): (LOSE-FROB)
Arg 1 (EVALHOOKFN): NIL
Arg 2 (APPLYHOOKFN): NIL
Arg 3 (ENV): NIL
Values to be collected for MULTIPLE-VALUE-LIST.
SYS:*EVAL (P.C. = 560) (from SYS: KERNEL; EVALUATOR)
Arg 0 (FORM): (EVALHOOK (QUOTE (LOSE-FROB)) NIL NIL (AND (BOUNDP #) UCL::*ENV*))
Local 0 (HOOK-FUNCTION): NIL
Local 1 (ENV): NIL
Local 2 (VCELL): NIL
Local 3: NIL
Local 4 (FRAME): NIL
Local 5 (VALUE): NIL
Local 6 (FUNCTION-OBJ): #<DTP-FUNCTION EVALHOOK 7110470>
Local 7 (SPECIAL-FORM-ARGLIST): NIL
Local 8 (LOCAL): NIL
Local 9 (DBI): NIL
Local 10 (QUOTE-DEGREE): NIL
Local 11 (LAMBDA-NAME): NIL
Local 12 (LAMBDA-BODY): NIL
Local 13 (FUN): NIL
Local 14: NIL
Local 15: ((QUOTE (LOSE-FROB)) NIL NIL (AND (BOUNDP #) UCL::*ENV*))
Local 16 (NUMBER-OF-ARGS-PUSHED): 4
Local 17 (REST-UNEVALED-ARGS): NIL
Local 18 (ARG): NIL
Local 19 (QUOTEP): NIL
Local 20 (FVAR): NIL
Local 21 (ANCHOR): NIL
Local 22 (LOC): NIL
Local 23 (HOOKFCT): NIL
Values to be collected for MULTIPLE-VALUE-LIST.
(:METHOD UCL::TOP-LEVEL-FUNCTIONS :EXECUTE) (P.C. = 84) (from SYS: UCL; TOP-LEVEL-MODES)
(SELF is NIL)
Arg 0 (.OPERATION.): :EXECUTE
Arg 1 (IGNORE): #<LISP-LISTENER Lisp Listener 1 1202212 exposed>
Local 0 (LL): (QUOTE (LOSE-FROB))
Local 1 (L): (EVALHOOK (QUOTE (LOSE-FROB)) NIL NIL (AND (BOUNDP #) UCL::*ENV*))
Local 2 (V): NIL
Local 3: NIL
Local 4: NIL
Local 5: NIL
Remainder of stack:
(:METHOD UCL:BASIC-COMMAND-LOOP :EXECUTE-COMMAND) (P.C. = 44)
UCL::PROCESS-TYPEIN (P.C. = 101)
(:METHOD UCL:BASIC-COMMAND-LOOP :HANDLE-TYPEIN-INPUT) (P.C. = 28)
(:METHOD UCL:BASIC-COMMAND-LOOP :HANDLE-KEY-INPUT) (P.C. = 70)
(:METHOD UCL:BASIC-COMMAND-LOOP :FETCH-AND-EXECUTE) (P.C. = 72)
(:METHOD W::LISP-LISTENER :LOOP) (P.C. = 114)
(:METHOD UCL:COMMAND-LOOP-MIXIN :COMMAND-LOOP) (P.C. = 58)
SYS::PROCESS-TOP-LEVEL (P.C. = 155)
SYS:LISP-TOP-LEVEL (P.C. = 30)
SOFTWARE-CONFIGURATION:
With SYSTEM 6.15, VIRTUAL-MEMORY 6.1, EH 6.4, MAKE-SYSTEM 6.0,
MICRONET 6.0, LOCAL-FILE 6.0, BASIC-PATHNAME 6.1,
NETWORK-SUPPORT-COLD 6.0, BASIC-NAMESPACE 6.2, NETWORK-NAMESPACE 6.0,
DISK-IO 6.1, DISK-LABEL 6.0, BASIC-FILE 6.2, MAC-PATHNAME 6.0,
NETWORK-PATHNAME 6.0, COMPILER 6.10, TV 6.15, DATALINK 6.0, CHAOSNET 6.0,
GC 6.3, MEMORY-AUX 6.0, NVRAM 6.1, SYSLOG 6.1, STREAMER-TAPE 6.4,
UCL 6.0, INPUT-EDITOR 6.0, METER 6.1, ZWEI 6.5, DEBUG-TOOLS 6.3,
NETWORK-SUPPORT 6.0, NETWORK-SERVICE 6.1, DATALINK-DISPLAYS 6.0,
FONT-EDITOR 6.1, SERIAL 6.0, PRINTER 6.3, MAC-PRINTER-TYPES 6.1,
PRINTER-TYPES 6.1, IMAGEN 6.0, SUGGESTIONS 6.0, MAIL-DAEMON 6.2,
MAIL-READER 6.2, TELNET 6.0, VT100 6.0, NAMESPACE-EDITOR 6.0,
PROFILE 6.1, VISIDOC 6.4, TI-CLOS 6.20, CLEH 6.5, IP 3.47,
Experimental CLX 6.2, CLUE 6.10, X11M 6.13, RPC 6.1, NFS 3.9,
Experimental NFS-PATCHES 2.10, DOCUMENTER 6.0, GRAPHICS-WINDOW 6.0,
Experimental GED 6.1, TREE 6.0, Experimental ICU-DOCS 13.1,
Experimental SYSTEM-ENHANCEMENTS 19.9, Experimental TCP-IMAGEN 10.0,
Experimental TEXINFO 5.5, Experimental ICU-LIBRARY 14.3,
Experimental DOMAIN 6.0, Experimental STUB-RESOLVER 3.0,
Experimental SYSTEM-PATCHES 1.14, Experimental EH-PATCHES 1.2,
Experimental ZWEI-PATCHES 1.18, Experimental COMPILER-PATCHES 1.4,
Experimental IP-PATCHES 1.5, Experimental MAIL-DAEMON-PATCHES 1.1,
Experimental MAKE-SYSTEM-PATCHES 1.2,
Experimental BASIC-PATHNAME-PATCHES 1.3, Experimental TELNET-PATCHES 1.1,
Experimental BASIC-FILE-PATCHES 1.5,
Experimental STREAMER-TAPE-PATCHES 1.2, Experimental TV-PATCHES 1.3,
Experimental SUGGESTIONS-PATCHES 1.1, Experimental PRINTER-PATCHES 1.1,
Experimental BASIC-NAMESPACE-PATCHES 1.5,
Experimental DEBUG-TOOLS-PATCHES 1.2,
Experimental INPUT-EDITOR-PATCHES 1.1,
Experimental MAIL-READER-PATCHES 1.1,
Experimental NETWORK-SERVICE-PATCHES 1.2,
Experimental CHAOSNET-PATCHES 1.2, Experimental LOCAL-FILE-PATCHES 1.4,
Experimental NAMESPACE-EDITOR-PATCHES 1.1,
Experimental NETWORK-SUPPORT-COLD-PATCHES 1.1, Experimental YP 2.0,
microcode 602, Band Name: 6.15 w X11 & ICU, 900111/Vic,
Host: Jack-Daniels
HARDWARE-CONFIGURATION:
SLOT 0. TYPE = NEC. PART # = 00002236400-0001. SERIAL # = 311400-200-7-24. REV = AF
SLOT 2. TYPE = NPI. PART # = 00002238040-0001. SERIAL # = CB0000-200-6-53. REV = *U
SLOT 4. TYPE = MEM. PART # = 00002243910-0003. SERIAL # = 871700-200-7-35. REV = *U
SLOT 5. TYPE = SIB. PART # = 00002236645-0001. SERIAL # = 370000-200-6-64. REV = AE
SLOT 6. TYPE = CPU. PART # = 00002243895-0001. SERIAL # = 921800-200-7-25. REV = AD
********************************
* Return to: *
* *
* EXPLORER BUG REPORTS *
* c/o Explorer Project Manager*
* TEXAS INSTRUMENTS, MS 2201 *
* P.O. Box 149149 *
* Austin, Texas 78714-9149 *
********************************
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads