Comment 0 for bug 378735

Revision history for this message
leppie (leppie) wrote :

Hi

Currently, annotated-case-lambda and annotated-call gives me a good amount of detail. But it seems to get nuked/removed on some macro expansions.

Here is the most obvious one:

(define-syntax define-fx
  (lambda (x)
    (syntax-case x ()
      [(_ (name formals ...) body body* ...)
        (with-syntax (((checks ...)
          (map (lambda (f)
                 (with-syntax ((f f))
                   #'(unless (fixnum? f)
                      (assertion-violation 'name "not a fixnum" f))))
                #'(formals ...))))
          #'(define (name formals ...)
              checks ...
              (let ()
                body body* ...)))])))

(define-fx (fx+ x1 x2)
  (+ x1 x2))

I will add more as I find them, or can reproduce them.

Cheers

leppie