Index — Glasgow Haskell Compiler 8.4.4 User's Guide

# Glasgow Haskell Compiler User's Guide

### Navigation

- index
- GHC 8.4.4 User's Guide »

# Index

Symbols | _ | A | B | C | D | E | F | G | H | I | K | L | M | N | O | P | Q | R | S | T | U | V | W | Y

## Symbols

+RTS +t option in GHCi --exclude-module=⟨file⟩ GHC option --force ghc-pkg option --frontend ⟨module⟩ GHC option --generate-crash-dumps RTS option --generate-stack-traces=<yes|no> RTS option --global ghc-pkg option --help GHC option ghc-pkg option --info GHC option RTS option --install-seh-handlers=⟨yes|no⟩ RTS option --install-signal-handlers=⟨yes|no⟩ RTS option --interactive GHC option --ipid ghc-pkg option --long-gc-sync RTS option --long-gc-sync=<seconds> RTS option --machine-readable RTS option --make GHC option mode of GHC --mk-dll GHC option --numa RTS option --numa=<mask> RTS option --numeric-version GHC option --package-key ghc-pkg option --print-libdir GHC option --RTS --show-iface ⟨file⟩ GHC option, [1] --show-options GHC option --supported-extensions GHC option --supported-languages GHC option --user ghc-pkg option --verbose ghc-pkg option --version GHC option ghc-pkg option -? GHC option ghc-pkg option hp2ps command line option -A ⟨size⟩ RTS option -AL ⟨size⟩ RTS option -A⟨size⟩ RTS option -B RTS option -b hp2ps command line option -C GHC option -c GHC option, [1] RTS option hp2ps command line option -c ⟨n⟩ RTS option -C ⟨s⟩ RTS option -clear-package-db GHC option -cpp GHC option -cpp vs string gaps -d hp2ps command line option -D ⟨x⟩ RTS option -dcmm-lint GHC option -dcore-lint GHC option -ddump-asm GHC option -ddump-asm-expanded GHC option -ddump-asm-liveness GHC option -ddump-asm-native GHC option -ddump-asm-regalloc GHC option -ddump-asm-regalloc-stages GHC option -ddump-asm-stats GHC option -ddump-bcos GHC option -ddump-cmm GHC option -ddump-cmm-caf GHC option -ddump-cmm-cbe GHC option -ddump-cmm-cfg GHC option -ddump-cmm-cps GHC option -ddump-cmm-from-stg GHC option -ddump-cmm-info GHC option -ddump-cmm-proc GHC option -ddump-cmm-procmap GHC option -ddump-cmm-raw GHC option -ddump-cmm-sink GHC option -ddump-cmm-sp GHC option -ddump-cmm-split GHC option -ddump-cmm-switch GHC option -ddump-cmm-verbose GHC option -ddump-core-stats GHC option -ddump-cse GHC option -ddump-deriv GHC option -ddump-ds GHC option -ddump-ec-trace GHC option -ddump-foreign GHC option -ddump-hi GHC option -ddump-hi-diffs GHC option -ddump-if-trace GHC option -ddump-inlinings GHC option -ddump-json GHC option -ddump-llvm GHC option -ddump-minimal-imports GHC option -ddump-mod-cycles GHC option -ddump-occur-anal GHC option -ddump-opt-cmm GHC option -ddump-parsed GHC option -ddump-parsed-ast GHC option -ddump-prep GHC option -ddump-rn GHC option -ddump-rn-ast GHC option -ddump-rn-stats GHC option -ddump-rn-trace GHC option -ddump-rule-firings GHC option -ddump-rule-rewrites GHC option -ddump-rules GHC option -ddump-simpl GHC option -ddump-simpl-iterations GHC option -ddump-simpl-stats GHC option -ddump-spec GHC option -ddump-splices GHC option -ddump-stg GHC option -ddump-str-signatures GHC option -ddump-stranal GHC option -ddump-tc GHC option -ddump-tc-ast GHC option -ddump-tc-trace GHC option -ddump-timings GHC option -ddump-to-file GHC option -ddump-types GHC option -ddump-vect GHC option -ddump-vt-trace GHC option -ddump-worker-wrapper GHC option -debug GHC option -dep-makefile ⟨file⟩ GHC option -dep-suffix ⟨suffix⟩ GHC option -dfaststring-stats GHC option -dinitial-unique=⟨s⟩ GHC option -distrust ⟨pkg⟩ GHC option -distrust-all-packages GHC option -dno-debug-output GHC option -dppr-case-as-let GHC option -dppr-cols=⟨n⟩ GHC option -dppr-debug GHC option -dppr-user-length GHC option -dshow-passes GHC option -dstg-lint GHC option -dsuppress-all GHC option -dsuppress-coercions GHC option -dsuppress-idinfo GHC option -dsuppress-module-prefixes GHC option -dsuppress-stg-free-vars GHC option -dsuppress-ticks GHC option -dsuppress-type-applications GHC option -dsuppress-type-signatures GHC option -dsuppress-unfoldings GHC option -dsuppress-uniques GHC option -dsuppress-var-kinds GHC option -dth-dec-file=⟨file⟩ GHC option -dumpdir ⟨dir⟩ GHC option -dunique-increment=⟨i⟩ GHC option -dverbose-core2core GHC option -dverbose-stg2stg GHC option -dylib-install-name ⟨path⟩ GHC option -dynamic GHC option -dynamic-too GHC option -dynload GHC option -D⟨symbol⟩[=⟨value⟩] GHC option -E GHC option -e ⟨expr⟩ GHC option -eventlog GHC option -e⟨float⟩[in|mm|pt] hp2ps command line option -F GHC option -f ghc-pkg option -F ⟨factor⟩ RTS option -f\* options (GHC) -falignment-sanitisation GHC option -fasm GHC option -fbreak-on-error GHC option -fbreak-on-exception GHC option -fbyte-code GHC option -fcall-arity GHC option -fcase-folding GHC option -fcase-merge GHC option -fcatch-bottoms GHC option -fcmm-elim-common-blocks GHC option -fcmm-sink GHC option -fcpr-anal GHC option -fcross-module-specialise GHC option -fcse GHC option -fdefer-out-of-scope-variables GHC option -fdefer-type-errors GHC option -fdefer-typed-holes GHC option -fdiagnostics-color=⟨always|auto|never⟩ GHC option -fdiagnostics-show-caret GHC option -fdicts-cheap GHC option -fdicts-strict GHC option -fdmd-tx-dict-sel GHC option -fdo-eta-reduction GHC option -fdo-lambda-eta-expansion GHC option -feager-blackholing GHC option -fenable-rewrite-rules GHC option -ferror-spans GHC option -fexcess-precision GHC option -fexitification GHC option -fexpose-all-unfoldings GHC option -fexternal-interpreter GHC option -ffloat-in GHC option -fforce-recomp GHC option -ffull-laziness GHC option -ffun-to-thunk GHC option -fghci-hist-size=⟨n⟩ GHC option -fglasgow-exts GHC option -fhelpful-errors GHC option -fhide-source-paths GHC option -fhpc GHC option -fignore-asserts GHC option -fignore-hpc-changes GHC option -fignore-interface-pragmas GHC option -fignore-optim-changes GHC option -flate-dmd-anal GHC option -fliberate-case GHC option -fliberate-case-threshold=⟨n⟩ GHC option -fllvm GHC option -fllvm-fill-undef-with-garbage GHC option -fllvm-pass-vectors-in-regs GHC option -flocal-ghci-history GHC option -floopification GHC option -fmax-inline-alloc-size=⟨n⟩ GHC option -fmax-inline-memcpy-insns=⟨n⟩ GHC option -fmax-inline-memset-insns=⟨n⟩ GHC option -fmax-pmcheck-iterations=⟨n⟩ GHC option -fmax-relevant-binds=⟨n⟩ GHC option -fmax-simplifier-iterations=⟨n⟩ GHC option -fmax-uncovered-patterns=⟨n⟩ GHC option -fmax-valid-substitutions=⟨n⟩ GHC option -fmax-worker-args=⟨n⟩ GHC option -fno-\* options (GHC) -fno-code GHC option -fno-embed-manifest GHC option -fno-gen-manifest GHC option -fno-implicit-import-qualified -fno-opt-coercion GHC option -fno-pre-inlining GHC option -fno-prof-auto GHC option -fno-prof-cafs GHC option -fno-prof-count-entries GHC option -fno-shared-implib GHC option -fno-state-hack GHC option -fobject-code GHC option -fomit-interface-pragmas GHC option -fomit-yields GHC option -foptimal-applicative-do GHC option -fpackage-trust GHC option -fpedantic-bottoms GHC option -fPIC GHC option -fPIE GHC option -fplugin-opt=⟨module⟩:⟨args⟩ GHC option -fplugin=⟨module⟩ GHC option -fprint-bind-result GHC option -fprint-equality-relations GHC option -fprint-expanded-synonyms GHC option -fprint-explicit-coercions GHC option -fprint-explicit-foralls GHC option -fprint-explicit-kinds GHC option -fprint-explicit-runtime-rep GHC option -fprint-explicit-runtime-reps GHC option -fprint-potential-instances GHC option -fprint-typechecker-elaboration GHC option -fprint-unicode-syntax GHC option -fprof-auto GHC option -fprof-auto-calls GHC option -fprof-auto-exported GHC option -fprof-auto-top GHC option -fprof-cafs GHC option -framework ⟨name⟩ GHC option -framework-path ⟨dir⟩ GHC option -fregs-graph GHC option -fregs-iterative GHC option -fshow-hole-constraints GHC option -fshow-loaded-modules GHC option -fshow-warning-groups GHC option -fsimpl-tick-factor=⟨n⟩ GHC option -fsimplifier-phases=⟨n⟩ GHC option -fsolve-constant-dicts GHC option -fspec-constr GHC option -fspec-constr-count=⟨n⟩ GHC option -fspec-constr-keen GHC option -fspec-constr-threshold=⟨n⟩ GHC option -fspecialise GHC option -fspecialise-aggressively GHC option -fstatic-argument-transformation GHC option -fstg-cse GHC option -fstrictness GHC option -fstrictness-before=⟨n⟩ GHC option -funbox-small-strict-fields GHC option -funbox-strict-fields GHC option -funfolding-creation-threshold=⟨n⟩ GHC option -funfolding-dict-discount=⟨n⟩ GHC option -funfolding-fun-discount=⟨n⟩ GHC option -funfolding-keeness-factor=⟨n⟩ GHC option -funfolding-use-threshold0 option -funfolding-use-threshold=⟨n⟩ GHC option -fvectorisation-avoidance GHC option -fvectorise GHC option -fvia-C -fwhole-archive-hs-libs GHC option -fwrite-interface GHC option -g GHC option hp2ps command line option -G RTS option -G ⟨generations⟩ RTS option -ghci-script GHC option -ghcversion-file ⟨path to ghcversion.h⟩ GHC option -global-package-db GHC option -g⟨n⟩ GHC option -H RTS option -h RTS option, [1] -H [⟨size⟩] RTS option -H ⟨size⟩ GHC option -hb RTS option -hc RTS option -hcsuf ⟨suffix⟩ GHC option -hd RTS option -hide-all-packages GHC option -hide-all-plugin-packages GHC option -hide-package ⟨pkg⟩ GHC option -hidir ⟨dir⟩ GHC option -hisuf ⟨suffix⟩ GHC option -hm RTS option | -hr RTS option -hT RTS option, [1] -hy RTS option -h⟨break-down⟩ -i GHC option -I ⟨seconds⟩ RTS option -i ⟨secs⟩ RTS option -ignore-dot-ghci GHC option -ignore-package ⟨pkg⟩ GHC option -include-pkg-deps GHC option -interactive-print ⟨expr⟩ GHC option -I⟨dir⟩ GHC option -i⟨dir⟩[:⟨dir⟩]* GHC option -j[⟨n⟩] GHC option -K ⟨size⟩ RTS option -kb ⟨size⟩ RTS option -kc ⟨size⟩ RTS option -keep-hc-file GHC option -keep-hc-files GHC option -keep-hi-files GHC option -keep-llvm-file GHC option -keep-llvm-files GHC option -keep-o-files GHC option -keep-s-file GHC option -keep-s-files GHC option -keep-tmp-files GHC option -ki ⟨size⟩ RTS option -l RTS option hp2ps command line option -L ⟨dir⟩ GHC option -l ⟨flags⟩ RTS option -l ⟨lib⟩ GHC option -L ⟨num⟩ RTS option -L ⟨n⟩ RTS option -M GHC option -m ⟨n⟩ RTS option -M ⟨size⟩ RTS option -m\* options -main-is ⟨thing⟩ GHC option -maxN ⟨x⟩ RTS option -Mgrace=⟨size⟩ RTS option -msse2 GHC option -msse2 option -msse4.2 GHC option -m⟨int⟩ hp2ps command line option -n ⟨size⟩ RTS option -N ⟨x⟩ RTS option -no-auto-link-packages GHC option -no-global-package-db GHC option -no-hs-main GHC option -no-rtsopts-suggestions GHC option -no-user-package-db GHC option -O GHC option -o ⟨file⟩ GHC option -O ⟨size⟩ RTS option -O0 GHC option -O1 GHC option -O2 GHC option -odir ⟨dir⟩ GHC option -Odph GHC option -ohi ⟨file⟩ GHC option -opta ⟨option⟩ GHC option -optc ⟨option⟩ GHC option -optdll ⟨option⟩ GHC option -optF ⟨option⟩ GHC option -opti ⟨option⟩ GHC option -optL ⟨option⟩ GHC option -optl ⟨option⟩ GHC option -optlc ⟨option⟩ GHC option -optlo ⟨option⟩ GHC option -optP ⟨option⟩ GHC option -optwindres ⟨option⟩ GHC option -osuf ⟨suffix⟩ GHC option -outputdir ⟨dir⟩ GHC option -P RTS option -p RTS option, [1] hp2ps command line option -pa RTS option -package ⟨name⟩ GHC option -package ⟨pkg⟩ GHC option -package-db ghc-pkg option -package-db ⟨file⟩ GHC option -package-env ⟨file⟩|⟨name⟩ GHC option -package-id ⟨unit-id⟩ GHC option -pgma ⟨cmd⟩ GHC option -pgmc ⟨cmd⟩ GHC option -pgmdll ⟨cmd⟩ GHC option -pgmF ⟨cmd⟩ GHC option -pgmi ⟨cmd⟩ GHC option -pgml ⟨cmd⟩ GHC option -pgmL ⟨cmd⟩ GHC option -pgmlc ⟨cmd⟩ GHC option -pgmlibtool ⟨cmd⟩ GHC option -pgmlo ⟨cmd⟩ GHC option -pgmP ⟨cmd⟩ GHC option -pgms ⟨cmd⟩ GHC option -pgmwindres ⟨cmd⟩ GHC option -pie GHC option -pj RTS option -plugin-package ⟨pkg⟩ GHC option -plugin-package-id ⟨pkg-id⟩ GHC option -po ⟨stem⟩ RTS option -prof GHC option -qa RTS option -qb ⟨gen⟩ RTS option -qg ⟨gen⟩ RTS option -qm RTS option -qn ⟨x⟩ RTS option -r ⟨file⟩ RTS option -R ⟨size⟩ RTS option -rdynamic GHC option -Rghc-timing GHC option -RTS -rtsopts[=⟨none|some|all⟩] GHC option -S GHC option -s hp2ps command line option -S [⟨file⟩] RTS option -s [⟨file⟩] RTS option -S RTS option -shared GHC option -split-objs GHC option -split-sections GHC option -static GHC option -staticlib GHC option -stubdir ⟨dir⟩ GHC option -T RTS option -t [⟨file⟩] RTS option -this-unit-id ⟨unit-id⟩ GHC option -threaded GHC option -ticky GHC option -tmpdir ⟨dir⟩ GHC option -trust ⟨pkg⟩ GHC option -t⟨float⟩ hp2ps command line option -user-package-db GHC option -U⟨symbol⟩ GHC option -V GHC option ghc-pkg option -v GHC option, [1] ghc-pkg option -v [⟨flags⟩] RTS option -V ⟨secs⟩ RTS option -v⟨n⟩ GHC option -W GHC option -w GHC option -Wall GHC option -Wall-missed-specialisations GHC option -Wamp GHC option -Wcompat GHC option -Wcpp-undef GHC option -Wdeferred-out-of-scope-variables GHC option -Wdeferred-type-errors GHC option -Wdeprecated-flags GHC option -Wdeprecations GHC option -Wdodgy-exports GHC option -Wdodgy-foreign-imports GHC option -Wdodgy-imports GHC option -Wduplicate-constraints GHC option -Wduplicate-exports GHC option -Wempty-enumerations GHC option -Werror GHC option -Weverything GHC option -Whi-shadowing GHC option -Widentities GHC option -Wimplicit-prelude GHC option -Wincomplete-patterns GHC option -Wincomplete-record-updates GHC option -Wincomplete-uni-patterns GHC option -Winline-rule-shadowing GHC option -with-rtsopts=⟨opts⟩ GHC option -Wmissed-specialisations GHC option -Wmissing-export-lists GHC option -Wmissing-exported-signatures GHC option -Wmissing-exported-sigs GHC option -Wmissing-fields GHC option -Wmissing-home-modules GHC option -Wmissing-import-lists GHC option -Wmissing-local-signatures GHC option -Wmissing-local-sigs GHC option -Wmissing-methods GHC option -Wmissing-monadfail-instances GHC option -Wmissing-pattern-synonym-signatures GHC option -Wmissing-signatures GHC option -Wmonomorphism-restriction GHC option -Wname-shadowing GHC option -Wno-compat GHC option -Wnoncanonical-monad-instances GHC option -Wnoncanonical-monadfail-instances GHC option -Wnoncanonical-monoid-instances GHC option -Worphans GHC option -Woverflowed-literals GHC option -Woverlapping-patterns GHC option -Wpartial-fields GHC option -Wpartial-type-signatures GHC option -Wredundant-constraints GHC option -Wsafe GHC option -Wsemigroup GHC option -Wsimplifiable-class-constraints GHC option -Wtabs GHC option -Wtrustworthy-safe GHC option -Wtype-defaults GHC option -Wtyped-holes GHC option -Wunbanged-strict-patterns GHC option -Wunrecognised-pragmas GHC option -Wunrecognised-warning-flags GHC option -Wunsafe GHC option -Wunsupported-calling-conventions GHC option -Wunsupported-llvm-version GHC option -Wunticked-promoted-constructors GHC option -Wunused-binds GHC option -Wunused-do-bind GHC option -Wunused-foralls GHC option -Wunused-imports GHC option -Wunused-local-binds GHC option -Wunused-matches GHC option -Wunused-pattern-binds GHC option -Wunused-top-binds GHC option -Wunused-type-patterns GHC option -Wwarn GHC option -Wwarnings-deprecations GHC option -Wwrong-do-bind GHC option -x ⟨suffix⟩ GHC option -xc RTS option, [1] -XEmptyDataDeriving GHC option -XHexFloatLiterals GHC option -xm RTS option -xm ⟨address⟩ RTS option -xq ⟨size⟩ RTS option -xt RTS option -XUndecidableInstances -y hp2ps command line option -Z RTS option .ghci file .haskeline file .hc files, saving .hi files .ll files, saving .o files .s files, saving : GHCi command :! ⟨command⟩ GHCi command :? GHCi command :abandon GHCi command :add GHCi command :all-types GHCi command :back GHCi command :break GHCi command :browse GHCi command :cd GHCi command :cmd GHCi command :complete GHCi command :continue GHCi command :ctags GHCi command :def GHCi command :delete GHCi command :edit GHCi command :etags GHCi command :force GHCi command :forward GHCi command :help GHCi command :history GHCi command :info GHCi command :issafe GHCi command :kind GHCi command :list GHCi command :list [⟨module⟩] GHCi command :load GHCi command :loc-at GHCi command :main GHCi command :module GHCi command :print GHCi command :quit GHCi command :reload GHCi command :run GHCi command :script GHCi command :set GHCi command command in GHCi :set +c GHCi command :set +m GHCi command :set +r GHCi command :set +s GHCi command :set +t GHCi command :set args GHCi command :set editor GHCi command :set prog GHCi command :set prompt GHCi command :set prompt-cont GHCi command :set prompt-cont-function GHCi command :set prompt-function GHCi command :set stop GHCi command :seti GHCi command :show GHCi command :show bindings GHCi command :show breaks GHCi command :show context GHCi command :show imports GHCi command :show language GHCi command :show modules GHCi command :show packages GHCi command :show paths GHCi command :showi language GHCi command :sprint GHCi command :step GHCi command :steplocal GHCi command :stepmodule GHCi command :trace GHCi command :type GHCi command :type +d GHCi command :type +v GHCi command :type-at GHCi command :undef GHCi command :unset GHCi command :uses GHCi command :{ GHCi command :} GHCi command ``hs-boot`` files

