Admin message

Due to a large amount of spam we do not allow new users to create repositories, they are "external" users. If you are a new user and want to create a repository, for example for forking GHC, open a new issue on ghc/ghc using the "get-verified" issue template

Support invisible type patterns in Template Haskell quotes (e.g., [t| @a |])
I am using GHC 9.10.1-alpha1, which introduces `@`-binders in more places in pattern contexts (https://gitlab.haskell.org/ghc/ghc/-/merge_requests/11109). Based on one of the test cases added in that MR, I discovered that `TypeAbstractions` could be combined with `LambdaCase`, e.g., ```hs {-# LANGUAGE GHC2024 #-} {-# LANGUAGE TypeAbstractions #-} module Foo where import Data.Kind f :: (forall (a :: Type). ()) -> () f k = k @Bool g :: () g = f (\cases @a -> ()) ``` Great. What is surprising, however, is that if I change `\cases` to be `\case`: ```hs g :: () g = f (\case @a -> ()) ``` Then GHC fails to parse it: ``` $ ghc-9.10 Foo.hs [1 of 1] Compiling Foo ( Foo.hs, Foo.o ) Foo.hs:11:8: error: [GHC-06074] Unexpected \case expression in function application: \case Suggested fixes: • Use parentheses. • Perhaps you intended to use BlockArguments | 11 | g = f (\case | ^ Foo.hs:11:8: error: [GHC-66228] View pattern in expression context: \case @a -> () | 11 | g = f (\case | ^^^^^... ``` This feels inconsistent, as I would expect that if `\cases` works, then `\case` should also work. Is this intended?
issue