It wasn't that I forgot to implement pieces, after all. The problem was
a bug in the byte compiler's handling of `#%variable-reference` when
inlining. I've pushed a repair.
At Mon, 12 Jan 2015 19:24:56 -0700, Matthew Flatt wrote:
> It's supposed to be safe; the behavior in this example is definite
It's supposed to be safe; the behavior in this example is definitely a
bug.
The `#%variable-reference` form used to work only on top-level and
module variables. It seems that I forgot to fill in some pieces when I
made `#%variable-reference` work on local bindings (several years ago,
mainly for us
I'm not sure if #%variable-reference is supposed to be unsafe or not
(it's not mentioned in the documentation), but it looks like an
attempt to get the location of an identifier that is neither top-level
nor module-level results in a hard crash:
===
#lang racket/base
(define (go)
(define foo 3)
3 matches
Mail list logo