## _

__GLASGOW_HASKELL__, [1] __GLASGOW_HASKELL_LLVM__ __GLASGOW_HASKELL_PATCHLEVEL1__ | __GLASGOW_HASKELL_PATCHLEVEL2__ __GLASGOW_HASKELL_TH__ __PARALLEL_HASKELL__

## A

allocation area for large objects, size allocation area, chunk size allocation area, size AllowAmbiguousTypes Language Extension AMP ANN pragma on modules on types apparently erroneous do binding, warning Applicative do-notation Applicative-Monad Proposal | ApplicativeDo Language Extension arguments command-line Arrows Language Extension ASCII assertions disabling Assertions author package specification auto package specification

## B

Bang patterns BangPatterns Language Extension BinaryLiterals Language Extension | binds, unused, [1], [2], [3] bugs reporting

## C

C calls, function headers C code generator C pre-processor options CAFs in GHCi CApiFFI Language Extension category package specification cc-options package specification Char size of code coverage COLUMN pragma command-line arguments order of arguments compacting garbage collection compilation phases, changing compiled code in GHCi compiler problems compiling faster | complete user-supplied kind signature concurrency Concurrent Haskell using CONLIKE consistency checks Constant Applicative Form ConstrainedClassMethods Language Extension ConstraintKinds Language Extension constructor fields, strict, [1] copyright package specification cost centres automatically inserting, [1] cost-centre profiling CPP Language Extension cpp, pre-processing with CUSK Custom printing function in GHCi

