On Wed, 2008-07-23 at 00:50 -0500, John Lato wrote: > Hello, > > I recently ran up against bug #6 on a Mac (Leopard 10.5.2, c2hs > .15.1). This results in the error > c2hs: Error in C header file. > > /usr/include/available.h:85: (column 5) [FATAL] > > >>> Lexical error! The character '#' does not fit here. > > I added some information to the bug report based on my > experimentation, and would like to say that I've found a workaround. > By running c2hs with these options: > --cpp=gcc --cppopts=-E --cppopts=-xc > > I was able to successfully build the interface. This works with cabal > builds as well by passing the options during configure with > --c2hs-options. > > I'm pretty certain that this is due to some sort of failure in Apple's > cpp and not a problem with c2hs. Can anyone else confirm this?
We've had problems with this before. The current c2hs cpp code uses: cppopts :: String cppopts = case os of -- why is gcc different between all these platforms? "darwin" -> "-x=c" "openbsd" -> "-xc" _ -> "-x c" So we had previously had reported that using -x=c worked on OSX. Does that not work for you now? Ie using: c2hs --cpp=cpp --cppopts=-x=c or perhaps: c2hs --cpp=cpp --cppopts=-xc Duncan _______________________________________________ C2hs mailing list [email protected] http://www.haskell.org/mailman/listinfo/c2hs
