Поддержка для этого будет / была добавлена в GHC 7.4 / 7.6.Проблема заключается в том, что компилятор не позволяет сращиваниям TemplateHaskell добавлять файловые зависимости.См. этот билет для получения дополнительной информации.
Когда это изменение произойдет, вы можете использовать следующий код для создания новой функции embedFile'
:
import Data.FileEmbed
import Language.Haskell.TH.Syntax
import Language.Haskell.TH.Lib
embedFile' :: FilePath -> Q Exp
embedFile' path = do
qAddDependentFile path
embedFile path
Этонаходиться в отдельном модуле, из которого вы используете функцию TH.