## D

DataKinds Language Extension DatatypeContexts Language Extension debugger in GHCi debugging options (for GHC) default declarations defaulting mechanism, warning DefaultSignatures Language Extension dependencies in Makefiles dependency-generation mode of GHC depends package specification DEPRECATED deprecated flags deprecations warnings DeriveAnyClass Language Extension DeriveDataTypeable Language Extension DeriveFoldable Language Extension DeriveFunctor Language Extension DeriveGeneric Language Extension | DeriveLift Language Extension DeriveTraversable Language Extension DerivingStrategies Language Extension description package specification deterministic builds disabling assertions DisambiguateRecordFields Language Extension displaying type in GHCi DLL-creation mode do binding, apparently erroneous do binding, unused do-notation Applicative in GHCi dumping GHC intermediates duplicate constraints, warning duplicate exports, warning DuplicateRecordFields Language Extension dynamic options, [1] Dynamic libraries using

## E

EDITOR, [1] EmptyCase Language Extension EmptyDataDecls Language Extension encodings of source files environment file environment variable EDITOR, [1] GHCRTS, [1], [2], [3], [4] GHC_PACKAGE_PATH, [1], [2], [3], [4], [5] HOME, [1] HPCTIXFILE, [1], [2] LD_LIBRARY_PATH, [1] PATH, [1] RPATH RUNPATH TMPDIR, [1] for setting RTS options eval mode of GHC eventlog and heap profiling eventlog files EventLogWriter (C type) EventLogWriter.flushEventLog (C member) EventLogWriter.initEventLogWriter (C member) EventLogWriter.stopEventLogWriter (C member) | EventLogWriter.writeEventLog (C member) events ExistentialQuantification Language Extension ExplicitForAll Language Extension ExplicitNamespaces Language Extension export lists, duplicates export lists, missing exposed package specification exposed-modules package specification extended list comprehensions ExtendedDefaultRules Language Extension extensions options controlling extra-libraries package specification

