FlagChecker

ghc-8.10.7: The GHC API

Safe Haskell | None
Language | Haskell2010

FlagChecker

Description

This module manages storing the various GHC option flags in a modules interface file as part of the recompilation checking infrastructure.

Synopsis

- fingerprintDynFlags :: DynFlags -> Module -> (BinHandle -> Name -> IO ()) -> IO Fingerprint
- fingerprintOptFlags :: DynFlags -> (BinHandle -> Name -> IO ()) -> IO Fingerprint
- fingerprintHpcFlags :: DynFlags -> (BinHandle -> Name -> IO ()) -> IO Fingerprint

# Documentation

fingerprintDynFlags :: DynFlags -> Module -> (BinHandle -> Name -> IO ()) -> IO Fingerprint #

Produce a fingerprint of a `DynFlags` value. We only base the finger print on important fields in `DynFlags` so that the recompilation checker can use this fingerprint.

NB: The `Module` parameter is the `Module` recorded by the *interface* file, not the actual `Module` according to our `DynFlags`.

fingerprintOptFlags :: DynFlags -> (BinHandle -> Name -> IO ()) -> IO Fingerprint #

fingerprintHpcFlags :: DynFlags -> (BinHandle -> Name -> IO ()) -> IO Fingerprint #