From: Mark Wooding Date: Sun, 6 Oct 2019 21:26:27 +0000 (+0100) Subject: c-types-proto.lisp (canonify-qualifiers): Delete `nil' entries. X-Git-Url: https://git.distorted.org.uk/~mdw/sod/commitdiff_plain/2c6153373f927d948a74b283ebb16330af8ee49a c-types-proto.lisp (canonify-qualifiers): Delete `nil' entries. Now you can decide whether to include a qualifier by saying `(and COND :const)' or similar, and the `nil' if COND is false will be swept under the rug. --- diff --git a/src/c-types-proto.lisp b/src/c-types-proto.lisp index 43824da..0ce2cf3 100644 --- a/src/c-types-proto.lisp +++ b/src/c-types-proto.lisp @@ -46,8 +46,11 @@ (export 'canonify-qualifiers) (defun canonify-qualifiers (qualifiers) - "Return a canonical list of qualifiers." - (delete-duplicates (sort (copy-list qualifiers) #'string<))) + "Return a canonical list of qualifiers. + + Duplicates and `nil' entries are deleted, and the remaining entries are + sorted." + (sort (delete-duplicates (delete nil (copy-list qualifiers))) #'string<)) (export 'qualify-c-type) (defgeneric qualify-c-type (type qualifiers)