REGRESSION: --supported-languages lies about supported languages, again
To make it short, recent version of GHC broke the very thing we fixed in #11102 (closed) for GHC 8.0. This is utterly frustrating to me. ;-(
Basically, if GHC advertises an extension, it's supposed to work without jumping through hoops if you enable it via {-# LANGUAGE ... #-} or -X-flags. Otherwise this breaks the whole idea of other-extensions and related cabal spec features which use --supported-languages to infer whether e.g. GHC when invoked with -XTemplateHaskell will succeed.
However, consider the Main.hs below
{-# LANGUAGE TemplateHaskell #-}
main = $undefined
Unfortuantely now GHC lies unconditionally about supporting TH, thereby undermining the infrastructure we setup in and for #11102 (closed):
$ ghc --supported-languages | grep ^TemplateHaskell$
TemplateHaskell
$ ghc --make Foo.hs
[1 of 1] Compiling Main ( Foo.hs, Foo.o )
ghc-stage2: this operation requires -fexternal-interpreter
Trac metadata
| Trac field | Value |
|---|---|
| Version | 8.6.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | highest |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |