base-feature-macros
Version 0.1 revision 0 uploaded by HerbertValerioRiedel.
Package meta
- Synopsis
- Semantic CPP feature macros for base
- Description
This provides a set of feature macros describing features of
base
in a semantic way.See base-feature-macros.h for set of currently provided macros.
In order to use the CPP header provided by this package, add this package as a dependency to your
.cabal
file, i.e.build-depends: base-feature-macros: >= 0.1 && < 0.2
while making sure that the version specified as lower bound defines the feature-macros your code tests for. This is particularly important as CPP will implicitly treat undefined CPP macros as having the value
0
. See also GNU CPP/CC's-Wundef
warning to detect such errors.Then in your code, you can include and use the
<base-feature-macros.h>
header like somodule M where #include <base-feature-macros.h> #if !HAVE_FOLDABLE_TRAVERSABLE_IN_PRELUDE import Data.Foldable (Foldable (..)) import Prelude hiding (foldr, foldr1) #endif #if !HAVE_MONOID_IN_PRELUDE import Data.Monoid hiding ((<>)) #endif
This package is inspired by the blogpost "Make macros mean something – readable backwards compatibility with CPP".
- Author
- Herbert Valerio Riedel
- Bug reports
- https://github.com/hvr/base-feature-macros/issues
- Category
- Development
- Copyright
- n/a
- Homepage
- n/a
- Maintainer
- hvr@gnu.org
- Package URL
- n/a
- Stability
- n/a