## F

faster compiling faster programs, how to produce FFI GHCi support fields, missing file names of source files file suffixes for GHC filenames of modules finding interface files FlexibleContexts Language Extension FlexibleInstances Language Extension Floating point and the FFI floating-point exceptions. forall foralls, unused | forcing GHC-phase options foreign foreign export with GHC Foreign Function Interface GHCi support Foreign function interface ForeignFunctionInterface Language Extension formatting dumps framework-dirs package specification frameworks package specification fromInteger function fromIntegral function frontend plugins using FunctionalDependencies Language Extension

## G

GADTs Language Extension GADTSyntax Language Extension garbage collection compacting garbage collector options GC sync time, measuring GC threads, setting the number of GeneralisedNewtypeDeriving Language Extension GeneralizedNewtypeDeriving Language Extension generations, number of getArgs, behavior in GHCi getProgName, behavior in GHCi GHC backends GHC code generators | GHC option --exclude-module=⟨file⟩ --frontend ⟨module⟩ --help --info --interactive --make --mk-dll --numeric-version --print-libdir --show-iface ⟨file⟩, [1] --show-options --supported-extensions --supported-languages --version -? -C -D⟨symbol⟩[=⟨value⟩] -E -F -H ⟨size⟩ -I⟨dir⟩ -L ⟨dir⟩ -M -O -O0 -O1 -O2 -Odph -Rghc-timing -S -U⟨symbol⟩ -V -W -Wall -Wall-missed-specialisations -Wamp -Wcompat -Wcpp-undef -Wdeferred-out-of-scope-variables -Wdeferred-type-errors -Wdeprecated-flags -Wdeprecations -Wdodgy-exports -Wdodgy-foreign-imports -Wdodgy-imports -Wduplicate-constraints -Wduplicate-exports -Wempty-enumerations -Werror -Weverything -Whi-shadowing -Widentities -Wimplicit-prelude -Wincomplete-patterns -Wincomplete-record-updates -Wincomplete-uni-patterns -Winline-rule-shadowing -Wmissed-specialisations -Wmissing-export-lists -Wmissing-exported-signatures -Wmissing-exported-sigs -Wmissing-fields -Wmissing-home-modules -Wmissing-import-lists -Wmissing-local-signatures -Wmissing-local-sigs -Wmissing-methods -Wmissing-monadfail-instances -Wmissing-pattern-synonym-signatures -Wmissing-signatures -Wmonomorphism-restriction -Wname-shadowing -Wno-compat -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances -Wnoncanonical-monoid-instances -Worphans -Woverflowed-literals -Woverlapping-patterns -Wpartial-fields -Wpartial-type-signatures -Wredundant-constraints -Wsafe -Wsemigroup -Wsimplifiable-class-constraints -Wtabs -Wtrustworthy-safe -Wtype-defaults -Wtyped-holes -Wunbanged-strict-patterns -Wunrecognised-pragmas -Wunrecognised-warning-flags -Wunsafe -Wunsupported-calling-conventions -Wunsupported-llvm-version -Wunticked-promoted-constructors -Wunused-binds -Wunused-do-bind -Wunused-foralls -Wunused-imports -Wunused-local-binds -Wunused-matches -Wunused-pattern-binds -Wunused-top-binds -Wunused-type-patterns -Wwarn -Wwarnings-deprecations -Wwrong-do-bind -XEmptyDataDeriving -XHexFloatLiterals -c, [1] -clear-package-db -cpp -dcmm-lint -dcore-lint -ddump-asm -ddump-asm-expanded -ddump-asm-liveness -ddump-asm-native -ddump-asm-regalloc -ddump-asm-regalloc-stages -ddump-asm-stats -ddump-bcos -ddump-cmm -ddump-cmm-caf -ddump-cmm-cbe -ddump-cmm-cfg -ddump-cmm-cps -ddump-cmm-from-stg -ddump-cmm-info -ddump-cmm-proc -ddump-cmm-procmap -ddump-cmm-raw -ddump-cmm-sink -ddump-cmm-sp -ddump-cmm-split -ddump-cmm-switch -ddump-cmm-verbose -ddump-core-stats -ddump-cse -ddump-deriv -ddump-ds -ddump-ec-trace -ddump-foreign -ddump-hi -ddump-hi-diffs -ddump-if-trace -ddump-inlinings -ddump-json -ddump-llvm -ddump-minimal-imports -ddump-mod-cycles -ddump-occur-anal -ddump-opt-cmm -ddump-parsed -ddump-parsed-ast -ddump-prep -ddump-rn -ddump-rn-ast -ddump-rn-stats -ddump-rn-trace -ddump-rule-firings -ddump-rule-rewrites -ddump-rules -ddump-simpl -ddump-simpl-iterations -ddump-simpl-stats -ddump-spec -ddump-splices -ddump-stg -ddump-str-signatures -ddump-stranal -ddump-tc -ddump-tc-ast -ddump-tc-trace -ddump-timings -ddump-to-file -ddump-types -ddump-vect -ddump-vt-trace -ddump-worker-wrapper -debug -dep-makefile ⟨file⟩ -dep-suffix ⟨suffix⟩ -dfaststring-stats -dinitial-unique=⟨s⟩ -distrust ⟨pkg⟩ -distrust-all-packages -dno-debug-output -dppr-case-as-let -dppr-cols=⟨n⟩ -dppr-debug -dppr-user-length -dshow-passes -dstg-lint -dsuppress-all -dsuppress-coercions -dsuppress-idinfo -dsuppress-module-prefixes -dsuppress-stg-free-vars -dsuppress-ticks -dsuppress-type-applications -dsuppress-type-signatures -dsuppress-unfoldings -dsuppress-uniques -dsuppress-var-kinds -dth-dec-file=⟨file⟩ -dumpdir ⟨dir⟩ -dunique-increment=⟨i⟩ -dverbose-core2core -dverbose-stg2stg -dylib-install-name ⟨path⟩ -dynamic -dynamic-too -dynload -e ⟨expr⟩ -eventlog -fPIC -fPIE -falignment-sanitisation -fasm -fbreak-on-error -fbreak-on-exception -fbyte-code -fcall-arity -fcase-folding -fcase-merge -fcatch-bottoms -fcmm-elim-common-blocks -fcmm-sink -fcpr-anal -fcross-module-specialise -fcse -fdefer-out-of-scope-variables -fdefer-type-errors -fdefer-typed-holes -fdiagnostics-color=⟨always|auto|never⟩ -fdiagnostics-show-caret -fdicts-cheap -fdicts-strict -fdmd-tx-dict-sel -fdo-eta-reduction -fdo-lambda-eta-expansion -feager-blackholing -fenable-rewrite-rules -ferror-spans -fexcess-precision -fexitification -fexpose-all-unfoldings -fexternal-interpreter -ffloat-in -fforce-recomp -ffull-laziness -ffun-to-thunk -fghci-hist-size=⟨n⟩ -fglasgow-exts -fhelpful-errors -fhide-source-paths -fhpc -fignore-asserts -fignore-hpc-changes -fignore-interface-pragmas -fignore-optim-changes -flate-dmd-anal -fliberate-case -fliberate-case-threshold=⟨n⟩ -fllvm -fllvm-fill-undef-with-garbage -fllvm-pass-vectors-in-regs -flocal-ghci-history -floopification -fmax-inline-alloc-size=⟨n⟩ -fmax-inline-memcpy-insns=⟨n⟩ -fmax-inline-memset-insns=⟨n⟩ -fmax-pmcheck-iterations=⟨n⟩ -fmax-relevant-binds=⟨n⟩ -fmax-simplifier-iterations=⟨n⟩ -fmax-uncovered-patterns=⟨n⟩ -fmax-valid-substitutions=⟨n⟩ -fmax-worker-args=⟨n⟩ -fno-code -fno-embed-manifest -fno-gen-manifest -fno-opt-coercion -fno-pre-inlining -fno-prof-auto -fno-prof-cafs -fno-prof-count-entries -fno-shared-implib -fno-state-hack -fobject-code -fomit-interface-pragmas -fomit-yields -foptimal-applicative-do -fpackage-trust -fpedantic-bottoms -fplugin-opt=⟨module⟩:⟨args⟩ -fplugin=⟨module⟩ -fprint-bind-result -fprint-equality-relations -fprint-expanded-synonyms -fprint-explicit-coercions -fprint-explicit-foralls -fprint-explicit-kinds -fprint-explicit-runtime-rep -fprint-explicit-runtime-reps -fprint-potential-instances -fprint-typechecker-elaboration -fprint-unicode-syntax -fprof-auto -fprof-auto-calls -fprof-auto-exported -fprof-auto-top -fprof-cafs -framework ⟨name⟩ -framework-path ⟨dir⟩ -fregs-graph -fregs-iterative -fshow-hole-constraints -fshow-loaded-modules -fshow-warning-groups -fsimpl-tick-factor=⟨n⟩ -fsimplifier-phases=⟨n⟩ -fsolve-constant-dicts -fspec-constr -fspec-constr-count=⟨n⟩ -fspec-constr-keen -fspec-constr-threshold=⟨n⟩ -fspecialise -fspecialise-aggressively -fstatic-argument-transformation -fstg-cse -fstrictness -fstrictness-before=⟨n⟩ -funbox-small-strict-fields -funbox-strict-fields -funfolding-creation-threshold=⟨n⟩ -funfolding-dict-discount=⟨n⟩ -funfolding-fun-discount=⟨n⟩ -funfolding-keeness-factor=⟨n⟩ -funfolding-use-threshold=⟨n⟩ -fvectorisation-avoidance -fvectorise -fwhole-archive-hs-libs -fwrite-interface -g -ghci-script -ghcversion-file ⟨path to ghcversion.h⟩ -global-package-db -g⟨n⟩ -hcsuf ⟨suffix⟩ -hide-all-packages -hide-all-plugin-packages -hide-package ⟨pkg⟩ -hidir ⟨dir⟩ -hisuf ⟨suffix⟩ -i -ignore-dot-ghci -ignore-package ⟨pkg⟩ -include-pkg-deps -interactive-print ⟨expr⟩ -i⟨dir⟩[:⟨dir⟩]* -j[⟨n⟩] -keep-hc-file -keep-hc-files -keep-hi-files -keep-llvm-file -keep-llvm-files -keep-o-files -keep-s-file -keep-s-files -keep-tmp-files -l ⟨lib⟩ -main-is ⟨thing⟩ -msse2 -msse4.2 -no-auto-link-packages -no-global-package-db -no-hs-main -no-rtsopts-suggestions -no-user-package-db -o ⟨file⟩ -odir ⟨dir⟩ -ohi ⟨file⟩ -optF ⟨option⟩ -optL ⟨option⟩ -optP ⟨option⟩ -opta ⟨option⟩ -optc ⟨option⟩ -optdll ⟨option⟩ -opti ⟨option⟩ -optl ⟨option⟩ -optlc ⟨option⟩ -optlo ⟨option⟩ -optwindres ⟨option⟩ -osuf ⟨suffix⟩ -outputdir ⟨dir⟩ -package ⟨name⟩ -package ⟨pkg⟩ -package-db ⟨file⟩ -package-env ⟨file⟩|⟨name⟩ -package-id ⟨unit-id⟩ -pgmF ⟨cmd⟩ -pgmL ⟨cmd⟩ -pgmP ⟨cmd⟩ -pgma ⟨cmd⟩ -pgmc ⟨cmd⟩ -pgmdll ⟨cmd⟩ -pgmi ⟨cmd⟩ -pgml ⟨cmd⟩ -pgmlc ⟨cmd⟩ -pgmlibtool ⟨cmd⟩ -pgmlo ⟨cmd⟩ -pgms ⟨cmd⟩ -pgmwindres ⟨cmd⟩ -pie -plugin-package ⟨pkg⟩ -plugin-package-id ⟨pkg-id⟩ -prof -rdynamic -rtsopts[=⟨none|some|all⟩] -shared -split-objs -split-sections -static -staticlib -stubdir ⟨dir⟩ -this-unit-id ⟨unit-id⟩ -threaded -ticky -tmpdir ⟨dir⟩ -trust ⟨pkg⟩ -user-package-db -v -v⟨n⟩ -w -with-rtsopts=⟨opts⟩ -x ⟨suffix⟩ GHC vs the Haskell standards GHC, using GHC_PACKAGE_PATH, [1], [2], [3], [4] GHCi, [1] GHCi command : :! ⟨command⟩ :? :abandon :add :all-types :back :break :browse :cd :cmd :complete :continue :ctags :def :delete :edit :etags :force :forward :help :history :info :issafe :kind :list :list [⟨module⟩] :load :loc-at :main :module :print :quit :reload :run :script :set :set +c :set +m :set +r :set +s :set +t :set args :set editor :set prog :set prompt :set prompt-cont :set prompt-cont-function :set prompt-function :set stop :seti :show :show bindings :show breaks :show context :show imports :show language :show modules :show packages :show paths :showi language :sprint :step :steplocal :stepmodule :trace :type :type +d :type +v :type-at :undef :unset :uses :{ :} import GHCi prompt setting GHCi prompt function setting GHCRTS, [1], [2], [3] GHCRTS environment variable Glasgow Haskell mailing lists group

