X-Git-Url: https://git.distorted.org.uk/~mdw/sod/blobdiff_plain/08b6e064ab3b18bbc5a9af47418c02f0e7ebc52d..e43d353268fc869045f757932d78d6073db9de6e:/src/c-types-proto.lisp diff --git a/src/c-types-proto.lisp b/src/c-types-proto.lisp index a13be4c..55f2f31 100644 --- a/src/c-types-proto.lisp +++ b/src/c-types-proto.lisp @@ -197,7 +197,7 @@ ',aliases))) (export 'defctype) -(defmacro defctype (names value) +(defmacro defctype (names value &key export) "Define NAMES all to describe the C-type VALUE. NAMES can be a symbol (treated as a singleton list), or a list of symbols. @@ -207,6 +207,8 @@ (namevar (gensym "NAME")) (typevar (symbolicate 'c-type- (car names)))) `(progn + ,@(and export + `((export '(,typevar ,@names)))) (defparameter ,typevar ,(expand-c-type-spec value)) (eval-when (:compile-toplevel :load-toplevel :execute) ,@(mapcar (lambda (name)