diff --git a/autotests/input/highlight.hs b/autotests/input/highlight.hs
--- a/autotests/input/highlight.hs
+++ b/autotests/input/highlight.hs
@@ -122,3 +122,13 @@
-- data constructors
EQ, False, GT, Just, LT, Left, Nothing, Right, True
+
+-- pragma with compiler flags
+
+{-# OPTIONS_GHC -fno-warn-orphans #-}
+
+-- multiline pragma with language extensions
+
+{-# LANGUAGE OverlappingInstances,
+ BangPatterns
+#-}
diff --git a/autotests/reference/highlight.hs.ref b/autotests/reference/highlight.hs.ref
--- a/autotests/reference/highlight.hs.ref
+++ b/autotests/reference/highlight.hs.ref
@@ -122,3 +122,13 @@
-- data constructors
EQ, False, GT, Just, LT, Left, Nothing, Right, True
+
+-- pragma with compiler flags
+
+{-# OPTIONS_GHC -fno-warn-orphans #-}
+
+-- multiline pragma with language extensions
+
+{-# LANGUAGE OverlappingInstances,
+ BangPatterns
+#-}
diff --git a/data/syntax/haskell.xml b/data/syntax/haskell.xml
--- a/data/syntax/haskell.xml
+++ b/data/syntax/haskell.xml
@@ -1,6 +1,6 @@
-
+
- case
@@ -334,13 +334,133 @@
- qualified
- hiding
+
+ - OverlappingInstances
+ - UndecidableInstances
+ - IncoherentInstances
+ - DoRec
+ - RecursiveDo
+ - ParallelListComp
+ - MultiParamTypeClasses
+ - MonomorphismRestriction
+ - FunctionalDependencies
+ - Rank2Types
+ - RankNTypes
+ - PolymorphicComponents
+ - ExistentialQuantification
+ - ScopedTypeVariables
+ - PatternSignatures
+ - ImplicitParams
+ - FlexibleContexts
+ - FlexibleInstances
+ - EmptyDataDecls
+ - CPP
+ - KindSignatures
+ - BangPatterns
+ - TypeSynonymInstances
+ - TemplateHaskell
+ - ForeignFunctionInterface
+ - Arrows
+ - Generics
+ - ImplicitPrelude
+ - NamedFieldPuns
+ - PatternGuards
+ - GeneralizedNewtypeDeriving
+ - ExtensibleRecords
+ - RestrictedTypeSynonyms
+ - HereDocuments
+ - MagicHash
+ - TypeFamilies
+ - StandaloneDeriving
+ - UnicodeSyntax
+ - UnliftedFFITypes
+ - InterruptibleFFI
+ - CApiFFI
+ - LiberalTypeSynonyms
+ - TypeOperators
+ - RecordWildCards
+ - RecordPuns
+ - DisambiguateRecordFields
+ - TraditionalRecordSyntax
+ - OverloadedStrings
+ - GADTs
+ - GADTSyntax
+ - MonoPatBinds
+ - RelaxedPolyRec
+ - ExtendedDefaultRules
+ - UnboxedTuples
+ - DeriveDataTypeable
+ - DeriveGeneric
+ - DefaultSignatures
+ - InstanceSigs
+ - ConstrainedClassMethods
+ - PackageImports
+ - ImpredicativeTypes
+ - NewQualifiedOperators
+ - PostfixOperators
+ - QuasiQuotes
+ - TransformListComp
+ - MonadComprehensions
+ - ViewPatterns
+ - XmlSyntax
+ - RegularPatterns
+ - TupleSections
+ - GHCForeignImportPrim
+ - NPlusKPatterns
+ - DoAndIfThenElse
+ - MultiWayIf
+ - LambdaCase
+ - RebindableSyntax
+ - ExplicitForAll
+ - DatatypeContexts
+ - MonoLocalBinds
+ - DeriveFunctor
+ - DeriveTraversable
+ - DeriveFoldable
+ - NondecreasingIndentation
+ - SafeImports
+ - Safe
+ - Trustworthy
+ - Unsafe
+ - ConstraintKinds
+ - PolyKinds
+ - DataKinds
+ - ParallelArrays
+ - RoleAnnotations
+ - OverloadedLists
+ - EmptyCase
+ - AutoDeriveTypeable
+ - NegativeLiterals
+ - BinaryLiterals
+ - NumDecimals
+ - NullaryTypeClasses
+ - ExplicitNamespaces
+ - AllowAmbiguousTypes
+ - JavaScriptFFI
+ - PatternSynonyms
+ - PartialTypeSignatures
+ - NamedWildCards
+ - DeriveAnyClass
+ - DeriveLift
+ - StaticPointers
+ - StrictData
+ - Strict
+ - ApplicativeDo
+ - DuplicateRecordFields
+ - TypeApplications
+ - TypeInType
+ - UndecidableSuperClasses
+ - MonadFailDesugaring
+ - TemplateHaskellQuotes
+ - OverloadedLabels
+
-
+
-
+
@@ -384,6 +504,10 @@
+
+
+
+