## H

haddock-html package specification haddock-interfaces package specification Happy happy parser generator Haskell Program Coverage Haskell standards vs GHC heap profiles heap size, factor heap size, grace heap size, maximum heap size, suggested heap space, using less heap, minimum free help options | hidden-modules package specification HOME, [1] homepage package specification hooks RTS hp2ps hp2ps command line option -? -b -c -d -e⟨float⟩[in|mm|pt] -g -l -m⟨int⟩ -p -s -t⟨float⟩ -y hpc HPCTIXFILE, [1] hs-libraries package specification hs_exit hs_init hsc2hs Hugs hugs-options package specification

## I

id package specification idle GC implicit parameters implicit prelude, warning ImplicitParams Language Extension import GHCi command import lists, missing import-dirs package specification importing, ``hi-boot`` files imports, unused ImpredicativeTypes Language Extension improvement, code in GHCi Repeating last command include-dirs package specification includes package specification INCOHERENT IncoherentInstances Language Extension incomplete patterns, warning | incomplete record updates, warning INLINE inlining, controlling, [1], [2], [3], [4] InstanceSigs Language Extension Int size of interactive Interactive classes interactive mode interface files interface files, finding them interface files, options interfacing with native code intermediate files, saving intermediate passes, output interpreter InterruptibleFFI Language Extension invoking GHCi it variable

