[racket] Compile-time vs. Runtime Calls to the Same Macro

From: Sina K. Heshmati (sina at khakbaz.com)
Date: Sat Feb 26 21:54:44 EST 2011

"Sina K. Heshmati" <sina at khakbaz.com> said:

> L.S.,
> #lang racket
> (require
>  (for-syntax "check.rkt")
>  "check.rkt")
> (define-for-syntax a
>   (qualify-member #'(public static a 0)))  ;; Phase 1 call FAILS
> (define b
>   (qualify-member #'(public static b 10))) ;; Phase 2 call does NOT FAIL
> Any idea how I can make phase 1 calls to qualify-member not fail?

It is worth mentioning that the compile-time call to qualify-member fails as soon as I add literal ids to the generated syntax-case. That's why I'm suspecting this might be a bug in Racket.

Kind regards,

> The file check.rkt that contains the qualify-member macro is pasted below.
> For other source files, please refer to:
> https://github.com/sindoc/objective-racket/tree/master/src/objective-racket

Posted on the users mailing list.