In addition to the constructor, `foo` is also used for compile-time
struct information. To avoid this, either supply #:name to designate a
different identifier for compile-time struct type information, or
declare #:omit-define-syntaxes to dismiss it.

Shu-hung

On Thu, Jun 3, 2021 at 4:04 PM Sage Gerard <[email protected]> wrote:
>
> My understanding is that you can shadow `foo`, but you cannot use `foo` in 
> any expression at the same scope where the struct's bindings appear. In this 
> context, some of `foo`'s lexical information is reserved so that `struct-out` 
> works correctly.
>
> On 6/3/21 5:01 PM, flirora wrote:
>
>
> Am I correct in assuming that given a definition like
>
> (struct foo (x) #:constructor-name bar)
>
> I then can't define something named foo in the same module, even though 
> there's no constructor called foo?
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/racket-users/02598ee4-4461-4815-bd4f-a8ac02c1118cn%40googlegroups.com.
>
> --
> ~slg
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/racket-users/76c51dda-b80d-d74a-c691-d92fe11008e8%40sagegerard.com.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAMTzy%2Bav%3Dh_muCMK9pH0FpmUvUU7t5rUFBk09a3zhT7DSAc_1g%40mail.gmail.com.

Reply via email to