## K

kind heterogeneous Type equality constraints | KindSignatures Language Extension

## L

LambdaCase Language Extension language option LANGUAGE pragma Language Extension AllowAmbiguousTypes ApplicativeDo Arrows BangPatterns BinaryLiterals CApiFFI CPP ConstrainedClassMethods ConstraintKinds DataKinds DatatypeContexts DefaultSignatures DeriveAnyClass DeriveDataTypeable DeriveFoldable DeriveFunctor DeriveGeneric DeriveLift DeriveTraversable DerivingStrategies DisambiguateRecordFields DuplicateRecordFields EmptyCase EmptyDataDecls ExistentialQuantification ExplicitForAll ExplicitNamespaces ExtendedDefaultRules FlexibleContexts FlexibleInstances ForeignFunctionInterface FunctionalDependencies GADTSyntax GADTs GeneralisedNewtypeDeriving GeneralizedNewtypeDeriving ImplicitParams ImpredicativeTypes IncoherentInstances InstanceSigs InterruptibleFFI KindSignatures LambdaCase LiberalTypeSynonyms MagicHash MonadComprehensions MonadFailDesugaring MonoLocalBinds MultiParamTypeClasses MultiWayIf NPlusKPatterns NamedFieldPuns NamedWildCards NegativeLiterals NoImplicitPrelude NoMonomorphismRestriction NoPatternGuards NoTraditionalRecordSyntax NullaryTypeClasses NumDecimals OverlappingInstances OverloadedLabels OverloadedLists OverloadedStrings PackageImports ParallelListComp PartialTypeSignatures PatternSynonyms PolyKinds PostfixOperators QuasiQuotes Rank2Types RankNTypes RebindableSyntax RecordWildCards RecursiveDo RoleAnnotations Safe ScopedTypeVariables StandaloneDeriving StaticPointers Strict StrictData TemplateHaskell TemplateHaskellQuotes TransformListComp Trustworthy TupleSections TypeApplications TypeFamilies TypeFamilyDependencies TypeInType TypeOperators TypeSynonymInstances UnboxedSums UnboxedTuples UndecidableInstances UndecidableSuperClasses UnicodeSyntax Unsafe ViewPatterns language, GHC extensions Latin-1 ld options ld-options package specification LD_LIBRARY_PATH, [1] levity polymorphism lhs file extension | libdir LiberalTypeSynonyms Language Extension libraries with GHCi library-dirs package specification license-file package specification LINE pragma linker options linking Haskell libraries with foreign code lint list comprehensions ambiguity with quasi-quotes generalised parallel LLVM code generator

