-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | GHC plugin for hlint -- -- This package provides a GHC plugin that runs hlint on the -- compiled module. The main advantages of doing this are: (A) better -- integration with GHC tooling, (B) only linting modules that change, -- and (C) only parsing the module once. . Note that this package will -- only build if you build the hlint dependency with -- -f-ghc-lib and build the ghc-lib-parser-ex -- dependency with -fno-ghc-lib @package hlint-plugin @version 1.0.2 -- | This module is inspired by: -- -- -- https://github.com/tfausak/splint/blob/9028a8b631568dc5d16a74153b1a9b6e3cde0fe6/src/lib/Splint/Settings.hs -- -- … in order to work around this issue (just like splint does): -- -- https://gitlab.haskell.org/ghc/ghc/issues/18261 -- -- Without this workaround the GHC plugin will fail with something like -- this error message: -- --
--   ghc-9.6.2(82937,0x16e83b000) malloc: *** error for object 0x600000a4d5c0: pointer being freed was not allocated
--   ghc-9.6.2(82937,0x16e83b000) malloc: *** set a breakpoint in malloc_error_break to debug
--   
module HLint.Plugin.Settings -- | This is a drop-in replacement for -- Language.Haskell.HLint.argsSettings, except that this is -- safe to run in parallel. argsSettings :: [String] -> IO (ParseFlags, [Classify], Hint) -- | This module provides a GHC plugin that you can use to run HLint on a -- module -- -- To do so, add this hlint-plugin package as a build dependency -- of your Haskell package and then add the GHC options -fplugin -- HLint.Plugin To use this plugin, add this package as a build -- dependency and then enable the following GHC options (typically in the -- ghc-options: field of your .cabal file): -- --
--   -fplugin HLint.Plugin
--   
-- -- You can pass command-line options to hlint using -- -fplugin-opt, like this: -- --
--   -fplugin HLint.Plugin -fplugin-opt='HLint.Plugin:--ignore=Redundant guard'
--   
module HLint.Plugin -- | GHC plugin that runs HLint on a Haskell module after parsing the -- module plugin :: Plugin