diff options
author | Juan Manuel Tomás <jtomas1815@gmail.com> | 2023-07-24 00:09:53 -0300 |
---|---|---|
committer | Juan Manuel Tomás <jtomas1815@gmail.com> | 2023-07-24 00:09:53 -0300 |
commit | bb4b2bc484ed1d827d707a5a50b234d6994af90c (patch) | |
tree | 832ec90bf0f34252447c3fd49311d3af3e319d56 /alien.lisp | |
parent | 3d6e80b447ef96cdac3aada1f2ca08073648294f (diff) | |
download | utils-main.tar.gz utils-main.zip |
Diffstat (limited to 'alien.lisp')
-rw-r--r-- | alien.lisp | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -3,10 +3,10 @@ (defmacro call (fname rtype &rest types-n-values) (let ((tlist (queue:new)) (vlist (queue:new))) - (dolist (item types-n-values) - (queue:add tlist (first item)) - (queue:add vlist (second item))) + (do () ((null types-n-values) nil) + (queue:add tlist (pop types-n-values)) + (queue:add vlist (pop types-n-values))) `(alien-funcall (extern-alien ,fname - (function ,rtype + (sb-alien:function ,rtype ,@(queue:to-list tlist))) ,@(queue:to-list vlist)))) |