`#` can't be used on the rhs of `letstx`
Created by: natefaubion
macro test {
case { _ } => {
letstx $foo = #{ 1 + 2 + 3 };
return #{
$foo;
}
}
}
test
This is because #
breaks hygiene, referring to name_stx
and match
, and letstx
defers to helper macros, so it gets the wrong name_stx
and match
when calling transcibe
. Also illustrated by http://bit.ly/1fmrUwf
To clarify, this is a problem with #
(well, really all fundamental macros that break hygiene), I just titled the issue the way I did because it's how you'd likely happen upon it.