
27 Apr
2021
27 Apr
'21
noon
I have tried too, and can provide a few points to raise. See the following gist:
https://gist.github.com/viercc/9d22ea0c740183ba0e4b5b00d654dcd3
* This happens with "normal" non-interactive compilation by GHC
* Confirmed with both GHC 8.10.4 and GHC 9.0.1
* This happens with duplicate definitions in let
let {x = 1; $([p| x |] :: PatQ) = 2 } in x
* There's another inconsistent behavior with pattern splices
nested inside another quote
\x $([p| x |] :: PatQ) -> x -- compiles to \_ x -> x
[| \x $([p| x |] :: PatQ) -> x |] -- compiles to [| \x x1 -> x |]
--
/* Koji Miyazato