GHC parses undocumented syntax in OPTIONS_GHC
GHC accepts
{-# OPTIONS_GHC ["-XTemplateHaskell"] #-}
module Bug where
$(return [])
Note the odd syntax in the OPTIONS_GHC pragma: if the first non-whitespace character in the pragma is a [, then GHC tries to read a list of Haskell strings. Bizarre.
Either this feature is useful, in which case it should be documented; or it's not, in which case it should be removed.
The offending code is in GHC.Utils.Misc.toArgs (which is a strange place to find it).