Skip to content

GHC Calls CPP for HS with -undef

GHC Is calling the C preprocessor[1] when processing HS files with -undef which unsets the C compiler pre-defines.

Essentially it means you cannot use any normal compiler defines to check for platform or intrinsics support.

Is this really the intended behavior?

I get the fact that we're processing a Haskell source file, but why restrict the pre-processor to only GHC defines. You lose information like if unaligned accesses are supported or not etc.

[1] https://github.com/ghc/ghc/blob/60aa53d97da1bbfbb88e9f2791c3f686ba34e764/aclocal.m4#L2241

Edited by Tamar Christina
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information