W3cubDocs

/Haskell 9

GHC.InfoProv

Copyright (c) The University of Glasgow 2011
License see libraries/base/LICENSE
Maintainer [email protected]
Stability internal
Portability non-portable (GHC Extensions)
Safe Haskell Safe
Language Haskell2010

Contents

Description

Access to GHC's info-table provenance metadata.

The API of this module is unstable and not meant to be consumed by the general public. If you absolutely must depend on it, make sure to use a tight upper bound, e.g., base < 4.X rather than base < 5, because the interface can change rapidly without much warning.

Since: base-4.18.0.0

data InfoProv Source

Constructors

InfoProv
Instances
Instances details
Show InfoProv Source
Instance details

Defined in GHC.Internal.InfoProv.Types

Eq InfoProv Source
Instance details

Defined in GHC.Internal.InfoProv.Types

ipLoc :: InfoProv -> String Source

ipeProv :: Ptr InfoProvEnt -> Ptr InfoProv Source

whereFrom :: a -> IO (Maybe InfoProv) Source

Get information about where a value originated from. This information is stored statically in a binary when -finfo-table-map is enabled. The source positions will be greatly improved by also enabled debug information with -g3. Finally you can enable -fdistinct-constructor-tables to get more precise information about data constructor allocations.

The information is collect by looking at the info table address of a specific closure and then consulting a specially generated map (by -finfo-table-map) to find out where we think the best source position to describe that info table arose from.

Since: base-4.16.0.0

Internals

data InfoProvEnt Source

peekInfoProv :: Ptr InfoProv -> IO InfoProv Source

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/9.12.1/docs/libraries/base-4.21.0.0-8e62/GHC-InfoProv.html