[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-janitors] #1614: define-foreign-type is broken inside modules
From: |
Chicken Trac |
Subject: |
[Chicken-janitors] #1614: define-foreign-type is broken inside modules |
Date: |
Tue, 07 May 2019 09:32:29 -0000 |
#1614: define-foreign-type is broken inside modules
---------------------------------+------------------------------
Reporter: sjamaan | Owner:
Type: defect | Status: new
Priority: critical | Milestone: 5.1
Component: expander | Version: 5.0.0
Keywords: define-foreign-type | Estimated difficulty:
---------------------------------+------------------------------
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.
--
Ticket URL: <https://bugs.call-cc.org/ticket/1614>
CHICKEN Scheme <https://www.call-cc.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.
- [Chicken-janitors] #1614: define-foreign-type is broken inside modules,
Chicken Trac <=