Open 3b opened 1 year ago
Interesting corner case... Will investigate in weekend.
This is due to the optimizer.
The unknown block is generated by this skip
. I remember that I struggled to make this code correct. This skip
is needed when multiple fusing creates a nested tree of match2*+
. I need a way to detect that this last clause appears in the top level. Unfortunately, CL macros do not provide many facilities to query the current environment, i.e., change the bahavior according to the surrounding envronment. In other words, this felt like the limit of CL.
I think you could use macrolet
inside the (block clause ...)
to achieve the desired modification of the toplevel vs nested behavior; please see it implemented in draft PR #146 .
Maybe not too important since
(type t)
probably should be written asotherwise
instead, but still confusing if one doesn't happen to think about that option.fails to compile with