Opened 2 weeks ago

Closed 3 days ago

#1614 closed defect (fixed)

define-foreign-type is broken inside modules

Reported by: sjamaan Owned by:
Priority: critical Milestone: 5.1
Component: expander Version: 5.0.0
Keywords: define-foreign-type Cc:
Estimated difficulty:

Description

The change of define to ##core#set! broke define-foreign-type. It is wrong; if used inside a lambda it should expand to a local define, if used at global it should use ##core#set! and register the export (but it's a gensym, so that's a bit odd anyway).

The best way to fix this is probably to expand to define in the macro instead of in the compiler core. This requires moving some machinery.

Attachments (1)

test.patch (627 bytes) - added by sjamaan 2 weeks ago.
Regression test

Download all attachments as: .zip

Change History (2)

Changed 2 weeks ago by sjamaan

Regression test

comment:1 Changed 3 days ago by sjamaan

  • Resolution set to fixed
  • Status changed from new to closed

Fixed by 9dcd35b7862054a96321767eabe85c5215b2bcb6

Note: See TracTickets for help on using tickets.