Binding (~) or (@) is rejected in TH splices
8168b42a95ddf37c56958955eef065eb8747470f (from GHC 9.0 onwards) allows GHC to accept the following infix operators:
```haskell
a ~ b = ()
a @ b = ()
```
But not if TH is used to generate those declarations:
```haskell
{-# LANGUAGE TemplateHaskell #-}
$([d| a ~ b = ()
a @ b = ()
|])
```
```
Test.hs:5:2: error: [GHC-55017]
Illegal variable name: ‘~’
When splicing a TH declaration: (~_0) a_1 b_2 = GHC.Tuple.Prim.()
```
**Expected behavior:** both variants are accepted.
issue