
On 1 Feb 2020, at 10:01, Viktor Dukhovni
wrote: The package developer. Neither GHC nor Clang are at-fault for invalid CPP macro syntax.
This isn't the package developers fault. Standard Haskell just cannot be properly preprocessed by an ISO C preprocessor. As the definition of valid tokens just aren't compatible. GHC's use of the CPP has long (maybe since forever?) been incompatible with CPP as standardised in the ISO C spec, and its relies on the -traditional flag to make GCC use it's pre-ISO C implementations. This flag isn't necessarily portable across C compilers and I recall this breaking things in the past. cpphs should work as a workaround alternative C preprocessor if your C compiler doesn't support the "right" wrong CPP configuration. Cheers, Merijn