Invalid test case. Takashi Kato (08 Mar 2017 09:06 UTC)
Re: Invalid test case. marc@xxxxxx (20 Mar 2017 21:41 UTC)
Re: Invalid test case. Takashi Kato (21 Mar 2017 07:52 UTC)

Invalid test case. Takashi Kato 08 Mar 2017 09:06 UTC

Hi,

I believe the test case "Auxiliary definitions in custom macro
transformers" is incorrect. The
definition of the test is the following:

(define-syntax my-macro-transformer
  (syntax-rules ()
    ((my-macro-transformer)
     (begin (define foo 2)
        (syntax-rules ()
          ((_) foo))))))
(letrec-syntax ((foo (my-macro-transformer)))
  (foo))

However this would be expanded to like this:

(letrec-syntax ((foo (begin (define foo 2)
                            (syntax-rules ()
                              ((_) foo)))))
  (foo))

I think the correct definition of my-macro-transformer should be like this:

(define-syntax my-macro-transformer
  (syntax-rules ()
    ((my-macro-transformer)
     (syntax-rules ()
       ((_)
        (begin
          (define foo 2)
          foo))))))

Cheers,

--
_/_/
Takashi Kato
E-mail: ktakashi19@gmail.com