## M

machine-specific options MagicHash Language Extension mailing lists, Glasgow Haskell maintainer package specification make building programs with make and recompilation make mode of GHC Makefile dependencies Makefiles avoiding MallocFailHook (C function) matches, unused mdo memory, using less heap methods, missing MFP MIN_VERSION_GLASGOW_HASKELL MINIMAL | miscellaneous flags missing export lists, warning missing fields, warning missing import lists, warning missing methods, warning mode options module system, recursion modules and filenames monad comprehensions MonadComprehensions Language Extension MonadFail Proposal MonadFailDesugaring Language Extension MonoLocalBinds Language Extension monomorphism restriction, warning multiline input in GHCi MultiParamTypeClasses Language Extension MultiWayIf Language Extension

## N

name package specification NamedFieldPuns Language Extension NamedWildCards Language Extension native code generator NegativeLiterals Language Extension NoImplicitPrelude Language Extension NOINLINE nominal role NoMonomorphismRestriction Language Extension | NoPatternGuards Language Extension NOTINLINE NoTraditionalRecordSyntax Language Extension NOUNPACK NPlusKPatterns Language Extension NullaryTypeClasses Language Extension NUMA, enabling in the runtime NumDecimals Language Extension

## O

object files old generation, size optimisation optimise DPH aggressively normally optimization and GHCi options GHCi for profiling language OPTIONS_GHC orphan instances, warning orphan rules, warning OutOfHeapHook (C function) | output-directing options OVERLAPPABLE OVERLAPPING overlapping patterns, warning OverlappingInstances Language Extension OVERLAPS OverloadedLabels Language Extension OverloadedLists Language Extension OverloadedStrings Language Extension overloading, death to, [1], [2]

