[cffi-devel] Help with recursive struct member

Joeish W joeish80829 at yahoo.com
Thu Oct 31 08:40:04 UTC 2013


here is the way CvMemStorage is defined 


typedef struct CvMemStorage 
{ 
    int signature; 
    CvMemBlock* bottom;           /* First allocated block.                   */ 
    CvMemBlock* top;              /* Current memory block - top of the stack. */ 
    struct  CvMemStorage* parent; /* We get new blocks from parent as needed. */ 
    int block_size;               /* Block size.                              */ 
    int free_space;               /* Remaining free space in current block.   */ 
} 
CvMemStorage;


bu i get 


unknown CFFI type: (:STRUCT CV-MEM-STORAGE).
   [Condition of type SIMPLE-ERROR]


when i wrap like this....i know lisp is known for recursion how do i bypass this

(defcstruct cv-mem-storage
    (signature :int)
    (bottom (:pointer (:struct cv-mem-block)))
    (top (:pointer (:struct cv-mem-block)))
    (parent (:pointer (:struct cv-mem-storage)))
    (block-size :int)
    (free-space :int))
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cffi-devel/attachments/20131031/78279969/attachment.html>


More information about the cffi-devel mailing list