anchor.diff:        (:pointer
          (define-foreign-type
              `(:pointer ,(cadr typespec))
  -           (make-instance 'foreign-pointer :type (%ensure-type (cadr typespec) context-format-control context-format-args))))
  +           (if-let (basic-type (looks-like-a-string typespec))
  +             (make-instance 'foreign-string :type basic-type)
  +             (make-instance 'foreign-pointer :type (%ensure-type (cadr typespec) context-format-control context-format-args)))))
         (:void :void))))
   
   
positive.code:         (let ((sym (gensym "ANON-TYPE-")))
            (setf (foreign-anonymous id) sym)
            sym))))
  
  (defun create-type-from-complex-typespec (typespec context-format-control context-format-args)
    "=> TYPE
  
negative.code:                  (listp typespec)
                   (eq :pointer (car typespec)))
              (when-let (child-type (find-type (cadr typespec)))
                (create-type-from-complex-typespec typespec ":pointer alias for ~S" typespec))
              type))))
  
  (defun undefined-enum-value (value)
  