## P

package environments package trust package-url package specification PackageImports Language Extension packages building management using with GHCi parallel list comprehensions parallelism, [1] ParallelListComp Language Extension parser generator for Haskell PartialTypeSignatures Language Extension PATH, [1] patterns, incomplete patterns, overlapping PatternSynonyms Language Extension phantom role platform-specific options | PolyKinds Language Extension PostfixOperators Language Extension postscript, from heap profiles pragma ANN COLUMN INCOHERENT INLINE LANGUAGE LINE MINIMAL OPTIONS_GHC OVERLAPPABLE OVERLAPPING OVERLAPS RULES SOURCE pragma, SPECIALIZE pre-processing: cpp pre-processing: custom pre-processor options problems problems running your program problems with the compiler proc profiling options ticky ticky with Template Haskell promoted constructor, warning prompt GHCi

## Q

quasi-quotation quasi-quotes ambiguity with list comprehensions | Quasi-quotes QuasiQuotes Language Extension

## R

Rank2Types Language Extension RankNTypes Language Extension RebindableSyntax Language Extension recompilation checker, [1] record updates, incomplete RecordWildCards Language Extension recursion, between modules RecursiveDo Language Extension redirecting compilation output redundant constraints, warning reexported-modules reexport specification Repeating last command in GHCi reporting bugs representational role rewrite rules | RoleAnnotations Language Extension roles RPATH RTS RTS behaviour, changing RTS hooks RTS option --generate-crash-dumps --generate-stack-traces=<yes|no> --info --install-seh-handlers=⟨yes|no⟩ --install-signal-handlers=⟨yes|no⟩ --long-gc-sync --long-gc-sync=<seconds> --machine-readable --numa --numa=<mask> -A ⟨size⟩ -AL ⟨size⟩ -B -C ⟨s⟩ -D ⟨x⟩ -F ⟨factor⟩ -G ⟨generations⟩ -H [⟨size⟩] -I ⟨seconds⟩ -K ⟨size⟩ -L ⟨num⟩ -L ⟨n⟩ -M ⟨size⟩ -Mgrace=⟨size⟩ -N ⟨x⟩ -O ⟨size⟩ -P -R ⟨size⟩ -S [⟨file⟩] -T -V ⟨secs⟩ -Z -c -c ⟨n⟩ -h, [1] -hT, [1] -hb -hc -hd -hm -hr -hy -i ⟨secs⟩ -kb ⟨size⟩ -kc ⟨size⟩ -ki ⟨size⟩ -l -l ⟨flags⟩ -m ⟨n⟩ -maxN ⟨x⟩ -n ⟨size⟩ -p -pa -pj -po ⟨stem⟩ -qa -qb ⟨gen⟩ -qg ⟨gen⟩ -qm -qn ⟨x⟩ -r ⟨file⟩ -s [⟨file⟩] -t [⟨file⟩] -v [⟨flags⟩] -xc, [1] -xm ⟨address⟩ -xq ⟨size⟩ -xt RTS options concurrent from the environment garbage collection RTS options, hacking/debugging RTS options, setting RULES pragma runghc running, compiled program RUNPATH runtime control of Haskell programs

## S

Safe Language Extension safe compilation safe haskell Safe Haskell flags safe haskell trust safe haskell uses safe imports safe inference safe language sanity-checking options ScopedTypeVariables Language Extension search path source code secure haskell semigroup warning separate compilation, [1] shadowing interface files shadowing, warning Shared libraries using shell commands in GHCi Show class signature files Backpack; hsig files simple: stack trace in GHCi simplifiable class constraints, warning single : -osuf using with profiling smaller programs, how to produce SMP, [1] | SOURCE source annotations source-file options space-leaks, avoiding SPECIALIZE pragma, [1], [2] specifying your own main function SQL stability package specification stack chunk buffer size chunk size stack, initial size stack, maximum size StackOverflowHook (C function) StandaloneDeriving Language Extension startup files, GHCi, [1] statements in GHCi static options, [1] Static pointers StaticPointers Language Extension Strict Language Extension strict constructor fields, [1] strict haskell StrictData Language Extension string gaps vs -cpp. structure, command-line suffixes, file suppression of unwanted dump output

## T

tabs, warning Template Haskell TemplateHaskell Language Extension TemplateHaskellQuotes Language Extension temporary files keeping, [1], [2] redirecting ticky ticky profiling ticky-ticky profiling time profile TMPDIR, [1] TMPDIR environment variable tracing TransformListComp Language Extension trust trust check, [1] trusted package specification | Trustworthy Language Extension trustworthy TupleSections Language Extension TYPE Type defaulting in GHCi Type equality constraints kind heterogeneous type patterns, unused type signatures, missing, [1], [2], [3], [4] type signatures, missing, pattern synonyms TypeApplications Language Extension TypeFamilies Language Extension TypeFamilyDependencies Language Extension TypeInType Language Extension TypeOperators Language Extension TypeSynonymInstances Language Extension

## U

UnboxedSums Language Extension UnboxedTuples Language Extension UndecidableInstances Language Extension UndecidableSuperClasses Language Extension unfolding, controlling, [1], [2], [3], [4] Unicode UnicodeSyntax Language Extension UNPACK unregisterised compilation Unsafe Language Extension | unused binds, warning, [1], [2], [3] unused do binding, warning unused foralls, warning unused imports, warning unused matches, warning unused type patterns, warning using GHC UTF-8 utilities, Haskell

## V

verbosity options version package specification | version, of ghc ViewPatterns Language Extension

## W

WARNING warnings deprecations | windres

## Y

Yacc for Haskell

### Navigation

- index
- GHC 8.4.4 User's Guide »