[Openmcl-devel] Unprintable CCL::IMMEDIATE : #xEB

Cyrus Harmon ch-openmcl at bobobeach.com
Mon Dec 1 08:02:37 PST 2008


One reliable way to reproduce the bug (?) is to try loading a TIFF  
file using my retrospectiff package:

To reproduce:

1. install retrospectiff, which can be found at:

http://git.cyrusharmon.org/cgi-bin/gitweb.cgi?p=retrospectiff.git

2. enter the following from the retrospectiff directory in ccl:

(asdf:oos 'asdf:load-op :retrospectiff)
(defparameter *snow-image* (retrospectiff:read-tiff-file "images/ 
snow.tiff"))


Interestingly, this also fails in x86-64 darwin, but with a more  
sensible error message. So perhaps it's a bug in my code that is  
triggering a deficient error mechanism:



#\M doesn't match array element type of #(0 0).
    [Condition of type SIMPLE-ERROR]

Restarts:
  0: [RETRY] Retry SLIME REPL evaluation request.
  1: [ABORT] Return to SLIME's top level.
  2: [ABORT-BREAK] Reset this thread
  3: [ABORT] Kill this thread

Backtrace:
   0: (CCL::GENERIC-CHARACTER-READ-VECTOR #<BASIC-FILE-CHARACTER-INPUT- 
STREAM ("/Users/sly/projects/git.cyrusharmon.org/retrospectiff/images/ 
snow.tiff"/7 ISO-8859-1) #x30004158F39D> #(0 0) 0 2)
   1: (READ-SEQUENCE #(0 0) #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/ 
Users/sly/projects/git.cyrusharmon.org/retrospectiff/images/snow.tiff"/ 
7 ISO-8859-1) #x30004158F39D> :START 0 :END 2)
   2: (READ-BYTES #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/sly/ 
projects/git.cyrusharmon.org/retrospectiff/images/snow.tiff"/7  
ISO-8859-1) #x30004158F39D> 2)
   3: (READ-INT-16 #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/sly/ 
projects/git.cyrusharmon.org/retrospectiff/images/snow.tiff"/7  
ISO-8859-1) #x30004158F39D> :BYTE-ORDER NIL)
   4: (READ-TIFF-STREAM #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/ 
sly/projects/git.cyrusharmon.org/retrospectiff/images/snow.tiff"/7  
ISO-8859-1) #x30004158F39D>)
   5: (READ-TIFF-FILE "images/snow.tiff")
   6: (CCL::CALL-CHECK-REGS READ-TIFF-FILE "images/snow.tiff")
   7: (CCL::CHEAP-EVAL-IN-ENVIRONMENT (CCL::%DEFPARAMETER '*SNOW- 
IMAGE* (READ-TIFF-FILE "images/snow.tiff") NIL) #<CCL::LEXICAL- 
ENVIRONMENT #x30004158FFDD>)
   8: (SWANK::EVAL-REGION "(defparameter *snow-image* (read-tiff-file  
\"images/snow.tiff\"))\n")
   9: ((:INTERNAL SWANK::REPL-EVAL))
  10: (SWANK::TRACK-PACKAGE #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL  
SWANK::REPL-EVAL) #x3000415904AF>)
  11: (SWANK::CALL-WITH-RETRY-RESTART "Retry SLIME REPL evaluation  
request." #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::REPL-EVAL)  
#x30004159052F>)
  12: (SWANK::CALL-WITH-BUFFER-SYNTAX NIL #<CCL:COMPILED-LEXICAL- 
CLOSURE (:INTERNAL SWANK::REPL-EVAL) #x30004159056F>)
  13: (SWANK::REPL-EVAL "(defparameter *snow-image* (read-tiff-file  
\"images/snow.tiff\"))\n")
  14: (CCL::CALL-CHECK-REGS SWANK:LISTENER-EVAL "(defparameter *snow- 
image* (read-tiff-file \"images/snow.tiff\"))\n")
  15: (SWANK::EVAL-FOR-EMACS (SWANK:LISTENER-EVAL "(defparameter *snow- 
image* (read-tiff-file \"images/snow.tiff\"))\n") "RETROSPECTIFF" 19)
  16: (SWANK::PROCESS-REQUESTS NIL)
  17: ((:INTERNAL SWANK::HANDLE-REQUESTS))
  18: (#<Anonymous Function #x300041014FAF> #<Compiled-function  
SWANK:SWANK-DEBUGGER-HOOK #x3000411244AF> #<CCL:COMPILED-LEXICAL- 
CLOSURE (:INTERNAL SWANK::HANDLE-REQUESTS) #x3000412F5FAF>)
  19: (SWANK::CALL-WITH-REDIRECTED-IO #<CONNECTION #x3000412EFB2D>  
#<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::CALL-WITH-CONNECTION)  
#x3000412F5F6F>)
  20: (SWANK::CALL-WITH-CONNECTION #<CONNECTION #x3000412EFB2D>  
#<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::HANDLE-REQUESTS)  
#x3000412F5FAF>)
  21: (SWANK::HANDLE-REQUESTS #<CONNECTION #x3000412EFB2D> NIL)
  22: (SWANK::CALL-WITH-BINDINGS NIL #<CCL:COMPILED-LEXICAL-CLOSURE  
(:INTERNAL SWANK::SPAWN-REPL-THREAD) #x3000412F5FFF>)
  23: (CCL::RUN-PROCESS-INITIAL-FORM #<PROCESS repl-thread(5) [Active]  
#x3000412F1C0D> (#<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL:: 
%PROCESS-RUN-FUNCTION) #x3000412F1B7F>))
  24: ((:INTERNAL CCL::%PROCESS-PRESET-INTERNAL) #<PROCESS repl- 
thread(5) [Active] #x3000412F1C0D> (#<CCL:COMPILED-LEXICAL-CLOSURE  
(:INTERNAL CCL::%PROCESS-RUN-FUNCTION) #x3000412F1B7F>))
  25: ((:INTERNAL CCL::THREAD-MAKE-STARTUP-FUNCTION))


thanks again,

cyrus

On Dec 1, 2008, at 7:35 AM, Cyrus Harmon wrote:

>
> My bug writing skills have clearly atrophied. Yes, this is 32-bit x86
> on darwin (10.5.5). This is in the trunk (or the trunk as of a couple
> days ago). It's quite possible that I'm the culprit by lying to the
> compiler with various declarations in ways that SBCL isn't offended
> by. I'll see what I can do about a reproducible test case.
>
> thanks,
>
> cyrus
>
> On Nov 30, 2008, at 10:10 PM, Gary Byers wrote:
>
>> It's hard to respond to something like this without knowing what
>> version
>> of the lisp you're running.  Unless you're really sure that that
>> information
>> is irrelevant, it's generally a good idea to include it when
>> reporting a
>> problem like this.
>>
>> My best guess is that you're running some 32-bit X86 version on
>> Darwin.
>> On that platform, #xeb is just a placeholder value used to reserve
>> space for an outgoing stack frame in some cases; nothing's supposed
>> to ever "see" that marker value.  Having one of these things get
>> passed around is indicative of a fairly serious bug (the compiler's
>> lost track of what's on the stack, or the runtime is pushing or
>> popping more than it's supposed to, or something like that.)
>>
>> It's been a while since I've seen that sort of bug in the x86-32
>> trunk lisps, but that doesn't mean that such a bug isn't still
>> there.  If it is still present in the trunk, then knowing how to
>> reproduce it would be helpful.
>>
>>
>> On Sun, 30 Nov 2008, Cyrus Harmon wrote:
>>
>>>
>>> Ok, so my latest issue in trying to port my stuff to ccl is the  
>>> error
>>> shown below. Not sure where to begin with this one.
>>>
>>> thanks,
>>>
>>> Cyrus
>>>
>>> value #<Unprintable CCL::IMMEDIATE : #xEB> is not of the expected
>>> type
>>> CCL::UVECTOR.
>>>  [Condition of type TYPE-ERROR]
>>>
>>> Restarts:
>>> 0: [RETRY] Retry SLIME REPL evaluation request.
>>> 1: [ABORT] Return to SLIME's top level.
>>> 2: [ABORT-BREAK] Reset this thread
>>> 3: [ABORT] Kill this thread
>>>
>>> Backtrace:
>>> 0: ((:INTERNAL CCL::%XERR-DISP))
>>> 1: (CCL::FUNCALL-WITH-ERROR-REENTRY-DETECTION #<CCL:COMPILED-
>>> LEXICAL-CLOSURE (:INTERNAL CCL::%XERR-DISP) #x688A2E>)
>>> 2: (CCL::%XERR-DISP -334757490)
>>> 3: (CCL::%PASCAL-FUNCTIONS% 2 -334757490)
>>> 4: (CCL::%PR-INTEGER #<Unprintable CCL::IMMEDIATE : #xEB> 10
>>> #<SWANK-BACKEND::SLIME-OUTPUT-STREAM #x8AE5026> T NIL)
>>> 5: (CCL::%RSC-STRING #<Unprintable CCL::IMMEDIATE : #xEB>)
>>> 6: (CCL::%ERR-DISP-INTERNAL #<Unprintable CCL::IMMEDIATE : #xEB> (#
>>> \M #(0 0)) 1564382)
>>> 7: (READ-SEQUENCE #(0 0) #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/
>>> Users/sly/projects/git.cyrusharmon.org/retrospectiff/images/
>>> snow.tiff"/
>>> 7 ISO-8859-1) #x9BFF296> :START 0 :END 2)
>>> 8: (READ-BYTES #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/sly/
>>> projects/git.cyrusharmon.org/retrospectiff/images/snow.tiff"/7
>>> ISO-8859-1) #x9BFF296> 2)
>>> 9: (READ-INT-16 #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/sly/
>>> projects/git.cyrusharmon.org/retrospectiff/images/snow.tiff"/7
>>> ISO-8859-1) #x9BFF296> :BYTE-ORDER NIL)
>>> 10: (READ-TIFF-STREAM #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/
>>> sly/projects/git.cyrusharmon.org/retrospectiff/images/snow.tiff"/7
>>> ISO-8859-1) #x9BFF296>)
>>> 11: (READ-TIFF-FILE "images/snow.tiff")
>>> 12: (CCL::CALL-CHECK-REGS READ-TIFF-FILE "images/snow.tiff")
>>> 13: (CCL::CHEAP-EVAL-IN-ENVIRONMENT (CCL::%DEFPARAMETER '*SNOW-
>>> IMAGE* (READ-TIFF-FILE "images/snow.tiff") NIL) #<CCL::LEXICAL-
>>> ENVIRONMENT #x9BFFC86>)
>>> 14: (SWANK::EVAL-REGION "(defparameter *snow-image* (read-tiff-file
>>> \"images/snow.tiff\"))\n")
>>> 15: ((:INTERNAL SWANK::REPL-EVAL))
>>> 16: (SWANK::TRACK-PACKAGE #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL
>>> SWANK::REPL-EVAL) #x9BCE11E>)
>>> 17: (SWANK::CALL-WITH-RETRY-RESTART "Retry SLIME REPL evaluation
>>> request." #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::REPL- 
>>> EVAL)
>>> #x9BCE16E>)
>>> 18: (SWANK::CALL-WITH-BUFFER-SYNTAX NIL #<CCL:COMPILED-LEXICAL-
>>> CLOSURE (:INTERNAL SWANK::REPL-EVAL) #x9BCE196>)
>>> 19: (SWANK::REPL-EVAL "(defparameter *snow-image* (read-tiff-file
>>> \"images/snow.tiff\"))\n")
>>> 20: (CCL::CALL-CHECK-REGS SWANK:LISTENER-EVAL "(defparameter *snow-
>>> image* (read-tiff-file \"images/snow.tiff\"))\n")
>>> 21: (SWANK::EVAL-FOR-EMACS (SWANK:LISTENER-EVAL "(defparameter  
>>> *snow-
>>> image* (read-tiff-file \"images/snow.tiff\"))\n") "RETROSPECTIFF"  
>>> 85)
>>> 22: (SWANK::PROCESS-REQUESTS NIL)
>>> 23: ((:INTERNAL SWANK::HANDLE-REQUESTS))
>>> 24: (#<Anonymous Function #x8A3D7DE> #<Compiled-function  
>>> SWANK:SWANK-
>>> DEBUGGER-HOOK #x8AAD826> #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL
>>> SWANK::HANDLE-REQUESTS) #x98A20FE>)
>>> 25: (SWANK::CALL-WITH-REDIRECTED-IO #<CONNECTION #x8AE50D6>
>>> #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::CALL-WITH-
>>> CONNECTION)
>>> #x98A20D6>)
>>> 26: (SWANK::CALL-WITH-CONNECTION #<CONNECTION #x8AE50D6>
>>> #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::HANDLE-REQUESTS)
>>> #x98A20FE>)
>>> 27: (SWANK::HANDLE-REQUESTS #<CONNECTION #x8AE50D6> NIL)
>>> 28: (SWANK::CALL-WITH-BINDINGS NIL #<CCL:COMPILED-LEXICAL-CLOSURE
>>> (:INTERNAL SWANK::SPAWN-REPL-THREAD) #x8AEEE3E>)
>>> 29: (CCL::RUN-PROCESS-INITIAL-FORM #<PROCESS repl-thread(5) [Active]
>>> #x8AEE1A6> (#<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::%PROCESS-
>>> RUN-FUNCTION) #x8AEE156>))
>>> 30: ((:INTERNAL CCL::%PROCESS-PRESET-INTERNAL) #<PROCESS repl-
>>> thread(5) [Active] #x8AEE1A6> (#<CCL:COMPILED-LEXICAL-CLOSURE
>>> (:INTERNAL CCL::%PROCESS-RUN-FUNCTION) #x8AEE156>))
>>> 31: ((:INTERNAL CCL::THREAD-MAKE-STARTUP-FUNCTION))
>>>
>>> _______________________________________________
>>> Openmcl-devel mailing list
>>> Openmcl-devel at clozure.com
>>> http://clozure.com/mailman/listinfo/openmcl-devel
>>>
>>>
>
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> http://clozure.com/mailman/listinfo/openmcl-devel




More information about the Openmcl-devel mailing list