Try this:

  (defun compare-chars (char1 char2 ignore-case)
    (flet ((compare (char=)
             (funcall char= char1 char2)))
      (if ignore-case
          (compare #'char-equal)
          (compare #'char=))))
  
  (compile 'compare-chars)

Now

  (compare-chars #\a #\A t)

returns NIL, and not T as expected.  I'm using CMUCL-18d on Linux.

Helmut


Reply via email to