bug#60170:

Stefan Israelsson Tampe <[email protected]>
Newsgroups gmane.lisp.guile.bugs
Message-ID <CAGua6m08iS463+tYeMPvhDaowWHjaWY4FK6MVvRONm0U-6pkDQ@mail.gmail.com>
Putting this program in q.scm

(lambda ()
(let* ((tag (list 'let/ec)))
  (call-with-prompt
   tag
    (lambda ()
      (let lp ()
        (call-with-values h
          (let ()
            (define (g a b)
              (let ((kk (nm a u v)))
                (cond
                  ((equal? kk _filename)
                   (let ((tmp (pylist-ref modules a)))
                      (apply abort tag tmp '())))
                  ((equal? (end kk) _filename)
                   (let ((tmp (pylist-ref modules a)))
                      (apply abort tag tmp '())))))
                (lp))

            (define f
              (case-lambda
                ((a b)
                 (g a b))

                ((a b . y)
                 (g a b))))

            f))))

    (lambda (xx . results) (apply values results)))))

Results in the warning
forgot to emit definition instructions?

Using the below version of f works without the warning,

with
   slusk = (lambda (g . x) (apply g x))

non inlined in:
            (define f
              (case-lambda
                ((a b)
                 (g a b))

                ((a b . y)
                 (slusk g a b))))

Tested in v3.0.8 and main dec 18 2022
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.