<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;
      charset=windows-1252">
  </head>
  <body>
    <p>I'd submit to github.com/Clozure/ccl where the main bugtracker
      (and repository) currently resides.<br>
    </p>
    <div class="moz-cite-prefix">On 26.09.2020 16:11, Madhu wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:20200926.194136.1174468780862808668.enometh@meer.net">
      <pre class="moz-quote-pre" wrap="">Hello.  There is a problem with CCL's interpretation of defsetf
lambda-lists (3.4.7). The following example blows.

(defvar $foo 10)
(defsetf get-foo (&key (add1 1) (add2 (+ add1 2)))
         (data)
 `(setq $foo (- ,data ,add1 ,add2)))
(get-setf-expansion '(get-foo))
;; => The value #:ADD1 is not of the expected type NUMBER.
(setf (get-foo) 10) ;; should return 6

Attached is a hacked up patch which attempts to fix this. It uses
CCL::%DESTRUCTURE-LAMBDA-LIST instead of CCL::RENAME-LAMBDA-VARS to
come up with a suitable setf expansion. There is one remaining
"unhygenic" use of EXPRESSION in the code, and I haven't fixed the
indentation - this is so that the changes I've made are clearly
visible for inspection.

I'd appreciate it if you could test and review this patch for
correctness, and commit something like it---Madhu

</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
Openmcl-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Openmcl-devel@clozure.com">Openmcl-devel@clozure.com</a>
<a class="moz-txt-link-freetext" href="https://lists.clozure.com/mailman/listinfo/openmcl-devel">https://lists.clozure.com/mailman/listinfo/openmcl-devel</a>
</pre>
    </blockquote>
  </body>
</html>