Page 1 of 1

(FOREIGN-ALLOC... is is not of type SB-SYS:SYSTEM-AREA-P...

Posted: Thu May 08, 2014 2:25 pm
by joeish80829
I was hoping someone could look at this and help me debug it.

I'm getting:

Code: Select all

  (FOREIGN-ALLOC :POINTER :INITIAL-ELEMENT (NULL-POINTER))
is not of type
  SB-SYS:SYSTEM-AREA-POINTER. when I run it.

Code: Select all

(foreign-array-alloc #2A((

			  (foreign-alloc :pointer :initial-element (null-pointer)) 
			  (foreign-alloc :pointer :initial-element (null-pointer))) 
			 ((foreign-alloc :pointer :initial-element (null-pointer)) 
			  (foreign-alloc :pointer :initial-element (null-pointer))) 
			 ((foreign-alloc :pointer :initial-element (null-pointer)) 
			  (foreign-alloc :pointer :initial-element (null-pointer))) 
			 ((foreign-alloc :pointer :initial-element (null-pointer)) 
			  (foreign-alloc :pointer :initial-element (null-pointer)))) '(:array :pointer 4 2))

 

Re: (FOREIGN-ALLOC... is is not of type SB-SYS:SYSTEM-AREA-P

Posted: Fri May 09, 2014 6:51 am
by porky11
there is no function foreign-array-alloc or foreign-alloc in common lisp (by default). please say, where you got this function

(I think the second code is the one you wrote to get this message)

Re: (FOREIGN-ALLOC... is is not of type SB-SYS:SYSTEM-AREA-P

Posted: Fri May 09, 2014 3:00 pm
by joeish80829
Or never mind...I just found out how to create a 2d pointer array...that was CFFI btw

Code: Select all

(cffi::foreign-array-alloc
 (make-array '(4 2) :initial-contents
             (list (list (cffi:foreign-alloc :pointer :initial-element (c-pointer (point 1 2))) 
                         (cffi:foreign-alloc :pointer :initial-element (c-pointer (point 1 2))))
                   (list (cffi:foreign-alloc :pointer :initial-element (c-pointer (point 1 2))) 
                         (cffi:foreign-alloc :pointer :initial-element (c-pointer (point 1 2)))) 
                   (list (cffi:foreign-alloc :pointer :initial-element (c-pointer (point 1 2))) 
                         (cffi:foreign-alloc :pointer :initial-element (c-pointer (point 1 2)))) 
                   (list (cffi:foreign-alloc :pointer :initial-element (c-pointer (point 1 2))) 
                         (cffi:foreign-alloc :pointer :initial-element (c-pointer (point 1 2))))))
 '(:array :pointer 4 2))