On Fri, Nov 18, 2011 at 12:45 AM, Paul Bowyer <pbowyer@olynet.com> wrote:
I've been running ECL in slime to experiment with some CLX test code.
 In a fresh instance of slime, the first compilation of the code produces:
[...]
;;; Note:
;;;   Unknown type (VALUES NUMBER). Assuming it is T.
;;; Note:
;;;   Unknown type (VALUES REAL). Assuming it is T. 
[...]

This is harmless. The optimizer found this type specifier somewhere in the code, but ECL currently does not handle VALUES type declarations in the compiler. That's all.
 
Then the command to compile and load produces:
[...]
Running the code with (xapp:main) produces an error:
Asynchronous ID-CHOICE-ERROR in request 11 (last request was 13)  Code 55.0 [CreateGC] ID #x1
  [Condition of type XLIB:ID-CHOICE-ERROR]

and I get the following from the describe output in the code:

#<gcontext :0 1> is an instance of class GCONTEXT
XLIB::ID :    1
XLIB:DISPLAY :    #<display :0 (The X.Org Foundation R96)>
XLIB:DRAWABLE :    #<window :0 ad>
XLIB::CACHE-P :    T
XLIB::SERVER-STATE :    #(3 4294967295 255 0 0 0 1 0 0 0 NIL NIL 0 0 NIL 0 1 0 0 0
                      0 4 1 NIL NIL NIL 1)
XLIB::LOCAL-STATE :    #(3 4294967295 255 0 0 0 1 0 0 0 NIL NIL 0 0 NIL 0 1 0 0 0
                     0 4 1 NIL NIL NIL 1)
XLIB::PLIST :    NIL
XLIB::NEXT :    NIL 
[...]
It seems like I'm not able to access the CLX functions even though the code compiles, although I don't know what the initial Unknown type messages are all about. Do I need to take more steps to access the CLX functions?

I am not sure what you mean by "not able to access the CLX functions". It seems that your code was indeed able to call XLIB's functions. What is shown above is a protocol error, am I wrong? As Matthew explained, it may be due to CLX, but it might also be due to ECL corrupting the communication (unlikely but possible). I will try with some other machine myself.

Juanjo
 

--
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com